@allthings/structured-ticket-form 2.0.0 → 3.0.0-beta.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/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/jsonFormUtils.d.ts +8 -0
- package/lib/jsonFormUtils.js +183 -0
- package/lib/jsonFormUtils.js.map +1 -0
- package/lib/models.d.ts +2 -1
- package/lib/models.js.map +1 -1
- package/lib/translator.js +5 -4
- package/lib/translator.js.map +1 -1
- package/package.json +3 -1
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -12,4 +12,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
__exportStar(require("./components"), exports);
|
|
14
14
|
__exportStar(require("./models"), exports);
|
|
15
|
+
__exportStar(require("./jsonFormUtils"), exports);
|
|
15
16
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA4B;AAC5B,2CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA4B;AAC5B,2CAAwB;AACxB,kDAA+B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { JSONSchema7 } from 'json-schema';
|
|
2
|
+
interface StFormResponse {
|
|
3
|
+
titleContent: string;
|
|
4
|
+
responseContent: string;
|
|
5
|
+
key: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const getAnswers: (formData: Record<string, unknown>, schema: JSONSchema7, localLanguage: string) => Array<StFormResponse>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
|
+
if (ar || !(i in from)) {
|
|
5
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
6
|
+
ar[i] = from[i];
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.getAnswers = void 0;
|
|
13
|
+
var isArray = function (value) {
|
|
14
|
+
return Object.prototype.hasOwnProperty.call(value, 'push');
|
|
15
|
+
};
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
17
|
+
var getByPath = function (obj, path) {
|
|
18
|
+
return path.reduce(function (acc, item) {
|
|
19
|
+
if (!acc ||
|
|
20
|
+
typeof acc !== 'object' ||
|
|
21
|
+
!Object.prototype.hasOwnProperty.call(acc, item)) {
|
|
22
|
+
return undefined;
|
|
23
|
+
}
|
|
24
|
+
return acc[item];
|
|
25
|
+
}, obj);
|
|
26
|
+
};
|
|
27
|
+
var dereference = function (ref, schema) {
|
|
28
|
+
if (typeof ref === 'object' &&
|
|
29
|
+
typeof ref.$ref === 'string' &&
|
|
30
|
+
ref.$ref.indexOf('#/') === 0) {
|
|
31
|
+
var path = ref.$ref.slice(2).split('/');
|
|
32
|
+
return getByPath(schema, path);
|
|
33
|
+
}
|
|
34
|
+
return ref;
|
|
35
|
+
};
|
|
36
|
+
var collectObjectPaths = function (obj, path) {
|
|
37
|
+
if (path === void 0) { path = []; }
|
|
38
|
+
var entries = Object.entries(obj);
|
|
39
|
+
return entries.reduce(function (acc, item) {
|
|
40
|
+
var key = item[0], value = item[1];
|
|
41
|
+
if (typeof value === 'object' && value !== null) {
|
|
42
|
+
return __spreadArray(__spreadArray(__spreadArray([], acc, true), [
|
|
43
|
+
__spreadArray(__spreadArray([], path, true), [key], false)
|
|
44
|
+
], false), collectObjectPaths(value, __spreadArray(__spreadArray([], path, true), [key], false)), true);
|
|
45
|
+
}
|
|
46
|
+
return __spreadArray(__spreadArray([], acc, true), [__spreadArray(__spreadArray([], path, true), [key], false)], false);
|
|
47
|
+
}, []);
|
|
48
|
+
};
|
|
49
|
+
var findInProperties = function (path, schema, fullSchema) {
|
|
50
|
+
var _a, _b;
|
|
51
|
+
if ((_a = schema === null || schema === void 0 ? void 0 : schema.properties) === null || _a === void 0 ? void 0 : _a[path[0]]) {
|
|
52
|
+
return dereference((_b = schema === null || schema === void 0 ? void 0 : schema.properties) === null || _b === void 0 ? void 0 : _b[path[0]], fullSchema);
|
|
53
|
+
}
|
|
54
|
+
return null;
|
|
55
|
+
};
|
|
56
|
+
var findInSchema = function (path, schema, fullSchema) {
|
|
57
|
+
var prop = findInProperties(path, schema, fullSchema);
|
|
58
|
+
if (prop) {
|
|
59
|
+
return prop;
|
|
60
|
+
}
|
|
61
|
+
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
62
|
+
var dep = findInDeps(path, schema, fullSchema);
|
|
63
|
+
if (dep) {
|
|
64
|
+
return dep;
|
|
65
|
+
}
|
|
66
|
+
return null;
|
|
67
|
+
};
|
|
68
|
+
var findDefinition = function (path, schema, fullSchema) {
|
|
69
|
+
var found = findInSchema(path, schema, fullSchema);
|
|
70
|
+
if (found) {
|
|
71
|
+
if (path.length > 1) {
|
|
72
|
+
return findDefinition(path.slice(1), found, fullSchema);
|
|
73
|
+
}
|
|
74
|
+
return found;
|
|
75
|
+
}
|
|
76
|
+
return null;
|
|
77
|
+
};
|
|
78
|
+
var isJsonSchema = function (value) {
|
|
79
|
+
return value && !isArray(value) && typeof value !== 'boolean';
|
|
80
|
+
};
|
|
81
|
+
var findInDeps = function (path, schema, fullSchema) {
|
|
82
|
+
var _a;
|
|
83
|
+
var list = Object.entries((_a = schema === null || schema === void 0 ? void 0 : schema.dependencies) !== null && _a !== void 0 ? _a : {}).reduce(function (acc, item) {
|
|
84
|
+
var _a, _b;
|
|
85
|
+
var value = item[1];
|
|
86
|
+
if (!isJsonSchema(value)) {
|
|
87
|
+
return __spreadArray([], acc, true);
|
|
88
|
+
}
|
|
89
|
+
var oneOf = (_b = (_a = value.oneOf) === null || _a === void 0 ? void 0 : _a.filter(isJsonSchema)) !== null && _b !== void 0 ? _b : [];
|
|
90
|
+
return __spreadArray(__spreadArray([], acc, true), (oneOf !== null && oneOf !== void 0 ? oneOf : []), true);
|
|
91
|
+
}, []);
|
|
92
|
+
var foundElement = list.find(function (item) {
|
|
93
|
+
return findInSchema(path, item, fullSchema);
|
|
94
|
+
});
|
|
95
|
+
var found = foundElement
|
|
96
|
+
? findInSchema(path, foundElement, fullSchema)
|
|
97
|
+
: null;
|
|
98
|
+
if (found) {
|
|
99
|
+
return dereference(found, fullSchema);
|
|
100
|
+
}
|
|
101
|
+
return null;
|
|
102
|
+
};
|
|
103
|
+
var booleanInLanguages = {
|
|
104
|
+
en_US: {
|
|
105
|
+
true: 'true',
|
|
106
|
+
false: 'false',
|
|
107
|
+
},
|
|
108
|
+
fr_FR: {
|
|
109
|
+
true: 'vraie',
|
|
110
|
+
false: 'faux',
|
|
111
|
+
},
|
|
112
|
+
de_DE: {
|
|
113
|
+
true: 'wahr',
|
|
114
|
+
false: 'falsch',
|
|
115
|
+
},
|
|
116
|
+
pt_PT: {
|
|
117
|
+
true: 'verdadeira',
|
|
118
|
+
false: 'falsa',
|
|
119
|
+
},
|
|
120
|
+
nl_NL: {
|
|
121
|
+
true: 'waar',
|
|
122
|
+
false: 'false',
|
|
123
|
+
},
|
|
124
|
+
it_IT: {
|
|
125
|
+
true: 'vera',
|
|
126
|
+
false: 'falsa',
|
|
127
|
+
},
|
|
128
|
+
};
|
|
129
|
+
var convertValue = function (value, type, localLanguage) {
|
|
130
|
+
var _a, _b;
|
|
131
|
+
switch (type) {
|
|
132
|
+
case 'string': {
|
|
133
|
+
return value;
|
|
134
|
+
}
|
|
135
|
+
case 'number': {
|
|
136
|
+
return value.toString();
|
|
137
|
+
}
|
|
138
|
+
case 'boolean': {
|
|
139
|
+
var val = value === true || value === 'true';
|
|
140
|
+
return ((_b = (_a = booleanInLanguages === null || booleanInLanguages === void 0 ? void 0 : booleanInLanguages[localLanguage]) === null || _a === void 0 ? void 0 : _a[val.toString()]) !== null && _b !== void 0 ? _b : val.toString());
|
|
141
|
+
}
|
|
142
|
+
default: {
|
|
143
|
+
return null;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
var getTypeName = function (type) {
|
|
148
|
+
if (typeof type === 'string') {
|
|
149
|
+
return type;
|
|
150
|
+
}
|
|
151
|
+
if (isArray(type) && type.length > 0) {
|
|
152
|
+
return type[0];
|
|
153
|
+
}
|
|
154
|
+
return undefined;
|
|
155
|
+
};
|
|
156
|
+
var isStFormResponse = function (value) {
|
|
157
|
+
return (typeof value === 'object' &&
|
|
158
|
+
value !== null &&
|
|
159
|
+
value.titleContent &&
|
|
160
|
+
value.key &&
|
|
161
|
+
value.responseContent);
|
|
162
|
+
};
|
|
163
|
+
var getAnswers = function (formData, schema, localLanguage) {
|
|
164
|
+
return collectObjectPaths(formData)
|
|
165
|
+
.map(function (path) { return ({
|
|
166
|
+
path: path,
|
|
167
|
+
definition: findDefinition(path, schema, schema),
|
|
168
|
+
}); })
|
|
169
|
+
.map(function (item) {
|
|
170
|
+
if (item.definition) {
|
|
171
|
+
var responseContent = convertValue(getByPath(formData, item.path), getTypeName(item.definition.type), localLanguage);
|
|
172
|
+
return {
|
|
173
|
+
titleContent: item.definition.title,
|
|
174
|
+
key: item.path.join('.'),
|
|
175
|
+
responseContent: responseContent,
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
return undefined;
|
|
179
|
+
})
|
|
180
|
+
.filter(isStFormResponse);
|
|
181
|
+
};
|
|
182
|
+
exports.getAnswers = getAnswers;
|
|
183
|
+
//# sourceMappingURL=jsonFormUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonFormUtils.js","sourceRoot":"","sources":["../src/jsonFormUtils.ts"],"names":[],"mappings":"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"}
|
package/lib/models.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { FormProps } from '@rjsf/core';
|
|
3
3
|
import { JSONSchema7 } from 'json-schema';
|
|
4
|
+
import { UiSchema } from 'react-jsonschema-form';
|
|
4
5
|
export declare type validatorStatus = 'JSON' | 'Translator';
|
|
5
6
|
export declare enum EditorTab {
|
|
6
7
|
JSON = "JSON",
|
|
@@ -17,7 +18,7 @@ export interface LanguageDisplay {
|
|
|
17
18
|
}
|
|
18
19
|
export interface FullFormSchema {
|
|
19
20
|
[EditorTab.JSON]: JSONSchema7;
|
|
20
|
-
[EditorTab.UI]:
|
|
21
|
+
[EditorTab.UI]: UiSchema;
|
|
21
22
|
[EditorTab.TRANSLATION]: Record<string, string>;
|
|
22
23
|
}
|
|
23
24
|
export interface EditorState {
|
package/lib/models.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":";;;AAMA,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,0BAAa,CAAA;IACb,sBAAS,CAAA;IACT,wCAA2B,CAAA;AAC7B,CAAC,EAJW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAIpB"}
|
package/lib/translator.js
CHANGED
|
@@ -17,7 +17,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
exports.translateSchema = void 0;
|
|
18
18
|
var lodash_1 = __importDefault(require("lodash"));
|
|
19
19
|
var getDefaultTitle = function (name) { return name && name.replace(/[_-]/g, ' '); };
|
|
20
|
-
var getTypeScope = function (typeName) {
|
|
20
|
+
var getTypeScope = function (scope, typeName) {
|
|
21
|
+
return scope + ".types." + typeName;
|
|
22
|
+
};
|
|
21
23
|
var getPropScope = function (scope, propName) {
|
|
22
24
|
return scope + ".fields." + propName;
|
|
23
25
|
};
|
|
@@ -38,7 +40,7 @@ function translateSchema(schema, scope, messages, name) {
|
|
|
38
40
|
}));
|
|
39
41
|
if (schema.definitions) {
|
|
40
42
|
newSchema.definitions = lodash_1.default.mapValues(schema.definitions, function (typeSchema, typeName) {
|
|
41
|
-
return translateSchema(typeSchema, getTypeScope(typeName), messages, typeName);
|
|
43
|
+
return translateSchema(typeSchema, getTypeScope(scope, typeName), messages, typeName);
|
|
42
44
|
});
|
|
43
45
|
}
|
|
44
46
|
if (schema.type === 'object') {
|
|
@@ -46,8 +48,7 @@ function translateSchema(schema, scope, messages, name) {
|
|
|
46
48
|
return translateSchema(propSchema, getPropScope(scope, propName), messages, propName);
|
|
47
49
|
});
|
|
48
50
|
}
|
|
49
|
-
if (schema.enum
|
|
50
|
-
(!schema.enumNames || lodash_1.default.isEqual(schema.enum, schema.enumNames))) {
|
|
51
|
+
if (schema.enum) {
|
|
51
52
|
newSchema.enumNames = schema.enum.map(function (option) {
|
|
52
53
|
return lodash_1.default.defaultTo(messages[scope + ".options." + option], option);
|
|
53
54
|
});
|
package/lib/translator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translator.js","sourceRoot":"","sources":["../src/translator.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,kDAAsB;AACtB,IAAM,eAAe,GAAG,UAAC,IAAY,IAAK,OAAA,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAlC,CAAkC,CAAA;AAC5E,IAAM,YAAY,GAAG,UAAC,QAAgB,
|
|
1
|
+
{"version":3,"file":"translator.js","sourceRoot":"","sources":["../src/translator.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,kDAAsB;AACtB,IAAM,eAAe,GAAG,UAAC,IAAY,IAAK,OAAA,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAlC,CAAkC,CAAA;AAC5E,IAAM,YAAY,GAAG,UAAC,KAAa,EAAE,QAAgB;IACnD,OAAG,KAAK,eAAU,QAAU;AAA5B,CAA4B,CAAA;AAC9B,IAAM,YAAY,GAAG,UAAC,KAAa,EAAE,QAAgB;IACnD,OAAG,KAAK,gBAAW,QAAU;AAA7B,CAA6B,CAAA;AAE/B,mFAAmF;AACnF,iCAAiC;AACjC,0FAA0F;AAC1F,wDAAwD;AACxD,qEAAqE;AACrE,SAAgB,eAAe,CAC7B,MAA8C,EAC9C,KAAa,EACb,QAAiC,EACjC,IAAa;;IAEb,IAAM,SAAS,GAAG,sBACb,MAAM,GACN,gBAAC,CAAC,MAAM,CAAC;QACV,KAAK,EACH,QAAQ,CAAC,KAAK,CAAC;YACf,QAAQ,CAAI,KAAK,WAAQ,CAAC;YAC1B,MAAM,CAAC,KAAK;YACZ,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5D,WAAW,EAAE,QAAQ,CAAI,KAAK,iBAAc,CAAC,IAAI,MAAM,CAAC,WAAW;QACnE,IAAI,EAAE,QAAQ,CAAI,KAAK,UAAO,CAAC;KAChC,CAAC,CACuC,CAAA;IAE3C,IAAI,MAAM,CAAC,WAAW,EAAE;QACtB,SAAS,CAAC,WAAW,GAAG,gBAAC,CAAC,SAAS,CACjC,MAAM,CAAC,WAAW,EAClB,UAAC,UAAe,EAAE,QAAgB;YAChC,OAAO,eAAe,CACpB,UAAU,EACV,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,EAC7B,QAAQ,EACR,QAAQ,CACT,CAAA;QACH,CAAC,CACF,CAAA;KACF;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;QAC5B,SAAS,CAAC,UAAU,GAAG,gBAAC,CAAC,SAAS,CAChC,MAAM,CAAC,UAAU,EACjB,UAAC,UAAe,EAAE,QAAgB;YAChC,OAAA,eAAe,CACb,UAAU,EACV,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,EAC7B,QAAQ,EACR,QAAQ,CACT;QALD,CAKC,CACJ,CAAA;KACF;IAED,IAAI,MAAM,CAAC,IAAI,EAAE;QACf,SAAS,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,MAAW;YAChD,OAAO,gBAAC,CAAC,SAAS,CAAC,QAAQ,CAAI,KAAK,iBAAY,MAAQ,CAAC,EAAE,MAAM,CAAC,CAAA;QACpE,CAAC,CAAC,CAAA;KACH;IAED,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE;QAC3C,IAAM,EAAE,GAAG,MAAM,CAAC,KAA+C,CAAA;QACjE,IAAM,GAAG,GAAG,SAAS,CAAC,KAAkB,CAAA;QACxC,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE;YAC5B,IAAM,SAAS,GAAG,MAAA,EAAE,CAAC,IAAI,0CAAE,GAAG,CAC5B,UAAC,EAAE,IAAK,OAAA,QAAQ,CAAI,KAAK,iBAAY,EAAI,CAAC,KAAI,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,QAAQ,EAAE,CAAA,EAApD,CAAoD,CAC7D,CAAA;YACD,SAAS,CAAC,KAAK,GAAG,sBACb,GAAG,KACN,SAAS,WAAA,GACG,CAAA;SACf;aAAM,IAAI,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,IAAI,KAAK,QAAQ,EAAE;YAChD,SAAS,CAAC,KAAK,yBACV,GAAG,KACN,UAAU,EAAE,gBAAC,CAAC,SAAS,CACrB,EAAE,CAAC,UAAU,EACb,UAAC,UAAe,EAAE,QAAgB;oBAChC,OAAA,eAAe,CACb,UAAU,EACV,YAAY,CAAC,KAAK,EAAE,QAAQ,CAAC,EAC7B,QAAQ,EACR,QAAQ,CACT;gBALD,CAKC,CACJ,GACF,CAAA;SACF;KACF;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AAjFD,0CAiFC;AAED,qJAAqJ;AACrJ,6JAA6J;AAC7J,uIAAuI;AACvI,qBAAqB;AACrB,2CAA2C;AAC3C,iDAAiD;AACjD,gDAAgD;AAChD,kEAAkE;AAClE,uDAAuD;AACvD,6DAA6D;AAC7D,wDAAwD;AACxD,4DAA4D;AAC5D,0DAA0D;AAC1D,wCAAwC;AACxC,+CAA+C;AAC/C,+CAA+C;AAC/C,oDAAoD;AACpD,KAAK"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@allthings/structured-ticket-form",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0-beta.0",
|
|
4
4
|
"description": "Simple component to create and edit jsonSchemaForm with possibility to adding translated fields and custom UISchema.",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"private": false,
|
|
@@ -37,6 +37,7 @@
|
|
|
37
37
|
"@types/lodash": "4.14.175",
|
|
38
38
|
"@types/react": "17.0.30",
|
|
39
39
|
"@types/react-dom": "17.0.10",
|
|
40
|
+
"@types/react-jsonschema-form": "1.7.7",
|
|
40
41
|
"@types/styled-components": "5.1.15",
|
|
41
42
|
"@typescript-eslint/eslint-plugin": "4.33.0",
|
|
42
43
|
"@typescript-eslint/parser": "4.33.0",
|
|
@@ -74,6 +75,7 @@
|
|
|
74
75
|
"@rjsf/material-ui": "^3.2.0",
|
|
75
76
|
"json-schema": "^0.3.0",
|
|
76
77
|
"lodash": "^4.17.21",
|
|
78
|
+
"react-jsonschema-form": "^1.8.1",
|
|
77
79
|
"styled-components": "^5.3.3"
|
|
78
80
|
},
|
|
79
81
|
"commitlint": {
|