graphql-form-mui 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. package/Readme.md +3 -0
  2. package/lib/components/ArrayField.d.ts +6 -0
  3. package/lib/components/ArrayField.js +64 -0
  4. package/lib/components/ArrayField.js.map +1 -0
  5. package/lib/components/BooleanField.d.ts +4 -0
  6. package/lib/components/BooleanField.js +27 -0
  7. package/lib/components/BooleanField.js.map +1 -0
  8. package/lib/components/EnumField.d.ts +4 -0
  9. package/lib/components/EnumField.js +38 -0
  10. package/lib/components/EnumField.js.map +1 -0
  11. package/lib/components/FormField.d.ts +4 -0
  12. package/lib/components/FormField.js +12 -0
  13. package/lib/components/FormField.js.map +1 -0
  14. package/lib/components/FormLabel.d.ts +4 -0
  15. package/lib/components/FormLabel.js +12 -0
  16. package/lib/components/FormLabel.js.map +1 -0
  17. package/lib/components/NullField.d.ts +3 -0
  18. package/lib/components/NullField.js +8 -0
  19. package/lib/components/NullField.js.map +1 -0
  20. package/lib/components/NumberField.d.ts +4 -0
  21. package/lib/components/NumberField.js +22 -0
  22. package/lib/components/NumberField.js.map +1 -0
  23. package/lib/components/ObjectField.d.ts +4 -0
  24. package/lib/components/ObjectField.js +37 -0
  25. package/lib/components/ObjectField.js.map +1 -0
  26. package/lib/components/UniversalField.d.ts +4 -0
  27. package/lib/components/UniversalField.js +22 -0
  28. package/lib/components/UniversalField.js.map +1 -0
  29. package/lib/index.d.ts +4 -0
  30. package/lib/index.js +42 -0
  31. package/lib/index.js.map +1 -0
  32. package/package.json +36 -0
  33. package/src/components/ArrayField.tsx +111 -0
  34. package/src/components/BooleanField.tsx +24 -0
  35. package/src/components/EnumField.tsx +31 -0
  36. package/src/components/FormField.tsx +5 -0
  37. package/src/components/FormLabel.tsx +9 -0
  38. package/src/components/NullField.tsx +2 -0
  39. package/src/components/NumberField.tsx +15 -0
  40. package/src/components/ObjectField.tsx +41 -0
  41. package/src/components/UniversalField.tsx +14 -0
  42. package/src/index.tsx +32 -0
  43. package/tsconfig.build.json +36 -0
  44. package/tsconfig.json +20 -0
package/Readme.md ADDED
@@ -0,0 +1,3 @@
1
+ # Starter
2
+
3
+ Copy this starter folder to start the new form library
@@ -0,0 +1,6 @@
1
+ import { PassedFormProps } from 'graphql-form';
2
+ import React from 'react';
3
+ declare const ArrayField: React.FC<PassedFormProps & {
4
+ open?: boolean;
5
+ }>;
6
+ export default ArrayField;
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var material_1 = require("@mui/material");
18
+ var graphql_form_1 = require("graphql-form");
19
+ var graphql_js_tree_1 = require("graphql-js-tree");
20
+ var react_1 = __importDefault(require("react"));
21
+ var icons_material_1 = require("@mui/icons-material");
22
+ var ArrayField = function (props) {
23
+ var formObject = props.formObject, onChange = props.onChange, f = props.f;
24
+ formObject.value || (formObject.value = []);
25
+ if (f.type.fieldType.type !== graphql_js_tree_1.Options.array) {
26
+ throw new Error('Invalid Array node');
27
+ }
28
+ var nodeWithoutArray = __assign(__assign({}, f), { type: __assign(__assign({}, f.type), { fieldType: __assign({}, f.type.fieldType.nest) }) });
29
+ var formValuePointer = formObject.value;
30
+ return (react_1.default.createElement(material_1.Stack, null,
31
+ formValuePointer.map(function (v, i, all) {
32
+ formValuePointer[i] || (formValuePointer[i] = { node: nodeWithoutArray });
33
+ return (react_1.default.createElement(material_1.Stack, { key: f.name + i },
34
+ react_1.default.createElement(graphql_form_1.Renderer, __assign({ key: i }, props, { f: __assign(__assign({}, nodeWithoutArray), { name: "".concat(nodeWithoutArray.name, "[").concat(i, "]") }), onChange: function (e) {
35
+ formValuePointer[i] = e;
36
+ onChange(__assign(__assign({}, formObject), { value: formValuePointer }));
37
+ }, formObject: v }),
38
+ react_1.default.createElement(material_1.Stack, { direction: "row" },
39
+ react_1.default.createElement(material_1.IconButton, { onClick: function () {
40
+ onChange(__assign(__assign({}, formObject), { value: formValuePointer.filter(function (_, index) { return i !== index; }) }));
41
+ } },
42
+ react_1.default.createElement(icons_material_1.Close, null)),
43
+ i !== 0 && (react_1.default.createElement(material_1.IconButton, { onClick: function () {
44
+ var switched = v;
45
+ formValuePointer[i] = formValuePointer[i - 1];
46
+ formValuePointer[i - 1] = switched;
47
+ onChange(__assign(__assign({}, formObject), { value: formValuePointer }));
48
+ } },
49
+ react_1.default.createElement(icons_material_1.ArrowUpward, null))),
50
+ i !== all.length - 1 && (react_1.default.createElement(material_1.IconButton, { onClick: function () {
51
+ var switched = v;
52
+ formValuePointer[i] = formValuePointer[i + 1];
53
+ formValuePointer[i + 1] = switched;
54
+ onChange(__assign(__assign({}, formObject), { value: formValuePointer }));
55
+ } },
56
+ react_1.default.createElement(icons_material_1.ArrowDownward, null)))))));
57
+ }),
58
+ react_1.default.createElement(material_1.Button, { onClick: function () {
59
+ formValuePointer.push({});
60
+ onChange(__assign(__assign({}, formObject), { value: formValuePointer }));
61
+ }, endIcon: react_1.default.createElement(icons_material_1.PlusOne, null) }, "Add ".concat(f.name))));
62
+ };
63
+ exports.default = ArrayField;
64
+ //# sourceMappingURL=ArrayField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ArrayField.js","sourceRoot":"","sources":["../../src/components/ArrayField.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { PassedFormProps } from 'graphql-form';
3
+ declare const _default: ({ f, formObject, onChange }: PassedFormProps) => JSX.Element;
4
+ export default _default;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var material_1 = require("@mui/material");
18
+ var react_1 = __importDefault(require("react"));
19
+ exports.default = (function (_a) {
20
+ var f = _a.f, formObject = _a.formObject, onChange = _a.onChange;
21
+ var value = formObject.value;
22
+ return (react_1.default.createElement(material_1.FormGroup, null,
23
+ react_1.default.createElement(material_1.FormControlLabel, { control: react_1.default.createElement(material_1.Checkbox, { value: value, onChange: function () {
24
+ return onChange(__assign(__assign({}, formObject), { value: value === true ? undefined : true }));
25
+ } }), label: f.name })));
26
+ });
27
+ //# sourceMappingURL=BooleanField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BooleanField.js","sourceRoot":"","sources":["../../src/components/BooleanField.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAsE;AAEtE,gDAA0B;AAC1B,mBAAe,UAAC,EAA4C;QAA1C,CAAC,OAAA,EAAE,UAAU,gBAAA,EAAE,QAAQ,cAAA;IACrC,IAAM,KAAK,GAAG,UAAU,CAAC,KAA4B,CAAC;IACtD,OAAO,CACH,8BAAC,oBAAS;QACN,8BAAC,2BAAgB,IACb,OAAO,EACH,8BAAC,mBAAQ,IACL,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE;oBACN,OAAA,QAAQ,uBACD,UAAU,KACb,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAC1C;gBAHF,CAGE,GAER,EAEN,KAAK,EAAE,CAAC,CAAC,IAAI,GACf,CACM,CACf,CAAC;AACN,CAAC,EAAC"}
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { PassedFormProps } from 'graphql-form';
3
+ declare const _default: ({ nodes, onChange, formObject, f }: PassedFormProps) => JSX.Element;
4
+ export default _default;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var material_1 = require("@mui/material");
18
+ var graphql_js_tree_1 = require("graphql-js-tree");
19
+ var react_1 = __importDefault(require("react"));
20
+ exports.default = (function (_a) {
21
+ var _b;
22
+ var nodes = _a.nodes, onChange = _a.onChange, formObject = _a.formObject, f = _a.f;
23
+ var seekNode = nodes.find(function (n) { return n.name === (0, graphql_js_tree_1.getTypeName)(f.type.fieldType); });
24
+ if (!seekNode) {
25
+ throw new Error('Invalid enum field');
26
+ }
27
+ var options = ((_b = seekNode.args) === null || _b === void 0 ? void 0 : _b.map(function (_a) {
28
+ var label = _a.name;
29
+ return ({
30
+ label: label,
31
+ value: label,
32
+ });
33
+ })) || [];
34
+ return (react_1.default.createElement(material_1.Select, { placeholder: f.name, value: formObject.value, onChange: function (e) {
35
+ onChange(__assign(__assign({}, formObject), { value: e.target.value }));
36
+ } }, options.map(function (o) { return (react_1.default.createElement(material_1.MenuItem, { value: o.value }, o.label)); })));
37
+ });
38
+ //# sourceMappingURL=EnumField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnumField.js","sourceRoot":"","sources":["../../src/components/EnumField.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAiD;AAEjD,mDAA8C;AAC9C,gDAA0B;AAC1B,mBAAe,UAAC,EAAmD;;QAAjD,KAAK,WAAA,EAAE,QAAQ,cAAA,EAAE,UAAU,gBAAA,EAAE,CAAC,OAAA;IAC5C,IAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,IAAA,6BAAW,EAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAxC,CAAwC,CAAC,CAAC;IAC7E,IAAI,CAAC,QAAQ,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;KACzC;IACD,IAAM,OAAO,GACT,CAAA,MAAA,QAAQ,CAAC,IAAI,0CAAE,GAAG,CAAC,UAAC,EAAe;YAAP,KAAK,UAAA;QAAO,OAAA,CAAC;YACrC,KAAK,OAAA;YACL,KAAK,EAAE,KAAK;SACf,CAAC;IAHsC,CAGtC,CAAC,KAAI,EAAE,CAAC;IACd,OAAO,CACH,8BAAC,iBAAM,IACH,WAAW,EAAE,CAAC,CAAC,IAAI,EACnB,KAAK,EAAE,UAAU,CAAC,KAA2B,EAC7C,QAAQ,EAAE,UAAC,CAAC;YACR,QAAQ,uBACD,UAAU,KACb,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,IACvB,CAAC;QACP,CAAC,IAEA,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAChB,8BAAC,mBAAQ,IAAC,KAAK,EAAE,CAAC,CAAC,KAAK,IAAG,CAAC,CAAC,KAAK,CAAY,CACjD,EAFmB,CAEnB,CAAC,CACG,CACZ,CAAC;AACN,CAAC,EAAC"}
@@ -0,0 +1,4 @@
1
+ import { PassedFormProps } from 'graphql-form';
2
+ import React from 'react';
3
+ declare const FormField: React.FC<PassedFormProps>;
4
+ export default FormField;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var react_1 = __importDefault(require("react"));
7
+ var FormField = function (_a) {
8
+ var children = _a.children;
9
+ return react_1.default.createElement("div", null, children);
10
+ };
11
+ exports.default = FormField;
12
+ //# sourceMappingURL=FormField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormField.js","sourceRoot":"","sources":["../../src/components/FormField.tsx"],"names":[],"mappings":";;;;;AACA,gDAA0B;AAC1B,IAAM,SAAS,GAA8B,UAAC,EAAY;QAAV,QAAQ,cAAA;IAAO,OAAA,2CAAM,QAAQ,CAAO;AAArB,CAAqB,CAAC;AAErF,kBAAe,SAAS,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { PassedFormProps } from 'graphql-form';
2
+ import React from 'react';
3
+ declare const FormLabel: React.FC<PassedFormProps>;
4
+ export default FormLabel;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var react_1 = __importDefault(require("react"));
7
+ var FormLabel = function (props) { return (react_1.default.createElement("div", null,
8
+ props.f.name,
9
+ " ",
10
+ props.children)); };
11
+ exports.default = FormLabel;
12
+ //# sourceMappingURL=FormLabel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormLabel.js","sourceRoot":"","sources":["../../src/components/FormLabel.tsx"],"names":[],"mappings":";;;;;AACA,gDAA0B;AAC1B,IAAM,SAAS,GAA8B,UAAC,KAAK,IAAK,OAAA,CACpD;IACK,KAAK,CAAC,CAAC,CAAC,IAAI;;IAAG,KAAK,CAAC,QAAQ,CAC5B,CACT,EAJuD,CAIvD,CAAC;AAEF,kBAAe,SAAS,CAAC"}
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare const _default: () => JSX.Element;
3
+ export default _default;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var react_1 = __importDefault(require("react"));
7
+ exports.default = (function () { return react_1.default.createElement("div", null, "No value"); });
8
+ //# sourceMappingURL=NullField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NullField.js","sourceRoot":"","sources":["../../src/components/NullField.tsx"],"names":[],"mappings":";;;;;AAAA,gDAA0B;AAC1B,mBAAe,cAAM,OAAA,sDAAmB,EAAnB,CAAmB,EAAC"}
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { PassedFormProps } from 'graphql-form';
3
+ declare const _default: (props: PassedFormProps) => JSX.Element;
4
+ export default _default;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var material_1 = require("@mui/material");
18
+ var react_1 = __importDefault(require("react"));
19
+ exports.default = (function (props) { return (react_1.default.createElement(material_1.TextField, { type: "number", value: props.formObject.value || '', onChange: function (e) {
20
+ props.onChange(__assign(__assign({}, props.formObject), { value: e.target.value }));
21
+ } })); });
22
+ //# sourceMappingURL=NumberField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NumberField.js","sourceRoot":"","sources":["../../src/components/NumberField.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAA0C;AAE1C,gDAA0B;AAC1B,mBAAe,UAAC,KAAsB,IAAK,OAAA,CACvC,8BAAC,oBAAS,IACN,IAAI,EAAC,QAAQ,EACb,KAAK,EAAG,KAAK,CAAC,UAAU,CAAC,KAA4B,IAAI,EAAE,EAC3D,QAAQ,EAAE,UAAC,CAAC;QACR,KAAK,CAAC,QAAQ,uBACP,KAAK,CAAC,UAAU,KACnB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,IACvB,CAAC;IACP,CAAC,GACH,CACL,EAX0C,CAW1C,EAAC"}
@@ -0,0 +1,4 @@
1
+ import { PassedFormProps } from 'graphql-form';
2
+ import React from 'react';
3
+ declare const ObjectField: React.FC<PassedFormProps>;
4
+ export default ObjectField;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var material_1 = require("@mui/material");
18
+ var graphql_form_1 = require("graphql-form");
19
+ var react_1 = __importDefault(require("react"));
20
+ var ObjectField = function (props) {
21
+ var _a;
22
+ var formObject = props.formObject, f = props.f;
23
+ formObject.value || (formObject.value = {});
24
+ var fV = formObject.value;
25
+ return (react_1.default.createElement(material_1.Stack, { pl: 4 }, (_a = f.args) === null || _a === void 0 ? void 0 : _a.sort(function (a, b) {
26
+ return b.name > a.name ? -1 : 1;
27
+ }).map(function (a) {
28
+ var _a;
29
+ fV[_a = a.name] || (fV[_a] = { node: a });
30
+ return (react_1.default.createElement(graphql_form_1.Renderer, __assign({}, props, { currentPath: "".concat(props.currentPath, ".").concat(a.name), key: a.name, formObject: fV[a.name], required: false, onChange: function (fv) {
31
+ var _a;
32
+ props.onChange(__assign(__assign({}, formObject), { value: __assign(__assign({}, fV), (_a = {}, _a[a.name] = fv, _a)) }));
33
+ }, f: a, children: undefined })));
34
+ })));
35
+ };
36
+ exports.default = ObjectField;
37
+ //# sourceMappingURL=ObjectField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectField.js","sourceRoot":"","sources":["../../src/components/ObjectField.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAsC;AACtC,6CAAqE;AACrE,gDAA0B;AAE1B,IAAM,WAAW,GAA8B,UAAC,KAAK;;IACzC,IAAA,UAAU,GAAQ,KAAK,WAAb,EAAE,CAAC,GAAK,KAAK,EAAV,CAAW;IAChC,UAAU,CAAC,KAAK,KAAhB,UAAU,CAAC,KAAK,GAAK,EAAE,EAAC;IACxB,IAAM,EAAE,GAAG,UAAU,CAAC,KAAoC,CAAC;IAC3D,OAAO,CACH,8BAAC,gBAAK,IAAC,EAAE,EAAE,CAAC,IACP,MAAA,CAAC,CAAC,IAAI,0CACD,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC;QACR,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC,EACA,GAAG,CAAC,UAAC,CAAC;;QACH,EAAE,MAAC,CAAC,CAAC,IAAI,MAAT,EAAE,OAAa,EAAE,IAAI,EAAE,CAAC,EAAE,EAAC;QAC3B,OAAO,CACH,8BAAC,uBAAQ,eACD,KAAK,IACT,WAAW,EAAE,UAAG,KAAK,CAAC,WAAW,cAAI,CAAC,CAAC,IAAI,CAAE,EAC7C,GAAG,EAAE,CAAC,CAAC,IAAI,EACX,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EACtB,QAAQ,EAAE,KAAK,EACf,QAAQ,EAAE,UAAC,EAAE;;gBACT,KAAK,CAAC,QAAQ,uBACP,UAAU,KACb,KAAK,wBACE,EAAE,gBACJ,CAAC,CAAC,IAAI,IAAG,EAAE,UAElB,CAAC;YACP,CAAC,EACD,CAAC,EAAE,CAAC,EACJ,QAAQ,EAAE,SAAS,IACrB,CACL,CAAC;IACN,CAAC,CAAC,CACF,CACX,CAAC;AACN,CAAC,CAAC;AACF,kBAAe,WAAW,CAAC"}
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { PassedFormProps } from 'graphql-form';
3
+ declare const _default: (props: PassedFormProps) => JSX.Element;
4
+ export default _default;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var material_1 = require("@mui/material");
18
+ var react_1 = __importDefault(require("react"));
19
+ exports.default = (function (props) { return (react_1.default.createElement(material_1.TextField, { value: props.formObject.value || '', onChange: function (e) {
20
+ props.onChange(__assign(__assign({}, props.formObject), { value: e.target.value }));
21
+ } })); });
22
+ //# sourceMappingURL=UniversalField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UniversalField.js","sourceRoot":"","sources":["../../src/components/UniversalField.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAA0C;AAE1C,gDAA0B;AAC1B,mBAAe,UAAC,KAAsB,IAAK,OAAA,CACvC,8BAAC,oBAAS,IACN,KAAK,EAAG,KAAK,CAAC,UAAU,CAAC,KAA4B,IAAI,EAAE,EAC3D,QAAQ,EAAE,UAAC,CAAC;QACR,KAAK,CAAC,QAAQ,uBACP,KAAK,CAAC,UAAU,KACnB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,IACvB,CAAC;IACP,CAAC,GACH,CACL,EAV0C,CAU1C,EAAC"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ import { FormLibraryProps } from 'graphql-form';
2
+ import React from 'react';
3
+ declare const MuiForm: React.FC<FormLibraryProps>;
4
+ export default MuiForm;
package/lib/index.js ADDED
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var ArrayField_1 = __importDefault(require("./components/ArrayField"));
18
+ var BooleanField_1 = __importDefault(require("./components/BooleanField"));
19
+ var EnumField_1 = __importDefault(require("./components/EnumField"));
20
+ var FormField_1 = __importDefault(require("./components/FormField"));
21
+ var FormLabel_1 = __importDefault(require("./components/FormLabel"));
22
+ var NullField_1 = __importDefault(require("./components/NullField"));
23
+ var NumberField_1 = __importDefault(require("./components/NumberField"));
24
+ var ObjectField_1 = __importDefault(require("./components/ObjectField"));
25
+ var UniversalField_1 = __importDefault(require("./components/UniversalField"));
26
+ var graphql_form_1 = require("graphql-form");
27
+ var react_1 = __importDefault(require("react"));
28
+ var MuiForm = function (props) {
29
+ return (react_1.default.createElement(graphql_form_1.FormDisplayer, __assign({}, props, { components: {
30
+ ArrayField: ArrayField_1.default,
31
+ BooleanField: BooleanField_1.default,
32
+ EnumField: EnumField_1.default,
33
+ FormField: FormField_1.default,
34
+ FormLabel: FormLabel_1.default,
35
+ NullField: NullField_1.default,
36
+ NumberField: NumberField_1.default,
37
+ ObjectField: ObjectField_1.default,
38
+ UniversalField: UniversalField_1.default,
39
+ } })));
40
+ };
41
+ exports.default = MuiForm;
42
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uEAAiD;AACjD,2EAAqD;AACrD,qEAA+C;AAC/C,qEAA+C;AAC/C,qEAA+C;AAC/C,qEAA+C;AAC/C,yEAAmD;AACnD,yEAAmD;AACnD,+EAAyD;AACzD,6CAA+D;AAC/D,gDAA0B;AAE1B,IAAM,OAAO,GAA+B,UAAC,KAAK;IAC9C,OAAO,CACH,8BAAC,4BAAa,eACN,KAAK,IACT,UAAU,EAAE;YACR,UAAU,EAAE,oBAAU;YACtB,YAAY,EAAE,sBAAY;YAC1B,SAAS,EAAE,mBAAS;YACpB,SAAS,EAAE,mBAAS;YACpB,SAAS,EAAE,mBAAS;YACpB,SAAS,EAAE,mBAAS;YACpB,WAAW,EAAE,qBAAW;YACxB,WAAW,EAAE,qBAAW;YACxB,cAAc,EAAE,wBAAc;SACjC,IACH,CACL,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,OAAO,CAAC"}
package/package.json ADDED
@@ -0,0 +1,36 @@
1
+ {
2
+ "name": "graphql-form-mui",
3
+ "version": "0.0.2",
4
+ "description": "Easy form creation with GraphQL Editor and React",
5
+ "main": "lib/index.js",
6
+ "scripts": {
7
+ "test": "jest",
8
+ "test:watch": "jest --watch",
9
+ "build": "ttsc --build tsconfig.build.json",
10
+ "start": "ttsc --build tsconfig.build.json --watch",
11
+ "lint": "eslint '*/**/*.{js,ts,tsx}' --quiet --fix"
12
+ },
13
+ "types": "lib/index.d.ts",
14
+ "private": false,
15
+ "publishConfig": {
16
+ "access": "public"
17
+ },
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "git+https://github.com/graphql-editor/graphql-form.git"
21
+ },
22
+ "author": "Aexol <aexol@aexol.com> (http://aexol.com)",
23
+ "license": "MIT",
24
+ "homepage": "https://form.graphqleditor.com",
25
+ "peerDependencies": {
26
+ "graphql-form": "*",
27
+ "react": ">=16.8.0",
28
+ "react-dom": ">=16.8.0"
29
+ },
30
+ "dependencies": {
31
+ "@emotion/react": "^11.9.0",
32
+ "@emotion/styled": "^11.8.1",
33
+ "@mui/icons-material": "^5.8.0",
34
+ "@mui/material": "^5.8.0"
35
+ }
36
+ }
@@ -0,0 +1,111 @@
1
+ import { Button, IconButton, Stack } from '@mui/material';
2
+ import { FormObject, FormValue, PassedFormProps, Renderer } from 'graphql-form';
3
+ import { Options, ParserField } from 'graphql-js-tree';
4
+ import React from 'react';
5
+ import { ArrowDownward, ArrowUpward, Close, PlusOne } from '@mui/icons-material';
6
+
7
+ const ArrayField: React.FC<
8
+ PassedFormProps & {
9
+ open?: boolean;
10
+ }
11
+ > = (props) => {
12
+ const { formObject, onChange, f } = props;
13
+ formObject.value ||= [];
14
+ if (f.type.fieldType.type !== Options.array) {
15
+ throw new Error('Invalid Array node');
16
+ }
17
+ const nodeWithoutArray: ParserField = {
18
+ ...f,
19
+ type: {
20
+ ...f.type,
21
+ fieldType: {
22
+ ...f.type.fieldType.nest,
23
+ },
24
+ },
25
+ };
26
+ const formValuePointer = formObject.value as Array<FormValue>;
27
+ return (
28
+ <Stack>
29
+ {formValuePointer.map((v, i: number, all) => {
30
+ formValuePointer[i] ||= { node: nodeWithoutArray };
31
+ return (
32
+ <Stack key={f.name + i}>
33
+ <Renderer
34
+ key={i}
35
+ {...props}
36
+ f={{
37
+ ...nodeWithoutArray,
38
+ name: `${nodeWithoutArray.name}[${i}]`,
39
+ }}
40
+ onChange={(e) => {
41
+ formValuePointer[i] = e;
42
+ onChange({
43
+ ...formObject,
44
+ value: formValuePointer,
45
+ });
46
+ }}
47
+ formObject={v as FormObject}
48
+ >
49
+ <Stack direction="row">
50
+ <IconButton
51
+ onClick={() => {
52
+ onChange({
53
+ ...formObject,
54
+ value: formValuePointer.filter((_, index) => i !== index),
55
+ });
56
+ }}
57
+ >
58
+ <Close />
59
+ </IconButton>
60
+ {i !== 0 && (
61
+ <IconButton
62
+ onClick={() => {
63
+ const switched = v;
64
+ formValuePointer[i] = formValuePointer[i - 1];
65
+ formValuePointer[i - 1] = switched;
66
+ onChange({
67
+ ...formObject,
68
+ value: formValuePointer,
69
+ });
70
+ }}
71
+ >
72
+ <ArrowUpward />
73
+ </IconButton>
74
+ )}
75
+ {i !== all.length - 1 && (
76
+ <IconButton
77
+ onClick={() => {
78
+ const switched = v;
79
+ formValuePointer[i] = formValuePointer[i + 1];
80
+ formValuePointer[i + 1] = switched;
81
+ onChange({
82
+ ...formObject,
83
+ value: formValuePointer,
84
+ });
85
+ }}
86
+ >
87
+ <ArrowDownward />
88
+ </IconButton>
89
+ )}
90
+ </Stack>
91
+ </Renderer>
92
+ </Stack>
93
+ );
94
+ })}
95
+
96
+ <Button
97
+ onClick={() => {
98
+ formValuePointer.push({});
99
+ onChange({
100
+ ...formObject,
101
+ value: formValuePointer,
102
+ });
103
+ }}
104
+ endIcon={<PlusOne />}
105
+ >
106
+ {`Add ${f.name}`}
107
+ </Button>
108
+ </Stack>
109
+ );
110
+ };
111
+ export default ArrayField;
@@ -0,0 +1,24 @@
1
+ import { Checkbox, FormControlLabel, FormGroup } from '@mui/material';
2
+ import { PassedFormProps } from 'graphql-form';
3
+ import React from 'react';
4
+ export default ({ f, formObject, onChange }: PassedFormProps) => {
5
+ const value = formObject.value as boolean | undefined;
6
+ return (
7
+ <FormGroup>
8
+ <FormControlLabel
9
+ control={
10
+ <Checkbox
11
+ value={value}
12
+ onChange={() =>
13
+ onChange({
14
+ ...formObject,
15
+ value: value === true ? undefined : true,
16
+ })
17
+ }
18
+ />
19
+ }
20
+ label={f.name}
21
+ />
22
+ </FormGroup>
23
+ );
24
+ };
@@ -0,0 +1,31 @@
1
+ import { MenuItem, Select } from '@mui/material';
2
+ import { PassedFormProps } from 'graphql-form';
3
+ import { getTypeName } from 'graphql-js-tree';
4
+ import React from 'react';
5
+ export default ({ nodes, onChange, formObject, f }: PassedFormProps) => {
6
+ const seekNode = nodes.find((n) => n.name === getTypeName(f.type.fieldType));
7
+ if (!seekNode) {
8
+ throw new Error('Invalid enum field');
9
+ }
10
+ const options =
11
+ seekNode.args?.map(({ name: label }) => ({
12
+ label,
13
+ value: label,
14
+ })) || [];
15
+ return (
16
+ <Select
17
+ placeholder={f.name}
18
+ value={formObject.value as string | undefined}
19
+ onChange={(e) => {
20
+ onChange({
21
+ ...formObject,
22
+ value: e.target.value,
23
+ });
24
+ }}
25
+ >
26
+ {options.map((o) => (
27
+ <MenuItem value={o.value}>{o.label}</MenuItem>
28
+ ))}
29
+ </Select>
30
+ );
31
+ };
@@ -0,0 +1,5 @@
1
+ import { PassedFormProps } from 'graphql-form';
2
+ import React from 'react';
3
+ const FormField: React.FC<PassedFormProps> = ({ children }) => <div>{children}</div>;
4
+
5
+ export default FormField;
@@ -0,0 +1,9 @@
1
+ import { PassedFormProps } from 'graphql-form';
2
+ import React from 'react';
3
+ const FormLabel: React.FC<PassedFormProps> = (props) => (
4
+ <div>
5
+ {props.f.name} {props.children}
6
+ </div>
7
+ );
8
+
9
+ export default FormLabel;
@@ -0,0 +1,2 @@
1
+ import React from 'react';
2
+ export default () => <div>No value</div>;
@@ -0,0 +1,15 @@
1
+ import { TextField } from '@mui/material';
2
+ import { PassedFormProps } from 'graphql-form';
3
+ import React from 'react';
4
+ export default (props: PassedFormProps) => (
5
+ <TextField
6
+ type="number"
7
+ value={(props.formObject.value as string | undefined) || ''}
8
+ onChange={(e) => {
9
+ props.onChange({
10
+ ...props.formObject,
11
+ value: e.target.value,
12
+ });
13
+ }}
14
+ />
15
+ );
@@ -0,0 +1,41 @@
1
+ import { Stack } from '@mui/material';
2
+ import { PassedFormProps, FormObject, Renderer } from 'graphql-form';
3
+ import React from 'react';
4
+
5
+ const ObjectField: React.FC<PassedFormProps> = (props) => {
6
+ const { formObject, f } = props;
7
+ formObject.value ||= {};
8
+ const fV = formObject.value as { [x: string]: FormObject };
9
+ return (
10
+ <Stack pl={4}>
11
+ {f.args
12
+ ?.sort((a, b) => {
13
+ return b.name > a.name ? -1 : 1;
14
+ })
15
+ .map((a) => {
16
+ fV[a.name] ||= { node: a };
17
+ return (
18
+ <Renderer
19
+ {...props}
20
+ currentPath={`${props.currentPath}.${a.name}`}
21
+ key={a.name}
22
+ formObject={fV[a.name]}
23
+ required={false}
24
+ onChange={(fv) => {
25
+ props.onChange({
26
+ ...formObject,
27
+ value: {
28
+ ...fV,
29
+ [a.name]: fv,
30
+ },
31
+ });
32
+ }}
33
+ f={a}
34
+ children={undefined}
35
+ />
36
+ );
37
+ })}
38
+ </Stack>
39
+ );
40
+ };
41
+ export default ObjectField;
@@ -0,0 +1,14 @@
1
+ import { TextField } from '@mui/material';
2
+ import { PassedFormProps } from 'graphql-form';
3
+ import React from 'react';
4
+ export default (props: PassedFormProps) => (
5
+ <TextField
6
+ value={(props.formObject.value as string | undefined) || ''}
7
+ onChange={(e) => {
8
+ props.onChange({
9
+ ...props.formObject,
10
+ value: e.target.value,
11
+ });
12
+ }}
13
+ />
14
+ );
package/src/index.tsx ADDED
@@ -0,0 +1,32 @@
1
+ import ArrayField from '@/components/ArrayField';
2
+ import BooleanField from '@/components/BooleanField';
3
+ import EnumField from '@/components/EnumField';
4
+ import FormField from '@/components/FormField';
5
+ import FormLabel from '@/components/FormLabel';
6
+ import NullField from '@/components/NullField';
7
+ import NumberField from '@/components/NumberField';
8
+ import ObjectField from '@/components/ObjectField';
9
+ import UniversalField from '@/components/UniversalField';
10
+ import { FormDisplayer, FormLibraryProps } from 'graphql-form';
11
+ import React from 'react';
12
+
13
+ const MuiForm: React.FC<FormLibraryProps> = (props) => {
14
+ return (
15
+ <FormDisplayer
16
+ {...props}
17
+ components={{
18
+ ArrayField: ArrayField,
19
+ BooleanField: BooleanField,
20
+ EnumField: EnumField,
21
+ FormField: FormField,
22
+ FormLabel: FormLabel,
23
+ NullField: NullField,
24
+ NumberField: NumberField,
25
+ ObjectField: ObjectField,
26
+ UniversalField: UniversalField,
27
+ }}
28
+ />
29
+ );
30
+ };
31
+
32
+ export default MuiForm;
@@ -0,0 +1,36 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es5" /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */,
4
+ "module": "commonjs" /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */,
5
+ "jsx": "react" /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */,
6
+ "declaration": true /* Generates corresponding '.d.ts' file. */,
7
+
8
+ "sourceMap": true /* Generates corresponding '.map' file. */,
9
+
10
+ "outDir": "./lib" /* Redirect output structure to the directory. */,
11
+ "rootDir": "./src" /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */,
12
+
13
+ "isolatedModules": true /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */,
14
+
15
+ "strict": true /* Enable all strict type-checking options. */,
16
+
17
+ "baseUrl": "./src" /* Base directory to resolve non-absolute module names. */,
18
+ "paths": {
19
+ "@/*": ["./*"]
20
+ } /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */,
21
+
22
+ "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */,
23
+ "skipLibCheck": true /* Skip type checking of declaration files. */,
24
+ "forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */,
25
+ "plugins": [
26
+ {
27
+ "transform": "typescript-transform-paths"
28
+ },
29
+ {
30
+ "transform": "typescript-transform-paths",
31
+ "afterDeclarations": true
32
+ }
33
+ ]
34
+ },
35
+ "exclude": ["**/__tests__/*", "**/__sandbox__/*", "./lib", "node_modules"]
36
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,20 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es5" /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */,
4
+ "module": "commonjs" /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */,
5
+ "jsx": "react" /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */,
6
+ "sourceMap": true /* Generates corresponding '.map' file. */,
7
+ "rootDir": "./src" /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */,
8
+ "isolatedModules": true /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */,
9
+ "strict": true /* Enable all strict type-checking options. */,
10
+ "baseUrl": "./src" /* Base directory to resolve non-absolute module names. */,
11
+ "outDir": "./lib",
12
+ "paths": {
13
+ "@/*": ["./*"]
14
+ } /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */,
15
+ "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */,
16
+ "skipLibCheck": true /* Skip type checking of declaration files. */,
17
+ "forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */,
18
+ "composite": true
19
+ }
20
+ }