graphql-form 0.0.10 → 0.0.11
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/models.d.ts +6 -0
- package/lib/renderer/fields.js +11 -3
- package/lib/renderer/fields.js.map +1 -1
- package/package.json +1 -1
- package/src/models.ts +7 -1
- package/src/renderer/fields.tsx +18 -1
package/lib/models.d.ts
CHANGED
@@ -16,6 +16,11 @@ export declare type SavedForms = {
|
|
16
16
|
[selector: string]: FormObject;
|
17
17
|
};
|
18
18
|
export declare type ReturnedDictType = any;
|
19
|
+
export declare type WidgetVariantType = {
|
20
|
+
name: string;
|
21
|
+
widget: string;
|
22
|
+
data: ReturnedDictType;
|
23
|
+
};
|
19
24
|
export declare type PassedFormProps<WidgetData = ReturnedDictType> = {
|
20
25
|
f: ParserField;
|
21
26
|
nodes: ParserField[];
|
@@ -25,6 +30,7 @@ export declare type PassedFormProps<WidgetData = ReturnedDictType> = {
|
|
25
30
|
required?: boolean;
|
26
31
|
runQuery: (q: string) => Promise<ReturnedDictType>;
|
27
32
|
widgetComponents: WidgetType[];
|
33
|
+
widgetVariants?: WidgetVariantType[];
|
28
34
|
currentPath: string;
|
29
35
|
widgets?: SavedWidgets;
|
30
36
|
widgetData?: WidgetData;
|
package/lib/renderer/fields.js
CHANGED
@@ -18,8 +18,8 @@ exports.Fields = void 0;
|
|
18
18
|
var graphql_js_tree_1 = require("graphql-js-tree");
|
19
19
|
var react_1 = __importDefault(require("react"));
|
20
20
|
var Fields = function (props) {
|
21
|
-
var _a;
|
22
|
-
var nodes = props.nodes, widgetComponents = props.widgetComponents, f = props.f, widgets = props.widgets,
|
21
|
+
var _a, _b;
|
22
|
+
var nodes = props.nodes, widgetComponents = props.widgetComponents, f = props.f, widgets = props.widgets, widgetVariants = props.widgetVariants, _c = props.components, ArrayField = _c.ArrayField, ObjectField = _c.ObjectField;
|
23
23
|
var seekNode = nodes.find(function (n) { return n.name === (0, graphql_js_tree_1.getTypeName)(f.type.fieldType); });
|
24
24
|
var isInput = (seekNode === null || seekNode === void 0 ? void 0 : seekNode.data.type) === graphql_js_tree_1.TypeDefinition.InputObjectTypeDefinition;
|
25
25
|
if (f.data.type === graphql_js_tree_1.TypeSystemDefinition.FieldDefinition) {
|
@@ -35,7 +35,15 @@ var Fields = function (props) {
|
|
35
35
|
if (widget) {
|
36
36
|
var WidgetComponent = (_a = widgetComponents.find(function (wc) { return wc.name === widget.widget; })) === null || _a === void 0 ? void 0 : _a.Component;
|
37
37
|
if (!WidgetComponent) {
|
38
|
-
|
38
|
+
var widgetVariant_1 = widgetVariants === null || widgetVariants === void 0 ? void 0 : widgetVariants.find(function (wv) { return wv.name === widget.widget; });
|
39
|
+
if (!widgetVariant_1) {
|
40
|
+
return react_1.default.createElement(react_1.default.Fragment, null);
|
41
|
+
}
|
42
|
+
var WidgetComponent_1 = (_b = widgetComponents.find(function (wc) { return wc.name === widgetVariant_1.widget; })) === null || _b === void 0 ? void 0 : _b.Component;
|
43
|
+
if (!WidgetComponent_1) {
|
44
|
+
return react_1.default.createElement(react_1.default.Fragment, null);
|
45
|
+
}
|
46
|
+
return (react_1.default.createElement(WidgetComponent_1, __assign({}, props, { widgetData: __assign({ widget: widgetVariant_1.widget }, widgetVariant_1.data) })));
|
39
47
|
}
|
40
48
|
return react_1.default.createElement(WidgetComponent, __assign({}, props, { widgetData: widget }));
|
41
49
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../../src/renderer/fields.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,mDAA0G;AAC1G,gDAA0B;AAEnB,IAAM,MAAM,GAA8B,UAAC,KAAK;;IAE/C,IAAA,KAAK,
|
1
|
+
{"version":3,"file":"fields.js","sourceRoot":"","sources":["../../src/renderer/fields.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/models.ts
CHANGED
@@ -16,10 +16,15 @@ export type SavedWidgets = {
|
|
16
16
|
export type SavedForms = {
|
17
17
|
[selector: string]: FormObject;
|
18
18
|
};
|
19
|
-
|
20
19
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
21
20
|
export type ReturnedDictType = any;
|
22
21
|
|
22
|
+
export type WidgetVariantType = {
|
23
|
+
name: string;
|
24
|
+
widget: string;
|
25
|
+
data: ReturnedDictType;
|
26
|
+
};
|
27
|
+
|
23
28
|
export type PassedFormProps<WidgetData = ReturnedDictType> = {
|
24
29
|
f: ParserField;
|
25
30
|
nodes: ParserField[];
|
@@ -29,6 +34,7 @@ export type PassedFormProps<WidgetData = ReturnedDictType> = {
|
|
29
34
|
required?: boolean;
|
30
35
|
runQuery: (q: string) => Promise<ReturnedDictType>;
|
31
36
|
widgetComponents: WidgetType[];
|
37
|
+
widgetVariants?: WidgetVariantType[];
|
32
38
|
currentPath: string;
|
33
39
|
widgets?: SavedWidgets;
|
34
40
|
widgetData?: WidgetData;
|
package/src/renderer/fields.tsx
CHANGED
@@ -8,6 +8,7 @@ export const Fields: React.FC<PassedFormProps> = (props) => {
|
|
8
8
|
widgetComponents,
|
9
9
|
f,
|
10
10
|
widgets,
|
11
|
+
widgetVariants,
|
11
12
|
components: { ArrayField, ObjectField },
|
12
13
|
} = props;
|
13
14
|
const seekNode = nodes.find((n) => n.name === getTypeName(f.type.fieldType));
|
@@ -25,7 +26,23 @@ export const Fields: React.FC<PassedFormProps> = (props) => {
|
|
25
26
|
if (widget) {
|
26
27
|
const WidgetComponent = widgetComponents.find((wc) => wc.name === widget.widget)?.Component;
|
27
28
|
if (!WidgetComponent) {
|
28
|
-
|
29
|
+
const widgetVariant = widgetVariants?.find((wv) => wv.name === widget.widget);
|
30
|
+
if (!widgetVariant) {
|
31
|
+
return <></>;
|
32
|
+
}
|
33
|
+
const WidgetComponent = widgetComponents.find((wc) => wc.name === widgetVariant.widget)?.Component;
|
34
|
+
if (!WidgetComponent) {
|
35
|
+
return <></>;
|
36
|
+
}
|
37
|
+
return (
|
38
|
+
<WidgetComponent
|
39
|
+
{...props}
|
40
|
+
widgetData={{
|
41
|
+
widget: widgetVariant.widget,
|
42
|
+
...widgetVariant.data,
|
43
|
+
}}
|
44
|
+
/>
|
45
|
+
);
|
29
46
|
}
|
30
47
|
return <WidgetComponent {...props} widgetData={widget} />;
|
31
48
|
}
|