@luomus/laji-form-builder 1.1.7 → 1.1.9
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/README.md +1 -0
- package/lib/api-client.d.ts +0 -4
- package/lib/api-client.js +18 -17
- package/lib/api-client.js.map +1 -1
- package/lib/client/app.js +7 -3
- package/lib/client/app.js.map +1 -1
- package/lib/client/components/Builder.d.ts +6 -6
- package/lib/client/components/Builder.js +23 -19
- package/lib/client/components/Builder.js.map +1 -1
- package/lib/client/components/Context.js +5 -1
- package/lib/client/components/Context.js.map +1 -1
- package/lib/client/components/Editor/BasicEditor.d.ts +2 -2
- package/lib/client/components/Editor/BasicEditor.js +19 -15
- package/lib/client/components/Editor/BasicEditor.js.map +1 -1
- package/lib/client/components/Editor/DiffViewer.d.ts +6 -6
- package/lib/client/components/Editor/DiffViewer.js +12 -8
- package/lib/client/components/Editor/DiffViewer.js.map +1 -1
- package/lib/client/components/Editor/Editor.d.ts +9 -9
- package/lib/client/components/Editor/Editor.js +35 -31
- package/lib/client/components/Editor/Editor.js.map +1 -1
- package/lib/client/components/Editor/ElemPicker.d.ts +1 -1
- package/lib/client/components/Editor/ElemPicker.js +24 -62
- package/lib/client/components/Editor/ElemPicker.js.map +1 -1
- package/lib/client/components/Editor/FieldEditor.d.ts +3 -3
- package/lib/client/components/Editor/FieldEditor.js +14 -10
- package/lib/client/components/Editor/FieldEditor.js.map +1 -1
- package/lib/client/components/Editor/Fields.d.ts +1 -1
- package/lib/client/components/Editor/Fields.js +16 -12
- package/lib/client/components/Editor/Fields.js.map +1 -1
- package/lib/client/components/Editor/Hierarchy.js +14 -10
- package/lib/client/components/Editor/Hierarchy.js.map +1 -1
- package/lib/client/components/Editor/Highlighter.d.ts +7 -0
- package/lib/client/components/Editor/Highlighter.js +75 -0
- package/lib/client/components/Editor/Highlighter.js.map +1 -0
- package/lib/client/components/Editor/OptionsEditor.d.ts +2 -2
- package/lib/client/components/Editor/OptionsEditor.js +22 -18
- package/lib/client/components/Editor/OptionsEditor.js.map +1 -1
- package/lib/client/components/Editor/UiSchemaEditor.js +37 -33
- package/lib/client/components/Editor/UiSchemaEditor.js.map +1 -1
- package/lib/client/components/LajiForm.js +5 -1
- package/lib/client/components/LajiForm.js.map +1 -1
- package/lib/client/components/Wizard.d.ts +1 -1
- package/lib/client/components/Wizard.js +89 -70
- package/lib/client/components/Wizard.js.map +1 -1
- package/lib/client/components/components/Button.d.ts +2 -0
- package/lib/client/components/components/Button.js +46 -0
- package/lib/client/components/components/Button.js.map +1 -0
- package/lib/client/components/components/Clickable.d.ts +9 -0
- package/lib/client/components/components/Clickable.js +33 -0
- package/lib/client/components/components/Clickable.js.map +1 -0
- package/lib/client/components/components/Draggable.d.ts +19 -0
- package/lib/client/components/components/Draggable.js +161 -0
- package/lib/client/components/components/Draggable.js.map +1 -0
- package/lib/client/components/components/ErrorBoundary.d.ts +16 -0
- package/lib/client/components/components/ErrorBoundary.js +46 -0
- package/lib/client/components/components/ErrorBoundary.js.map +1 -0
- package/lib/client/components/components/GenericModal.d.ts +8 -0
- package/lib/client/components/components/GenericModal.js +40 -0
- package/lib/client/components/components/GenericModal.js.map +1 -0
- package/lib/client/components/components/Help.d.ts +2 -0
- package/lib/client/components/components/Help.js +41 -0
- package/lib/client/components/components/Help.js.map +1 -0
- package/lib/client/components/components/JSONEditor.d.ts +32 -0
- package/lib/client/components/components/JSONEditor.js +113 -0
- package/lib/client/components/components/JSONEditor.js.map +1 -0
- package/lib/client/components/components/SearchInput.d.ts +8 -0
- package/lib/client/components/components/SearchInput.js +44 -0
- package/lib/client/components/components/SearchInput.js.map +1 -0
- package/lib/client/components/components/Spinner.d.ts +6 -0
- package/lib/client/components/components/Spinner.js +36 -0
- package/lib/client/components/components/Spinner.js.map +1 -0
- package/lib/client/components/components/Tooltip.d.ts +7 -0
- package/lib/client/components/components/Tooltip.js +35 -0
- package/lib/client/components/components/Tooltip.js.map +1 -0
- package/lib/client/components/components/common.d.ts +14 -0
- package/lib/client/components/components/common.js +3 -0
- package/lib/client/components/components/common.js.map +1 -0
- package/lib/client/components/components/index.d.ts +11 -0
- package/lib/client/components/components/index.js +28 -0
- package/lib/client/components/components/index.js.map +1 -0
- package/lib/client/{LajiFormInterface.js → laji-form-interface.js} +5 -5
- package/lib/client/laji-form-interface.js.map +1 -0
- package/lib/client/services/change-handler-service.d.ts +12 -12
- package/lib/client/services/change-handler-service.js +7 -7
- package/lib/client/services/change-handler-service.js.map +1 -1
- package/lib/client/services/form-service.d.ts +4 -4
- package/lib/client/services/form-service.js +8 -14
- package/lib/client/services/form-service.js.map +1 -1
- package/lib/client/themes/bs3.js +5 -1
- package/lib/client/themes/bs3.js.map +1 -1
- package/lib/client/themes/theme.d.ts +4 -4
- package/lib/client/themes/theme.js +5 -1
- package/lib/client/themes/theme.js.map +1 -1
- package/lib/client/utils.d.ts +13 -9
- package/lib/client/utils.js +43 -36
- package/lib/client/utils.js.map +1 -1
- package/lib/model.d.ts +42 -42
- package/lib/model.js +3 -3
- package/lib/model.js.map +1 -1
- package/lib/services/form-expander-service.d.ts +2 -2
- package/lib/services/form-expander-service.js +5 -5
- package/lib/services/form-expander-service.js.map +1 -1
- package/lib/services/metadata-service.d.ts +6 -6
- package/lib/services/metadata-service.js +27 -27
- package/lib/services/metadata-service.js.map +1 -1
- package/lib/services/uses-memoization.d.ts +8 -0
- package/lib/services/{has-cache.js → uses-memoization.js} +8 -8
- package/lib/services/uses-memoization.js.map +1 -0
- package/lib/utils.d.ts +4 -4
- package/lib/utils.js +19 -21
- package/lib/utils.js.map +1 -1
- package/package.json +6 -5
- package/lib/client/LajiFormInterface.js.map +0 -1
- package/lib/client/components/components.d.ts +0 -104
- package/lib/client/components/components.js +0 -322
- package/lib/client/components/components.js.map +0 -1
- package/lib/services/has-cache.d.ts +0 -8
- package/lib/services/has-cache.js.map +0 -1
- /package/lib/client/{LajiFormInterface.d.ts → laji-form-interface.d.ts} +0 -0
|
@@ -0,0 +1,113 @@
|
|
|
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 __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.AnyJSONEditor = exports.SubmittableJSONEditor = exports.JSONEditor = void 0;
|
|
27
|
+
const React = __importStar(require("react"));
|
|
28
|
+
const Context_1 = require("../Context");
|
|
29
|
+
const components_1 = require("./");
|
|
30
|
+
const utils_1 = require("../../utils");
|
|
31
|
+
const getMinMaxed = (val, min, max) => {
|
|
32
|
+
if (min) {
|
|
33
|
+
val = Math.max(val, min);
|
|
34
|
+
}
|
|
35
|
+
if (max) {
|
|
36
|
+
val = Math.min(val, max);
|
|
37
|
+
}
|
|
38
|
+
return val;
|
|
39
|
+
};
|
|
40
|
+
exports.JSONEditor = React.forwardRef(function JSONEditor({ value, onChange, rows, minRows, maxRows, resizable = true, onValidChange, live, className, style = {}, validator }, ref) {
|
|
41
|
+
var _a;
|
|
42
|
+
const stringValue = (_a = JSON.stringify(value, undefined, 2)) !== null && _a !== void 0 ? _a : "";
|
|
43
|
+
const [tmpValue, setTmpValue] = React.useState(stringValue);
|
|
44
|
+
const [validValue, setValidValue] = React.useState(value);
|
|
45
|
+
const [valid, setValid] = React.useState(true);
|
|
46
|
+
const [touched, setTouched] = React.useState(false);
|
|
47
|
+
React.useEffect(() => {
|
|
48
|
+
if (tmpValue === "" || tmpValue === undefined) {
|
|
49
|
+
const valid = validator(undefined);
|
|
50
|
+
setValid(valid);
|
|
51
|
+
valid && setValidValue(undefined);
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
try {
|
|
55
|
+
const parsed = JSON.parse(tmpValue);
|
|
56
|
+
const valid = validator(JSON.parse(tmpValue));
|
|
57
|
+
valid && setValidValue(parsed);
|
|
58
|
+
setValid(valid);
|
|
59
|
+
}
|
|
60
|
+
catch (e) {
|
|
61
|
+
setValid(false);
|
|
62
|
+
}
|
|
63
|
+
}, [tmpValue, validator, setValid]);
|
|
64
|
+
const tryOnChange = React.useCallback(() => {
|
|
65
|
+
if (!valid) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(validValue);
|
|
69
|
+
}, [valid, validValue, onChange]);
|
|
70
|
+
React.useEffect(() => setTmpValue(stringValue), [stringValue]);
|
|
71
|
+
React.useEffect(() => {
|
|
72
|
+
touched && live && tryOnChange();
|
|
73
|
+
}, [touched, live, validValue, tryOnChange]);
|
|
74
|
+
React.useEffect(() => onValidChange === null || onValidChange === void 0 ? void 0 : onValidChange(valid), [valid, onValidChange]);
|
|
75
|
+
const onTextareChange = React.useCallback((e) => {
|
|
76
|
+
setTouched(true);
|
|
77
|
+
setTmpValue(e.target.value);
|
|
78
|
+
}, []);
|
|
79
|
+
const onBlur = React.useCallback(() => {
|
|
80
|
+
if (!touched) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
tryOnChange();
|
|
84
|
+
}, [touched, tryOnChange]);
|
|
85
|
+
const _rows = getMinMaxed(rows === undefined
|
|
86
|
+
? (tmpValue !== null && tmpValue !== void 0 ? tmpValue : "").split("\n").length
|
|
87
|
+
: rows, minRows, maxRows);
|
|
88
|
+
const editorNmspc = (0, utils_1.nmspc)("json-editor");
|
|
89
|
+
return (React.createElement("textarea", { className: (0, utils_1.classNames)("form-control", editorNmspc(), !valid && editorNmspc("invalid"), className), onBlur: onBlur, rows: _rows, style: Object.assign(Object.assign({}, style), { width: "100%", resize: resizable ? "vertical" : "none" }), onChange: onTextareChange, value: tmpValue, ref: ref }));
|
|
90
|
+
});
|
|
91
|
+
function SubmittableJSONEditor({ value, onSubmit, validator, onSubmitDraft, onChange, className, submitLabel }) {
|
|
92
|
+
const { translations } = React.useContext(Context_1.Context);
|
|
93
|
+
const [json, _setJSON] = React.useState(value);
|
|
94
|
+
const setJSON = React.useCallback((json) => {
|
|
95
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(json);
|
|
96
|
+
_setJSON(json);
|
|
97
|
+
}, [onChange, _setJSON]);
|
|
98
|
+
const [valid, setValid] = React.useState(false);
|
|
99
|
+
const onClickSubmit = React.useCallback(() => onSubmit(json), [json, onSubmit]);
|
|
100
|
+
const onClickSubmitDraft = React.useCallback(() => onSubmitDraft === null || onSubmitDraft === void 0 ? void 0 : onSubmitDraft(json), [json, onSubmitDraft]);
|
|
101
|
+
// Focus on mount.
|
|
102
|
+
const ref = React.useRef(null);
|
|
103
|
+
React.useEffect(() => { var _a; return (_a = ref.current) === null || _a === void 0 ? void 0 : _a.focus(); }, []);
|
|
104
|
+
return (React.createElement("div", { className: className },
|
|
105
|
+
React.createElement(exports.JSONEditor, { value: json, validator: validator, onChange: setJSON, onValidChange: setValid, live: true, ref: ref, style: { height: "80vh" } }),
|
|
106
|
+
React.createElement(components_1.Button, { onClick: onClickSubmit, variant: "primary", disabled: json === undefined || !valid }, submitLabel || "OK"),
|
|
107
|
+
onSubmitDraft && (React.createElement(components_1.Button, { onClick: onClickSubmitDraft, disabled: json === undefined || !valid, variant: "default", className: `${className ? className + "-" : utils_1.CSS_NAMESPACE}preview-btn` }, translations["wizard.option.json.import.draft"]))));
|
|
108
|
+
}
|
|
109
|
+
exports.SubmittableJSONEditor = SubmittableJSONEditor;
|
|
110
|
+
const bypassValidator = (v) => true;
|
|
111
|
+
const AnyJSONEditor = (props) => React.createElement(exports.JSONEditor, Object.assign({}, props, { validator: bypassValidator }));
|
|
112
|
+
exports.AnyJSONEditor = AnyJSONEditor;
|
|
113
|
+
//# sourceMappingURL=JSONEditor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JSONEditor.js","sourceRoot":"","sources":["../../../../src/client/components/components/JSONEditor.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,2DAAwD;AACxD,iEAA+E;AAC/E,4CAAoE;AAGpE,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,GAAY,EAAE,GAAY,EAAE,EAAE;IAC/D,IAAI,GAAG,EAAE;QACR,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;KACzB;IACD,IAAI,GAAG,EAAE;QACR,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;KACzB;IACD,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AAcW,QAAA,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,UAAU,CAC7D,EAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,GAAG,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAG,EAAE,EAAE,SAAS,EAC7F,EACpB,GAAmC;;IACnC,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,mCAAI,EAAE,CAAC;IAC9D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC5D,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACpB,IAAI,QAAQ,KAAK,EAAE,IAAI,QAAQ,KAAK,SAAS,EAAE;YAC9C,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;YACnC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChB,KAAK,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;YAClC,OAAO;SACP;QACD,IAAI;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC9C,KAAK,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;YAC/B,QAAQ,CAAC,KAAK,CAAC,CAAC;SAChB;QAAC,OAAO,CAAC,EAAE;YACX,QAAQ,CAAC,KAAK,CAAC,CAAC;SAChB;IACF,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEpC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAC1C,IAAI,CAAC,KAAK,EAAE;YACX,OAAO;SACP;QACD,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,UAAU,CAAC,CAAC;IACxB,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;IAElC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAC/D,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACpB,OAAO,IAAI,IAAI,IAAI,WAAW,EAAE,CAAC;IAClC,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;IAE7C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;IAEtE,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAM,EAAE,EAAE;QACpD,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACrC,IAAI,CAAC,OAAO,EAAE;YACb,OAAO;SACP;QACD,WAAW,EAAE,CAAC;IACf,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;IAE3B,MAAM,KAAK,GAAG,WAAW,CACxB,IAAI,KAAK,SAAS;QACjB,CAAC,CAAC,CAAC,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM;QACrC,CAAC,CAAC,IAAI,EACP,OAAO,EACP,OAAO,CACP,CAAC;IAEF,MAAM,WAAW,GAAG,IAAA,aAAK,EAAC,aAAa,CAAC,CAAC;IAEzC,OAAO,CACN,kCACC,SAAS,EAAE,IAAA,kBAAU,EAAC,cAAc,EAAE,WAAW,EAAE,EAAE,CAAC,KAAK,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,EACjG,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,KAAK,EACX,KAAK,kCAAM,KAAK,KAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,KACxE,QAAQ,EAAE,eAAe,EACzB,KAAK,EAAE,QAAQ,EACf,GAAG,EAAE,GAAG,GACP,CACF,CAAC;AACH,CAAC,CAAC,CAAC;AAUH,SAAgB,qBAAqB,CACpC,EAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAgC;IAE5G,MAAM,EAAC,YAAY,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAO,CAAC,CAAC;IACjD,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1C,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,IAAI,CAAC,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEzB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChG,MAAM,kBAAkB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAG,IAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;IAEjH,kBAAkB;IAClB,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAsB,IAAI,CAAC,CAAC;IACpD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,WAAC,OAAA,MAAA,GAAG,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAA,EAAA,EAAE,EAAE,CAAC,CAAC;IAEhD,OAAO,CACN,6BAAK,SAAS,EAAE,SAAS;QACxB,oBAAC,kBAAU,IAAC,KAAK,EAAE,IAAI,EACX,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,OAAO,EACjB,aAAa,EAAE,QAAQ,EACvB,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,GAAI;QACvC,oBAAC,mBAAM,IAAC,OAAO,EAAE,aAAa,EACtB,OAAO,EAAC,SAAS,EACjB,QAAQ,EAAE,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,IAC5C,WAAW,IAAI,IAAI,CACZ;QACR,aAAa,IAAI,CACjB,oBAAC,mBAAM,IAAC,OAAO,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,IAAI,KAAK,SAAS,IAAI,CAAC,KAAK,EACtC,OAAO,EAAE,SAAS,EAClB,SAAS,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,qBAAa,aAAa,IAC7E,YAAY,CAAC,iCAAiC,CAAC,CACxC,CACT,CACI,CACN,CAAC;AACH,CAAC;AA1CD,sDA0CC;AAED,MAAM,eAAe,GAAG,CAAC,CAAO,EAAa,EAAE,CAAC,IAAI,CAAC;AAE9C,MAAM,aAAa,GAAG,CAAC,KAA+C,EAAE,EAAE,CAChF,oBAAC,kBAAU,oBAAK,KAAK,IAAE,SAAS,EAAE,eAAe,IAAI,CAAC;AAD1C,QAAA,aAAa,iBAC6B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
type SearchInputProps = {
|
|
3
|
+
onChange: (v: string) => void;
|
|
4
|
+
onKeyDown?: React.KeyboardEventHandler<HTMLDivElement>;
|
|
5
|
+
autoFocus?: boolean;
|
|
6
|
+
};
|
|
7
|
+
export declare const SearchInput: ({ onChange, onKeyDown, autoFocus }: SearchInputProps) => JSX.Element;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
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 __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.SearchInput = void 0;
|
|
27
|
+
const React = __importStar(require("react"));
|
|
28
|
+
const Context_1 = require("../Context");
|
|
29
|
+
const utils_1 = require("../../utils");
|
|
30
|
+
const SearchInput = ({ onChange, onKeyDown, autoFocus }) => {
|
|
31
|
+
const { theme, translations } = React.useContext(Context_1.Context);
|
|
32
|
+
const { FormControl, Glyphicon } = theme;
|
|
33
|
+
const [value, setValue] = React.useState("");
|
|
34
|
+
const onSearchChange = React.useCallback((e) => {
|
|
35
|
+
const { value } = e.target;
|
|
36
|
+
setValue(value);
|
|
37
|
+
onChange(value);
|
|
38
|
+
}, [setValue, onChange]);
|
|
39
|
+
return (React.createElement("div", { className: (0, utils_1.gnmspc)("search-input"), onKeyDown: onKeyDown },
|
|
40
|
+
React.createElement(FormControl, { placeholder: translations["wizard.list.search.placeholder"], autoFocus: autoFocus, onChange: onSearchChange, value: value }),
|
|
41
|
+
React.createElement(Glyphicon, { glyph: "search" })));
|
|
42
|
+
};
|
|
43
|
+
exports.SearchInput = SearchInput;
|
|
44
|
+
//# sourceMappingURL=SearchInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchInput.js","sourceRoot":"","sources":["../../../../src/client/components/components/SearchInput.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,2DAAwD;AACxD,4CAA0C;AAQnC,MAAM,WAAW,GAAG,CAAC,EAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAmB,EAAE,EAAE;IACjF,MAAM,EAAC,KAAK,EAAE,YAAY,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAO,CAAC,CAAC;IACxD,MAAM,EAAC,WAAW,EAAE,SAAS,EAAC,GAAG,KAAK,CAAC;IACvC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7C,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9C,MAAM,EAAC,KAAK,EAAC,GAAG,CAAC,CAAC,MAAM,CAAC;QACzB,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChB,QAAQ,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IACzB,OAAO,CACN,6BAAK,SAAS,EAAE,IAAA,cAAM,EAAC,cAAc,CAAC,EAAE,SAAS,EAAE,SAAS;QAC3D,oBAAC,WAAW,IAAC,WAAW,EAAE,YAAY,CAAC,gCAAgC,CAAC,EAC3D,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,KAAK,GAAI;QAC7B,oBAAC,SAAS,IAAC,KAAK,EAAC,QAAQ,GAAG,CACvB,CACN,CAAC;AACH,CAAC,CAAC;AAlBW,QAAA,WAAW,eAkBtB"}
|
|
@@ -0,0 +1,36 @@
|
|
|
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 __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.Spinner = void 0;
|
|
30
|
+
const React = __importStar(require("react"));
|
|
31
|
+
const utils_1 = require("../../utils");
|
|
32
|
+
const react_spinner_1 = __importDefault(require("react-spinner"));
|
|
33
|
+
exports.Spinner = React.memo(function Spinner({ color = "black", size = 32, className, style = {} }) {
|
|
34
|
+
return (React.createElement(react_spinner_1.default, { style: size ? Object.assign({ width: size, height: size }, style) : style, className: (0, utils_1.classNames)((0, utils_1.gnmspc)("spinner-container"), (0, utils_1.gnmspc)(color === "black" ? "spinner-black" : ""), className) }));
|
|
35
|
+
});
|
|
36
|
+
//# sourceMappingURL=Spinner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Spinner.js","sourceRoot":"","sources":["../../../../src/client/components/components/Spinner.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAE/B,4CAAsD;AACtD,kEAAqC;AAExB,QAAA,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CACjD,EAAC,KAAK,GAAG,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,SAAS,EAAE,KAAK,GAAG,EAAE,EACiB;IACnE,OAAO,CACN,oBAAC,uBAAQ,IACR,KAAK,EAAE,IAAI,CAAC,CAAC,iBAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,IAAK,KAAK,EAAE,CAAC,CAAC,KAAK,EAC3D,SAAS,EAAE,IAAA,kBAAU,EACpB,IAAA,cAAM,EAAC,mBAAmB,CAAC,EAC3B,IAAA,cAAM,EAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAChD,SAAS,CAAC,GACV,CACF,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
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 __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.Tooltip = void 0;
|
|
27
|
+
const React = __importStar(require("react"));
|
|
28
|
+
const Context_1 = require("../Context");
|
|
29
|
+
const Tooltip = ({ children, tooltip, placement = "top", id }) => {
|
|
30
|
+
const { Tooltip, OverlayTrigger } = React.useContext(Context_1.Context).theme;
|
|
31
|
+
const _tooltip = React.createElement(Tooltip, { id: id }, tooltip);
|
|
32
|
+
return React.createElement(OverlayTrigger, { placement: placement, overlay: _tooltip }, children);
|
|
33
|
+
};
|
|
34
|
+
exports.Tooltip = Tooltip;
|
|
35
|
+
//# sourceMappingURL=Tooltip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../../../../src/client/components/components/Tooltip.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,2DAAwD;AAGjD,MAAM,OAAO,GAAG,CAAC,EAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,GAAG,KAAK,EAAE,EAAE,EACC,EAAE,EAAE;IACrE,MAAM,EAAC,OAAO,EAAE,cAAc,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAO,CAAC,CAAC,KAAK,CAAC;IAClE,MAAM,QAAQ,GAAG,oBAAC,OAAO,IAAC,EAAE,EAAE,EAAE,IAAG,OAAO,CAAW,CAAC;IAEtD,OAAO,oBAAC,cAAc,IAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,IAAG,QAAQ,CAAkB,CAAC;AAC7F,CAAC,CAAC;AANW,QAAA,OAAO,WAMlB"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export interface Stylable {
|
|
3
|
+
style?: React.CSSProperties;
|
|
4
|
+
}
|
|
5
|
+
export interface Classable {
|
|
6
|
+
className?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface HasChildren {
|
|
9
|
+
children: React.ReactNode;
|
|
10
|
+
}
|
|
11
|
+
export type TooltipCompatible<T = any> = {
|
|
12
|
+
onMouseOut?: React.MouseEventHandler<T>;
|
|
13
|
+
onMouseOver?: React.MouseEventHandler<T>;
|
|
14
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/client/components/components/common.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from "./common";
|
|
2
|
+
export * from "./Button";
|
|
3
|
+
export * from "./ErrorBoundary";
|
|
4
|
+
export * from "./Help";
|
|
5
|
+
export * from "./JSONEditor";
|
|
6
|
+
export * from "./Spinner";
|
|
7
|
+
export * from "./Clickable";
|
|
8
|
+
export * from "./Draggable";
|
|
9
|
+
export * from "./GenericModal";
|
|
10
|
+
export * from "./SearchInput";
|
|
11
|
+
export * from "./Tooltip";
|
|
@@ -0,0 +1,28 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./common"), exports);
|
|
18
|
+
__exportStar(require("./Button"), exports);
|
|
19
|
+
__exportStar(require("./ErrorBoundary"), exports);
|
|
20
|
+
__exportStar(require("./Help"), exports);
|
|
21
|
+
__exportStar(require("./JSONEditor"), exports);
|
|
22
|
+
__exportStar(require("./Spinner"), exports);
|
|
23
|
+
__exportStar(require("./Clickable"), exports);
|
|
24
|
+
__exportStar(require("./Draggable"), exports);
|
|
25
|
+
__exportStar(require("./GenericModal"), exports);
|
|
26
|
+
__exportStar(require("./SearchInput"), exports);
|
|
27
|
+
__exportStar(require("./Tooltip"), exports);
|
|
28
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/client/components/components/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,2CAAyB;AACzB,kDAAgC;AAChC,yCAAuB;AACvB,+CAA6B;AAC7B,4CAA0B;AAC1B,8CAA4B;AAC5B,8CAA4B;AAC5B,iDAA+B;AAC/B,gDAA8B;AAC9B,4CAA0B"}
|
|
@@ -10,7 +10,7 @@ const validator_ajv6_1 = __importDefault(require("@rjsf/validator-ajv6"));
|
|
|
10
10
|
const utils_1 = require("./utils");
|
|
11
11
|
class _LajiFormInterface {
|
|
12
12
|
constructor() {
|
|
13
|
-
this.getRegistry = memoizee_1.default(() => {
|
|
13
|
+
this.getRegistry = (0, memoizee_1.default)(() => {
|
|
14
14
|
const lajiForm = new LajiForm_1.default({ schema: {}, uiSchema: {} });
|
|
15
15
|
return new core_1.default({
|
|
16
16
|
schema: {},
|
|
@@ -20,9 +20,9 @@ class _LajiFormInterface {
|
|
|
20
20
|
validator: validator_ajv6_1.default
|
|
21
21
|
}).getRegistry();
|
|
22
22
|
});
|
|
23
|
-
this.walkTypesToComponents = memoizee_1.default((registryFields) => Object.keys(registryFields).reduce((types, field) => {
|
|
24
|
-
const _componentPropTypes = utils_1.getComponentPropTypes(registryFields[field]);
|
|
25
|
-
const _schema = utils_1.propTypesToSchema((_componentPropTypes || {}).schema || {});
|
|
23
|
+
this.walkTypesToComponents = (0, memoizee_1.default)((registryFields) => Object.keys(registryFields).reduce((types, field) => {
|
|
24
|
+
const _componentPropTypes = (0, utils_1.getComponentPropTypes)(registryFields[field]);
|
|
25
|
+
const _schema = (0, utils_1.propTypesToSchema)((_componentPropTypes || {}).schema || {});
|
|
26
26
|
const _ = (fieldTypes) => fieldTypes.reduce((_fieldTypes, fieldType) => (Object.assign(Object.assign({}, _fieldTypes), { [fieldType]: Object.assign(Object.assign({}, (_fieldTypes[fieldType] || {})), { [field]: true }) })), types);
|
|
27
27
|
if (_schema && _schema.type === "object" && _schema.properties.type && _schema.properties.type.enum) {
|
|
28
28
|
return _(_schema.properties.type.enum);
|
|
@@ -36,4 +36,4 @@ class _LajiFormInterface {
|
|
|
36
36
|
}
|
|
37
37
|
const LajiFormInterface = new _LajiFormInterface();
|
|
38
38
|
exports.default = LajiFormInterface;
|
|
39
|
-
//# sourceMappingURL=
|
|
39
|
+
//# sourceMappingURL=laji-form-interface.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"laji-form-interface.js","sourceRoot":"","sources":["../../src/client/laji-form-interface.ts"],"names":[],"mappings":";;;;;AAAA,wDAA+B;AAC/B,yFAAiE;AACjE,sDAA8B;AAC9B,0EAA6C;AAE7C,mCAAmE;AAEnE,MAAM,kBAAkB;IAAxB;QACC,gBAAW,GAAG,IAAA,kBAAO,EAAC,GAGnB,EAAE;YACJ,MAAM,QAAQ,GAAG,IAAI,kBAAQ,CAAC,EAAC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAC,CAAC,CAAC;YAC1D,OAAQ,IAAI,cAAI,CAAC;gBAChB,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,EAAE;gBACZ,MAAM,EAAE,QAAQ,CAAC,SAAS,EAAE;gBAC5B,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE;gBAC9B,SAAS,EAAT,wBAAS;aACT,CAAQ,CAAC,WAAW,EAAE,CAAC;QACzB,CAAC,CAAC,CAAA;QAEF,0BAAqB,GAAG,IAAA,kBAAO,EAAC,CAAI,cAAwC,EACtB,EAAE,CACtD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACnD,MAAM,mBAAmB,GAAG,IAAA,6BAAqB,EAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;YACzE,MAAM,OAAO,GAAG,IAAA,yBAAiB,EAAC,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;YAC5E,MAAM,CAAC,GAAG,CAAC,UAAoB,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE,CAAC,iCAC9E,WAAW,KAAE,CAAC,SAAS,CAAC,kCAAM,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,KAAE,CAAC,KAAK,CAAC,EAAE,IAAI,OAC7E,EAAE,KAAK,CAAC,CAAC;YACX,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE;gBACpG,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACvC;YACD,sEAAsE;YACtE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACvB,CAAC,EAAE,EAAS,CAAC,CAAC,CAAA;QAEhB,kBAAa,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAQ,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC;QACnF,mBAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAS,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC;IACvF,CAAC;CAAA;AACD,MAAM,iBAAiB,GAAG,IAAI,kBAAkB,EAAE,CAAC;AACnD,kBAAgB,iBAAiB,CAAC"}
|
|
@@ -7,51 +7,51 @@ export default class ChangeHandlerService {
|
|
|
7
7
|
private applyEvent;
|
|
8
8
|
private applyChangesAsPatches;
|
|
9
9
|
}
|
|
10
|
-
export
|
|
10
|
+
export type UiSchemaChangeEvent = {
|
|
11
11
|
type: "uiSchema";
|
|
12
12
|
value: any;
|
|
13
13
|
selected: string;
|
|
14
14
|
};
|
|
15
|
-
export
|
|
15
|
+
export type TranslationsEvent = {
|
|
16
16
|
type: "translations";
|
|
17
17
|
key: any;
|
|
18
18
|
op?: string;
|
|
19
19
|
};
|
|
20
|
-
export
|
|
20
|
+
export type TranslationsAddEvent = TranslationsEvent & {
|
|
21
21
|
value: {
|
|
22
22
|
[lang in Lang]: string;
|
|
23
23
|
};
|
|
24
24
|
op: "add";
|
|
25
25
|
};
|
|
26
|
-
export
|
|
26
|
+
export type TranslationsChangeEvent = TranslationsEvent & {
|
|
27
27
|
value: any;
|
|
28
28
|
};
|
|
29
|
-
export
|
|
29
|
+
export type TranslationsDeleteEvent = TranslationsEvent & {
|
|
30
30
|
op: "delete";
|
|
31
31
|
};
|
|
32
|
-
export
|
|
32
|
+
export type FieldEvent = {
|
|
33
33
|
type: "field";
|
|
34
34
|
selected: string;
|
|
35
35
|
op: string;
|
|
36
36
|
};
|
|
37
|
-
export
|
|
37
|
+
export type FieldDeleteEvent = FieldEvent & {
|
|
38
38
|
op: "delete";
|
|
39
39
|
};
|
|
40
|
-
export
|
|
40
|
+
export type FieldAddEvent = FieldEvent & {
|
|
41
41
|
op: "add";
|
|
42
42
|
value: Property;
|
|
43
43
|
};
|
|
44
|
-
export
|
|
44
|
+
export type FieldUpdateEvent = FieldEvent & {
|
|
45
45
|
op: "update";
|
|
46
46
|
value: Field;
|
|
47
47
|
};
|
|
48
|
-
export
|
|
48
|
+
export type OptionChangeEvent = {
|
|
49
49
|
type: "options";
|
|
50
50
|
value: any;
|
|
51
51
|
path: string;
|
|
52
52
|
};
|
|
53
|
-
export
|
|
53
|
+
export type MasterChangeEvent = {
|
|
54
54
|
type: "master";
|
|
55
55
|
value: Master;
|
|
56
56
|
};
|
|
57
|
-
export
|
|
57
|
+
export type ChangeEvent = UiSchemaChangeEvent | TranslationsAddEvent | TranslationsChangeEvent | TranslationsDeleteEvent | FieldDeleteEvent | FieldAddEvent | FieldUpdateEvent | OptionChangeEvent;
|
|
@@ -25,7 +25,7 @@ class ChangeHandlerService {
|
|
|
25
25
|
}
|
|
26
26
|
applyEvent(master, schemaFormat, event) {
|
|
27
27
|
if (isUiSchemaChangeEvent(event)) {
|
|
28
|
-
return Object.assign(Object.assign({}, master), { uiSchema: utils_1.updateSafelyWithJSONPointer(master.uiSchema, event.value, utils_3.fieldPointerToUiSchemaPointer(schemaFormat.schema, event.selected)) });
|
|
28
|
+
return Object.assign(Object.assign({}, master), { uiSchema: (0, utils_1.updateSafelyWithJSONPointer)(master.uiSchema, event.value, (0, utils_3.fieldPointerToUiSchemaPointer)(schemaFormat.schema, event.selected)) });
|
|
29
29
|
}
|
|
30
30
|
else if (isTranslationsAddEvent(event)) {
|
|
31
31
|
const { key, value } = event;
|
|
@@ -39,7 +39,7 @@ class ChangeHandlerService {
|
|
|
39
39
|
}
|
|
40
40
|
else if (isTranslationsDeleteEvent(event)) {
|
|
41
41
|
const { key } = event;
|
|
42
|
-
return Object.assign(Object.assign({}, master), { translations: ["fi", "sv", "en"].reduce((byLang, lang) => (Object.assign(Object.assign({}, byLang), { [lang]: utils_1.immutableDelete(expandTranslations(master.translations)[lang], key) })), {}) });
|
|
42
|
+
return Object.assign(Object.assign({}, master), { translations: ["fi", "sv", "en"].reduce((byLang, lang) => (Object.assign(Object.assign({}, byLang), { [lang]: (0, utils_1.immutableDelete)(expandTranslations(master.translations)[lang], key) })), {}) });
|
|
43
43
|
}
|
|
44
44
|
else if (event.type === "field") {
|
|
45
45
|
const splitted = event.selected.split("/").filter(s => s);
|
|
@@ -54,10 +54,10 @@ class ChangeHandlerService {
|
|
|
54
54
|
}
|
|
55
55
|
else if (isFieldAddEvent(event)) {
|
|
56
56
|
const propertyModel = event.value;
|
|
57
|
-
if (propertyModel.range
|
|
57
|
+
if (propertyModel.range !== model_1.PropertyRange.Id) {
|
|
58
58
|
const addField = (fields, path, property) => {
|
|
59
59
|
if (!path.length) {
|
|
60
|
-
return [...fields, { name: utils_2.unprefixProp(property) }];
|
|
60
|
+
return [...fields, { name: (0, utils_2.unprefixProp)(property) }];
|
|
61
61
|
}
|
|
62
62
|
const [next, ...remaining] = path;
|
|
63
63
|
return fields.map(field => field.name === next
|
|
@@ -81,12 +81,12 @@ class ChangeHandlerService {
|
|
|
81
81
|
}
|
|
82
82
|
else if (isOptionChangeEvent(event)) {
|
|
83
83
|
const { path, value } = event;
|
|
84
|
-
return utils_1.updateSafelyWithJSONPointer(master, value, path);
|
|
84
|
+
return (0, utils_1.updateSafelyWithJSONPointer)(master, value, path);
|
|
85
85
|
}
|
|
86
86
|
throw new Error("Unhandled error");
|
|
87
87
|
}
|
|
88
88
|
applyChangesAsPatches(tmpExpandedMaster, tmpMaster, newMaster) {
|
|
89
|
-
const diff = DiffViewer_1.getDiff(tmpExpandedMaster, newMaster);
|
|
89
|
+
const diff = (0, DiffViewer_1.getDiff)(tmpExpandedMaster, newMaster);
|
|
90
90
|
let patchedMaster = tmpMaster;
|
|
91
91
|
const patches = [];
|
|
92
92
|
diff.forEach(d => {
|
|
@@ -103,7 +103,7 @@ class ChangeHandlerService {
|
|
|
103
103
|
const lang = d.path[1];
|
|
104
104
|
const label = d.path[2];
|
|
105
105
|
const translations = expandTranslations(patchedMaster.translations);
|
|
106
|
-
patchedMaster = Object.assign(Object.assign({}, patchedMaster), { translations: Object.assign(Object.assign({}, translations), { [lang]: utils_1.immutableDelete(translations, label) }) });
|
|
106
|
+
patchedMaster = Object.assign(Object.assign({}, patchedMaster), { translations: Object.assign(Object.assign({}, translations), { [lang]: (0, utils_1.immutableDelete)(translations, label) }) });
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-handler-service.js","sourceRoot":"","sources":["../../../src/client/services/change-handler-service.ts"],"names":[],"mappings":";;AAAA,uDAA2F;AAC3F,uCAA2C;AAC3C,oCAAyD;AACzD,uCAEqB;AACrB,gEAA0D;AAE1D,MAAM,kBAAkB,GAAG,CAAC,YAAoC,EAAwB,EAAE,CAAC,iBAC1F,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAK,CAAC,YAAY,IAAI,EAAE,CAAC,EAC9C,CAAC;AAEH,MAAqB,oBAAoB;IAGxC,YAAY,IAAU;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,IAAU;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,KAAK,CACJ,SAAiB,EACjB,iBAAiC,EACjC,YAA0B,EAC1B,MAAmC;QAEnC,MAAM,aAAa,GAAG,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACpE,IAAI,SAAS,GAAG,kBAAI,iBAAiB,CAAW,CAAC;QAEjD,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE;YAClC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;SAC5D;QAED,OAAO,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,YAAY;YACpD,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,EAAE,SAAS,EAAE,SAAS,CAAC;YACrE,CAAC,CAAC,SAAS,CAAC;IACd,CAAC;IAEO,UAAU,CAAC,MAAc,EAAE,YAA0B,EAAE,KAAkB;QAChF,IAAI,qBAAqB,CAAC,KAAK,CAAC,EAAE;YACjC,uCAAW,MAAM,KAAE,QAAQ,EAAE,mCAA2B,
|
|
1
|
+
{"version":3,"file":"change-handler-service.js","sourceRoot":"","sources":["../../../src/client/services/change-handler-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
/// <reference types="memoizee" />
|
|
2
2
|
import ApiClient from "../../api-client";
|
|
3
3
|
import { FormDeleteResult, FormListing, Lang, Master, RemoteMaster, SchemaFormat } from "../../model";
|
|
4
|
-
import
|
|
5
|
-
export default class FormService extends
|
|
4
|
+
import UsesMemoization from "../../services/uses-memoization";
|
|
5
|
+
export default class FormService extends UsesMemoization {
|
|
6
6
|
private apiClient;
|
|
7
7
|
private formApiClient?;
|
|
8
8
|
private lang;
|
|
9
9
|
private personToken?;
|
|
10
10
|
constructor(apiClient: ApiClient, lang: Lang, formApiClient?: ApiClient, personToken?: string);
|
|
11
11
|
private fetchJSON;
|
|
12
|
-
getMaster: ((id: string, signal?: AbortSignal
|
|
12
|
+
getMaster: ((id: string, signal?: AbortSignal) => Promise<Master>) & import("memoizee").Memoized<(id: string, signal?: AbortSignal) => Promise<Master>>;
|
|
13
13
|
private getSchemaFormatCache;
|
|
14
14
|
getSchemaFormat: (id: string) => Promise<SchemaFormat>;
|
|
15
15
|
update(form: any): Promise<RemoteMaster>;
|
|
16
16
|
create(form: any): Promise<RemoteMaster>;
|
|
17
17
|
delete(id: string): Promise<FormDeleteResult>;
|
|
18
|
-
getForms: ((lang?: Lang
|
|
18
|
+
getForms: ((lang?: Lang, signal?: AbortSignal) => Promise<FormListing[]>) & import("memoizee").Memoized<(lang?: Lang, signal?: AbortSignal) => Promise<FormListing[]>>;
|
|
19
19
|
masterToSchemaFormat(master: Master, signal?: AbortSignal): Promise<SchemaFormat>;
|
|
20
20
|
setLang(lang: Lang): void;
|
|
21
21
|
}
|
|
@@ -12,11 +12,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const
|
|
16
|
-
class FormService extends
|
|
15
|
+
const uses_memoization_1 = __importDefault(require("../../services/uses-memoization"));
|
|
16
|
+
class FormService extends uses_memoization_1.default {
|
|
17
17
|
constructor(apiClient, lang, formApiClient, personToken) {
|
|
18
18
|
super();
|
|
19
|
-
this.getMaster = this.
|
|
19
|
+
this.getMaster = this.memoize((id, signal) => {
|
|
20
20
|
const query = { format: "json" };
|
|
21
21
|
if (!this.formApiClient) {
|
|
22
22
|
query.lang = "multi";
|
|
@@ -24,9 +24,9 @@ class FormService extends has_cache_1.default {
|
|
|
24
24
|
query.expand = false;
|
|
25
25
|
return this.fetchJSON(`/${id}`, query, { signal });
|
|
26
26
|
}, { length: 1 });
|
|
27
|
-
this.getSchemaFormatCache = this.
|
|
27
|
+
this.getSchemaFormatCache = this.memoize((id) => this.memoize((lang) => this.fetchJSON(`/${id}`, { format: "schema", lang })));
|
|
28
28
|
this.getSchemaFormat = (id) => this.getSchemaFormatCache(id)(this.lang);
|
|
29
|
-
this.getForms = this.
|
|
29
|
+
this.getForms = this.memoize((lang, signal) => __awaiter(this, void 0, void 0, function* () {
|
|
30
30
|
const response = (yield this.fetchJSON("", lang ? { lang } : undefined, { signal }));
|
|
31
31
|
return this.formApiClient ? response.forms : response.results;
|
|
32
32
|
}));
|
|
@@ -42,18 +42,14 @@ class FormService extends has_cache_1.default {
|
|
|
42
42
|
}
|
|
43
43
|
update(form) {
|
|
44
44
|
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
-
const remoteForm = yield this.fetchJSON(`/${form.id}`, { personToken: this.personToken }, { method: "PUT", body:
|
|
46
|
-
"Content-Type": "application/json"
|
|
47
|
-
} });
|
|
45
|
+
const remoteForm = yield this.fetchJSON(`/${form.id}`, { personToken: this.personToken }, { method: "PUT", body: form });
|
|
48
46
|
this.getMaster.delete(form.id);
|
|
49
47
|
this.getSchemaFormatCache(form.id).clear();
|
|
50
48
|
return remoteForm;
|
|
51
49
|
});
|
|
52
50
|
}
|
|
53
51
|
create(form) {
|
|
54
|
-
return this.fetchJSON("", { personToken: this.personToken }, { method: "POST", body:
|
|
55
|
-
"Content-Type": "application/json"
|
|
56
|
-
} });
|
|
52
|
+
return this.fetchJSON("", { personToken: this.personToken }, { method: "POST", body: form });
|
|
57
53
|
}
|
|
58
54
|
delete(id) {
|
|
59
55
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -65,9 +61,7 @@ class FormService extends has_cache_1.default {
|
|
|
65
61
|
});
|
|
66
62
|
}
|
|
67
63
|
masterToSchemaFormat(master, signal) {
|
|
68
|
-
return this.fetchJSON("/transform", { lang: this.lang, personToken: this.personToken }, { method: "POST", body:
|
|
69
|
-
"Content-Type": "application/json"
|
|
70
|
-
}, signal });
|
|
64
|
+
return this.fetchJSON("/transform", { lang: this.lang, personToken: this.personToken }, { method: "POST", body: master, signal });
|
|
71
65
|
}
|
|
72
66
|
setLang(lang) {
|
|
73
67
|
this.lang = lang;
|