@react-typed-forms/schemas 1.0.0-dev.17 → 1.0.0-dev.18
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/.rush/temp/operation/build/state.json +1 -1
- package/.rush/temp/shrinkwrap-deps.json +5 -1
- package/lib/controlRender.d.ts +126 -100
- package/lib/hooks.d.ts +10 -9
- package/lib/index.d.ts +7 -5
- package/lib/index.js +1003 -89
- package/lib/index.js.map +1 -1
- package/lib/renderers.d.ts +153 -0
- package/lib/schemaBuilder.d.ts +87 -87
- package/lib/tailwind.d.ts +2 -0
- package/lib/types.d.ts +272 -234
- package/lib/util.d.ts +6 -3
- package/package.json +9 -5
- package/src/controlRender.tsx +183 -176
- package/src/hooks.tsx +425 -0
- package/src/index.ts +2 -0
- package/src/renderers.tsx +855 -0
- package/src/tailwind.tsx +21 -0
- package/src/types.ts +56 -9
- package/src/util.ts +5 -1
- package/src/hooks.ts +0 -173
package/lib/index.js
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
var React = require('react');
|
|
2
2
|
var core = require('@react-typed-forms/core');
|
|
3
|
+
var jsonata = require('jsonata');
|
|
4
|
+
var clsx = require('clsx');
|
|
3
5
|
|
|
4
6
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
5
7
|
|
|
6
8
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
9
|
+
var jsonata__default = /*#__PURE__*/_interopDefaultLegacy(jsonata);
|
|
10
|
+
var clsx__default = /*#__PURE__*/_interopDefaultLegacy(clsx);
|
|
7
11
|
|
|
8
12
|
function _extends() {
|
|
9
13
|
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
@@ -19,6 +23,49 @@ function _extends() {
|
|
|
19
23
|
};
|
|
20
24
|
return _extends.apply(this, arguments);
|
|
21
25
|
}
|
|
26
|
+
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
27
|
+
if (source == null) return {};
|
|
28
|
+
var target = {};
|
|
29
|
+
var sourceKeys = Object.keys(source);
|
|
30
|
+
var key, i;
|
|
31
|
+
for (i = 0; i < sourceKeys.length; i++) {
|
|
32
|
+
key = sourceKeys[i];
|
|
33
|
+
if (excluded.indexOf(key) >= 0) continue;
|
|
34
|
+
target[key] = source[key];
|
|
35
|
+
}
|
|
36
|
+
return target;
|
|
37
|
+
}
|
|
38
|
+
function _unsupportedIterableToArray(o, minLen) {
|
|
39
|
+
if (!o) return;
|
|
40
|
+
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
|
|
41
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
42
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
43
|
+
if (n === "Map" || n === "Set") return Array.from(o);
|
|
44
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
|
|
45
|
+
}
|
|
46
|
+
function _arrayLikeToArray(arr, len) {
|
|
47
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
48
|
+
for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
|
|
49
|
+
return arr2;
|
|
50
|
+
}
|
|
51
|
+
function _createForOfIteratorHelperLoose(o, allowArrayLike) {
|
|
52
|
+
var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
|
|
53
|
+
if (it) return (it = it.call(o)).next.bind(it);
|
|
54
|
+
if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
|
|
55
|
+
if (it) o = it;
|
|
56
|
+
var i = 0;
|
|
57
|
+
return function () {
|
|
58
|
+
if (i >= o.length) return {
|
|
59
|
+
done: true
|
|
60
|
+
};
|
|
61
|
+
return {
|
|
62
|
+
done: false,
|
|
63
|
+
value: o[i++]
|
|
64
|
+
};
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
68
|
+
}
|
|
22
69
|
|
|
23
70
|
exports.FieldType = void 0;
|
|
24
71
|
(function (FieldType) {
|
|
@@ -52,10 +99,18 @@ exports.ExpressionType = void 0;
|
|
|
52
99
|
ExpressionType["FieldValue"] = "FieldValue";
|
|
53
100
|
ExpressionType["UserMatch"] = "UserMatch";
|
|
54
101
|
})(exports.ExpressionType || (exports.ExpressionType = {}));
|
|
102
|
+
exports.AdornmentPlacement = void 0;
|
|
103
|
+
(function (AdornmentPlacement) {
|
|
104
|
+
AdornmentPlacement["ControlStart"] = "ControlStart";
|
|
105
|
+
AdornmentPlacement["ControlEnd"] = "ControlEnd";
|
|
106
|
+
AdornmentPlacement["LabelStart"] = "LabelStart";
|
|
107
|
+
AdornmentPlacement["LabelEnd"] = "LabelEnd";
|
|
108
|
+
})(exports.AdornmentPlacement || (exports.AdornmentPlacement = {}));
|
|
55
109
|
exports.ControlAdornmentType = void 0;
|
|
56
110
|
(function (ControlAdornmentType) {
|
|
57
111
|
ControlAdornmentType["Tooltip"] = "Tooltip";
|
|
58
112
|
ControlAdornmentType["Accordion"] = "Accordion";
|
|
113
|
+
ControlAdornmentType["HelpText"] = "HelpText";
|
|
59
114
|
})(exports.ControlAdornmentType || (exports.ControlAdornmentType = {}));
|
|
60
115
|
exports.DataRenderType = void 0;
|
|
61
116
|
(function (DataRenderType) {
|
|
@@ -68,6 +123,8 @@ exports.DataRenderType = void 0;
|
|
|
68
123
|
DataRenderType["Synchronised"] = "Synchronised";
|
|
69
124
|
DataRenderType["IconSelector"] = "IconSelector";
|
|
70
125
|
DataRenderType["DateTime"] = "DateTime";
|
|
126
|
+
DataRenderType["Checkbox"] = "Checkbox";
|
|
127
|
+
DataRenderType["Dropdown"] = "Dropdown";
|
|
71
128
|
})(exports.DataRenderType || (exports.DataRenderType = {}));
|
|
72
129
|
exports.SyncTextType = void 0;
|
|
73
130
|
(function (SyncTextType) {
|
|
@@ -86,6 +143,16 @@ exports.DisplayDataType = void 0;
|
|
|
86
143
|
DisplayDataType["Text"] = "Text";
|
|
87
144
|
DisplayDataType["Html"] = "Html";
|
|
88
145
|
})(exports.DisplayDataType || (exports.DisplayDataType = {}));
|
|
146
|
+
exports.ValidatorType = void 0;
|
|
147
|
+
(function (ValidatorType) {
|
|
148
|
+
ValidatorType["Jsonata"] = "Jsonata";
|
|
149
|
+
ValidatorType["Date"] = "Date";
|
|
150
|
+
})(exports.ValidatorType || (exports.ValidatorType = {}));
|
|
151
|
+
exports.DateComparison = void 0;
|
|
152
|
+
(function (DateComparison) {
|
|
153
|
+
DateComparison["NotBefore"] = "NotBefore";
|
|
154
|
+
DateComparison["NotAfter"] = "NotAfter";
|
|
155
|
+
})(exports.DateComparison || (exports.DateComparison = {}));
|
|
89
156
|
function isDataControlDefinition(x) {
|
|
90
157
|
return x.type === exports.ControlDefinitionType.Data;
|
|
91
158
|
}
|
|
@@ -131,6 +198,9 @@ function visibility(expr) {
|
|
|
131
198
|
expr: expr
|
|
132
199
|
};
|
|
133
200
|
}
|
|
201
|
+
function isGridRenderer(options) {
|
|
202
|
+
return options.type === exports.GroupRenderType.Grid;
|
|
203
|
+
}
|
|
134
204
|
|
|
135
205
|
function buildSchema(def) {
|
|
136
206
|
return Object.entries(def).map(function (x) {
|
|
@@ -214,6 +284,10 @@ function fieldDisplayName(field) {
|
|
|
214
284
|
var _field$displayName;
|
|
215
285
|
return (_field$displayName = field.displayName) != null ? _field$displayName : field.field;
|
|
216
286
|
}
|
|
287
|
+
function hasOptions(o) {
|
|
288
|
+
var _o$options$length, _o$options;
|
|
289
|
+
return ((_o$options$length = (_o$options = o.options) == null ? void 0 : _o$options.length) != null ? _o$options$length : 0) > 0;
|
|
290
|
+
}
|
|
217
291
|
|
|
218
292
|
var _FormRendererComponentsContext = null;
|
|
219
293
|
function FormRendererComponentsContext() {
|
|
@@ -306,15 +380,16 @@ function findField(fields, field) {
|
|
|
306
380
|
function controlTitle(title, field) {
|
|
307
381
|
return title ? title : fieldDisplayName(field);
|
|
308
382
|
}
|
|
309
|
-
function renderControl(definition, formState, hooks, key
|
|
383
|
+
function renderControl(definition, formState, hooks, key) {
|
|
310
384
|
var fields = formState.fields;
|
|
311
385
|
return visitControlDefinition(definition, {
|
|
312
386
|
data: function data(def) {
|
|
313
387
|
var fieldData = findScalarField(fields, def.field);
|
|
314
|
-
if (!fieldData) return /*#__PURE__*/React__default["default"].createElement("h1",
|
|
388
|
+
if (!fieldData) return /*#__PURE__*/React__default["default"].createElement("h1", {
|
|
389
|
+
key: key
|
|
390
|
+
}, "No schema field for: ", def.field);
|
|
315
391
|
return /*#__PURE__*/React__default["default"].createElement(DataRenderer, {
|
|
316
392
|
key: key,
|
|
317
|
-
wrapElem: wrapElem,
|
|
318
393
|
formState: formState,
|
|
319
394
|
hooks: hooks,
|
|
320
395
|
controlDef: def,
|
|
@@ -326,8 +401,7 @@ function renderControl(definition, formState, hooks, key, wrapChild) {
|
|
|
326
401
|
key: key,
|
|
327
402
|
hooks: hooks,
|
|
328
403
|
groupDef: d,
|
|
329
|
-
formState: formState
|
|
330
|
-
wrapElem: wrapElem
|
|
404
|
+
formState: formState
|
|
331
405
|
});
|
|
332
406
|
},
|
|
333
407
|
action: function action(d) {
|
|
@@ -335,7 +409,6 @@ function renderControl(definition, formState, hooks, key, wrapChild) {
|
|
|
335
409
|
key: key,
|
|
336
410
|
hooks: hooks,
|
|
337
411
|
formState: formState,
|
|
338
|
-
wrapElem: wrapElem,
|
|
339
412
|
actionDef: d
|
|
340
413
|
});
|
|
341
414
|
},
|
|
@@ -344,17 +417,12 @@ function renderControl(definition, formState, hooks, key, wrapChild) {
|
|
|
344
417
|
key: key,
|
|
345
418
|
hooks: hooks,
|
|
346
419
|
formState: formState,
|
|
347
|
-
wrapElem: wrapElem,
|
|
348
420
|
displayDef: d
|
|
349
421
|
});
|
|
350
422
|
}
|
|
351
423
|
}, function () {
|
|
352
424
|
return /*#__PURE__*/React__default["default"].createElement("h1", null, "Unknown control: ", definition.type);
|
|
353
425
|
});
|
|
354
|
-
function wrapElem(e) {
|
|
355
|
-
var _wrapChild;
|
|
356
|
-
return (_wrapChild = wrapChild == null ? void 0 : wrapChild(key, e)) != null ? _wrapChild : e;
|
|
357
|
-
}
|
|
358
426
|
}
|
|
359
427
|
/** @trackControls */
|
|
360
428
|
function DataRenderer(_ref2) {
|
|
@@ -364,17 +432,10 @@ function DataRenderer(_ref2) {
|
|
|
364
432
|
var hooks = _ref2.hooks,
|
|
365
433
|
formState = _ref2.formState,
|
|
366
434
|
controlDef = _ref2.controlDef,
|
|
367
|
-
wrapElem = _ref2.wrapElem,
|
|
368
435
|
fieldData = _ref2.fieldData;
|
|
369
436
|
var renderer = useFormRendererComponents();
|
|
370
|
-
var props = hooks.useDataProperties(formState, controlDef, fieldData);
|
|
371
|
-
|
|
372
|
-
formEditState: formState,
|
|
373
|
-
field: fieldData,
|
|
374
|
-
definition: controlDef,
|
|
375
|
-
properties: props
|
|
376
|
-
};
|
|
377
|
-
return wrapElem(((_props$customRender = props.customRender) != null ? _props$customRender : renderer.renderData)(scalarProps, props.control, false, renderer));
|
|
437
|
+
var props = hooks.useDataProperties(formState, controlDef, fieldData, renderer);
|
|
438
|
+
return ((_props$customRender = props.customRender) != null ? _props$customRender : renderer.renderData)(props);
|
|
378
439
|
} finally {
|
|
379
440
|
_effect2();
|
|
380
441
|
}
|
|
@@ -385,15 +446,11 @@ function ActionRenderer(_ref3) {
|
|
|
385
446
|
try {
|
|
386
447
|
var hooks = _ref3.hooks,
|
|
387
448
|
formState = _ref3.formState,
|
|
388
|
-
wrapElem = _ref3.wrapElem,
|
|
389
449
|
actionDef = _ref3.actionDef;
|
|
390
450
|
var _useFormRendererCompo = useFormRendererComponents(),
|
|
391
451
|
renderAction = _useFormRendererCompo.renderAction;
|
|
392
452
|
var actionControlProperties = hooks.useActionProperties(formState, actionDef);
|
|
393
|
-
return
|
|
394
|
-
definition: actionDef,
|
|
395
|
-
properties: actionControlProperties
|
|
396
|
-
}));
|
|
453
|
+
return renderAction(actionControlProperties);
|
|
397
454
|
} finally {
|
|
398
455
|
_effect3();
|
|
399
456
|
}
|
|
@@ -404,32 +461,10 @@ function GroupRenderer(_ref4) {
|
|
|
404
461
|
try {
|
|
405
462
|
var hooks = _ref4.hooks,
|
|
406
463
|
formState = _ref4.formState,
|
|
407
|
-
groupDef = _ref4.groupDef
|
|
408
|
-
wrapElem = _ref4.wrapElem;
|
|
464
|
+
groupDef = _ref4.groupDef;
|
|
409
465
|
var renderers = useFormRendererComponents();
|
|
410
|
-
var groupProps = hooks.useGroupProperties(formState, groupDef, hooks);
|
|
411
|
-
|
|
412
|
-
if (compoundField) {
|
|
413
|
-
return wrapElem(renderers.renderCompound({
|
|
414
|
-
definition: groupDef,
|
|
415
|
-
field: compoundField,
|
|
416
|
-
properties: groupProps,
|
|
417
|
-
renderChild: function renderChild(k, c, data, wrapChild) {
|
|
418
|
-
return renderControl(c, _extends({}, formState, {
|
|
419
|
-
fields: compoundField.children,
|
|
420
|
-
data: data
|
|
421
|
-
}), groupProps.hooks, k, wrapChild);
|
|
422
|
-
}
|
|
423
|
-
}, formState.data.fields[compoundField.field], renderers));
|
|
424
|
-
}
|
|
425
|
-
return wrapElem(renderers.renderGroup({
|
|
426
|
-
definition: groupDef,
|
|
427
|
-
childCount: groupDef.children.length,
|
|
428
|
-
properties: groupProps,
|
|
429
|
-
renderChild: function renderChild(c, wrapChild) {
|
|
430
|
-
return renderControl(groupDef.children[c], formState, groupProps.hooks, c, wrapChild);
|
|
431
|
-
}
|
|
432
|
-
}));
|
|
466
|
+
var groupProps = hooks.useGroupProperties(formState, groupDef, hooks, renderers);
|
|
467
|
+
return renderers.renderGroup(groupProps);
|
|
433
468
|
} finally {
|
|
434
469
|
_effect4();
|
|
435
470
|
}
|
|
@@ -439,16 +474,12 @@ function DisplayRenderer(_ref5) {
|
|
|
439
474
|
var _effect5 = core.useComponentTracking();
|
|
440
475
|
try {
|
|
441
476
|
var hooks = _ref5.hooks,
|
|
442
|
-
wrapElem = _ref5.wrapElem,
|
|
443
477
|
formState = _ref5.formState,
|
|
444
478
|
displayDef = _ref5.displayDef;
|
|
445
479
|
var _useFormRendererCompo2 = useFormRendererComponents(),
|
|
446
480
|
renderDisplay = _useFormRendererCompo2.renderDisplay;
|
|
447
481
|
var displayProps = hooks.useDisplayProperties(formState, displayDef);
|
|
448
|
-
return
|
|
449
|
-
definition: displayDef,
|
|
450
|
-
properties: displayProps
|
|
451
|
-
}));
|
|
482
|
+
return renderDisplay(displayProps);
|
|
452
483
|
} finally {
|
|
453
484
|
_effect5();
|
|
454
485
|
}
|
|
@@ -467,24 +498,80 @@ function isDataControl(c) {
|
|
|
467
498
|
function isGroupControl(c) {
|
|
468
499
|
return c.type === exports.ControlDefinitionType.Group;
|
|
469
500
|
}
|
|
501
|
+
var AlwaysVisible = {
|
|
502
|
+
value: true,
|
|
503
|
+
canChange: false
|
|
504
|
+
};
|
|
505
|
+
function createAction(label, onClick, actionId) {
|
|
506
|
+
return {
|
|
507
|
+
definition: {
|
|
508
|
+
type: exports.ControlDefinitionType.Action,
|
|
509
|
+
actionId: actionId != null ? actionId : label,
|
|
510
|
+
title: label
|
|
511
|
+
},
|
|
512
|
+
visible: AlwaysVisible,
|
|
513
|
+
onClick: onClick
|
|
514
|
+
};
|
|
515
|
+
}
|
|
516
|
+
function visitControlData(definition, _ref7, cb) {
|
|
517
|
+
var fields = _ref7.fields,
|
|
518
|
+
_data = _ref7.data;
|
|
519
|
+
return visitControlDefinition(definition, {
|
|
520
|
+
data: function data(def) {
|
|
521
|
+
var fieldData = findScalarField(fields, def.field);
|
|
522
|
+
if (!fieldData) return undefined;
|
|
523
|
+
return cb(def, _data.fields[fieldData.field]);
|
|
524
|
+
},
|
|
525
|
+
group: function group(d) {
|
|
526
|
+
if (d.compoundField) {
|
|
527
|
+
var compound = findCompoundField(fields, d.compoundField);
|
|
528
|
+
if (!compound) return;
|
|
529
|
+
fields = compound.children;
|
|
530
|
+
_data = _data.fields[compound.field];
|
|
531
|
+
}
|
|
532
|
+
var childState = {
|
|
533
|
+
fields: fields,
|
|
534
|
+
data: _data
|
|
535
|
+
};
|
|
536
|
+
for (var _iterator = _createForOfIteratorHelperLoose(d.children), _step; !(_step = _iterator()).done;) {
|
|
537
|
+
var c = _step.value;
|
|
538
|
+
var res = visitControlData(c, childState, cb);
|
|
539
|
+
if (res !== undefined) return res;
|
|
540
|
+
}
|
|
541
|
+
return undefined;
|
|
542
|
+
},
|
|
543
|
+
action: function action(d) {
|
|
544
|
+
return undefined;
|
|
545
|
+
},
|
|
546
|
+
display: function display(d) {
|
|
547
|
+
return undefined;
|
|
548
|
+
}
|
|
549
|
+
}, function () {
|
|
550
|
+
return undefined;
|
|
551
|
+
});
|
|
552
|
+
}
|
|
470
553
|
|
|
471
|
-
function useDefaultValue(definition, field, formState,
|
|
554
|
+
function useDefaultValue(definition, field, formState, hooks) {
|
|
472
555
|
var _definition$dynamic;
|
|
473
556
|
var valueExpression = (_definition$dynamic = definition.dynamic) == null ? void 0 : _definition$dynamic.find(function (x) {
|
|
474
557
|
return x.type === exports.DynamicPropertyType.DefaultValue;
|
|
475
558
|
});
|
|
476
559
|
if (valueExpression) {
|
|
477
|
-
return useExpression(valueExpression.expr, formState);
|
|
560
|
+
return hooks.useExpression(valueExpression.expr, formState).value;
|
|
478
561
|
}
|
|
479
562
|
return field.defaultValue;
|
|
480
563
|
}
|
|
481
|
-
function useIsControlVisible(definition, formState,
|
|
482
|
-
var _definition$dynamic2, _ref2;
|
|
564
|
+
function useIsControlVisible(definition, formState, hooks) {
|
|
565
|
+
var _definition$dynamic2, _ref2, _onlyForTypes$length;
|
|
483
566
|
var visibleExpression = (_definition$dynamic2 = definition.dynamic) == null ? void 0 : _definition$dynamic2.find(function (x) {
|
|
484
567
|
return x.type === exports.DynamicPropertyType.Visible;
|
|
485
568
|
});
|
|
486
569
|
if (visibleExpression && visibleExpression.expr) {
|
|
487
|
-
|
|
570
|
+
var exprValue = hooks.useExpression(visibleExpression.expr, formState).value;
|
|
571
|
+
return {
|
|
572
|
+
value: Boolean(exprValue),
|
|
573
|
+
canChange: true
|
|
574
|
+
};
|
|
488
575
|
}
|
|
489
576
|
var schemaFields = formState.fields;
|
|
490
577
|
var _useMemo = React.useMemo(function () {
|
|
@@ -503,17 +590,28 @@ function useIsControlVisible(definition, formState, useExpression) {
|
|
|
503
590
|
compoundField = _useMemo.compoundField;
|
|
504
591
|
var fieldName = fieldForControl(definition);
|
|
505
592
|
var onlyForTypes = (_ref2 = fieldName ? findField(schemaFields, fieldName) : undefined) == null ? void 0 : _ref2.onlyForTypes;
|
|
506
|
-
|
|
593
|
+
var canChange = Boolean(compoundField || ((_onlyForTypes$length = onlyForTypes == null ? void 0 : onlyForTypes.length) != null ? _onlyForTypes$length : 0) > 0);
|
|
594
|
+
var value = (!compoundField || compoundField.value != null) && (!onlyForTypes || onlyForTypes.length === 0 || Boolean(typeControl.value && onlyForTypes.includes(typeControl.value)));
|
|
595
|
+
return {
|
|
596
|
+
value: value,
|
|
597
|
+
canChange: canChange
|
|
598
|
+
};
|
|
507
599
|
}
|
|
508
|
-
function getDefaultScalarControlProperties(definition, field, visible, defaultValue, control,
|
|
509
|
-
var _definition$required, _ref3;
|
|
600
|
+
function getDefaultScalarControlProperties(definition, field, visible, defaultValue, control, formState) {
|
|
601
|
+
var _definition$renderOpt, _definition$required, _ref3, _formState$readonly;
|
|
510
602
|
return {
|
|
603
|
+
definition: definition,
|
|
604
|
+
field: field,
|
|
511
605
|
defaultValue: defaultValue,
|
|
512
606
|
options: getOptionsForScalarField(field),
|
|
607
|
+
renderOptions: (_definition$renderOpt = definition.renderOptions) != null ? _definition$renderOpt : {
|
|
608
|
+
type: exports.DataRenderType.Standard
|
|
609
|
+
},
|
|
513
610
|
required: (_definition$required = definition.required) != null ? _definition$required : false,
|
|
514
611
|
visible: visible,
|
|
515
|
-
readonly: (_ref3 = readonly != null ? readonly : definition.readonly) != null ? _ref3 : false,
|
|
516
|
-
control: control
|
|
612
|
+
readonly: (_ref3 = (_formState$readonly = formState.readonly) != null ? _formState$readonly : definition.readonly) != null ? _ref3 : false,
|
|
613
|
+
control: control,
|
|
614
|
+
formState: formState
|
|
517
615
|
};
|
|
518
616
|
}
|
|
519
617
|
function getOptionsForScalarField(field) {
|
|
@@ -524,53 +622,846 @@ function getOptionsForScalarField(field) {
|
|
|
524
622
|
}
|
|
525
623
|
return undefined;
|
|
526
624
|
}
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
625
|
+
function createDefaultSchemaHooks() {
|
|
626
|
+
function useExpression(expr, formState) {
|
|
627
|
+
switch (expr.type) {
|
|
628
|
+
case exports.ExpressionType.Jsonata:
|
|
629
|
+
var jExpr = expr;
|
|
630
|
+
var compiledExpr = React.useMemo(function () {
|
|
631
|
+
return jsonata__default["default"](jExpr.expression);
|
|
632
|
+
}, [jExpr.expression]);
|
|
633
|
+
var control = core.useControl();
|
|
634
|
+
core.useControlEffect(function () {
|
|
635
|
+
return formState.data.value;
|
|
636
|
+
}, function (v) {
|
|
637
|
+
try {
|
|
638
|
+
return Promise.resolve(compiledExpr.evaluate(v)).then(function (_compiledExpr$evaluat) {
|
|
639
|
+
control.value = _compiledExpr$evaluat;
|
|
640
|
+
});
|
|
641
|
+
} catch (e) {
|
|
642
|
+
return Promise.reject(e);
|
|
643
|
+
}
|
|
644
|
+
});
|
|
645
|
+
return control;
|
|
646
|
+
case exports.ExpressionType.FieldValue:
|
|
647
|
+
var fvExpr = expr;
|
|
648
|
+
return core.useComputed(function () {
|
|
649
|
+
var fv = controlForField(fvExpr.field, formState).value;
|
|
650
|
+
return Array.isArray(fv) ? fv.includes(fvExpr.value) : fv === fvExpr.value;
|
|
651
|
+
});
|
|
652
|
+
default:
|
|
653
|
+
return core.useControl(undefined);
|
|
654
|
+
}
|
|
655
|
+
}
|
|
656
|
+
function useValidators(formState, isVisible, control, required, validators) {
|
|
657
|
+
if (required) core.useValidator(control, function (v) {
|
|
658
|
+
return isVisible && (v == null || v == "") ? "Please enter a value" : null;
|
|
659
|
+
}, "required");
|
|
660
|
+
validators == null || validators.forEach(function (v, i) {
|
|
661
|
+
switch (v.type) {
|
|
662
|
+
case exports.ValidatorType.Date:
|
|
663
|
+
processDateValidator(v);
|
|
664
|
+
break;
|
|
665
|
+
case exports.ValidatorType.Jsonata:
|
|
666
|
+
var errorMsg = useExpression(v, formState);
|
|
667
|
+
core.useControlEffect(function () {
|
|
668
|
+
return [isVisible, errorMsg.value];
|
|
669
|
+
}, function (_ref4) {
|
|
670
|
+
var isVisible = _ref4[0],
|
|
671
|
+
msg = _ref4[1];
|
|
672
|
+
return control.setError(v.type + i, isVisible ? msg : null);
|
|
673
|
+
}, true);
|
|
674
|
+
break;
|
|
675
|
+
}
|
|
676
|
+
function processDateValidator(dv) {
|
|
677
|
+
var comparisonDate;
|
|
678
|
+
if (dv.fixedDate) {
|
|
679
|
+
comparisonDate = Date.parse(dv.fixedDate);
|
|
680
|
+
} else {
|
|
681
|
+
var nowDate = new Date();
|
|
682
|
+
comparisonDate = Date.UTC(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate());
|
|
683
|
+
if (dv.daysFromCurrent) {
|
|
684
|
+
comparisonDate += dv.daysFromCurrent * 86400000;
|
|
685
|
+
}
|
|
686
|
+
}
|
|
687
|
+
core.useValidator(control, function (v) {
|
|
688
|
+
if (v) {
|
|
689
|
+
var selDate = Date.parse(v);
|
|
690
|
+
var notAfter = dv.comparison === exports.DateComparison.NotAfter;
|
|
691
|
+
if (notAfter ? selDate > comparisonDate : selDate < comparisonDate) {
|
|
692
|
+
return "Date must not be " + (notAfter ? "after" : "before") + " " + new Date(comparisonDate).toDateString();
|
|
693
|
+
}
|
|
694
|
+
}
|
|
695
|
+
return null;
|
|
696
|
+
}, "date" + i);
|
|
697
|
+
}
|
|
698
|
+
});
|
|
534
699
|
}
|
|
535
|
-
};
|
|
536
|
-
function createFormEditHooks(useExpression) {
|
|
537
700
|
return {
|
|
538
701
|
useExpression: useExpression,
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
702
|
+
useValidators: useValidators
|
|
703
|
+
};
|
|
704
|
+
}
|
|
705
|
+
var defaultFormEditHooks = createFormEditHooks(createDefaultSchemaHooks());
|
|
706
|
+
function createFormEditHooks(schemaHooks) {
|
|
707
|
+
return {
|
|
708
|
+
schemaHooks: schemaHooks,
|
|
709
|
+
useDataProperties: function useDataProperties(formState, definition, field, renderer) {
|
|
710
|
+
var visible = useIsControlVisible(definition, formState, schemaHooks);
|
|
711
|
+
var isVisible = visible.value && !formState.invisible;
|
|
712
|
+
var defaultValue = useDefaultValue(definition, field, formState, schemaHooks);
|
|
542
713
|
var scalarControl = formState.data.fields[field.field];
|
|
543
714
|
React.useEffect(function () {
|
|
544
|
-
if (!
|
|
715
|
+
if (!isVisible) scalarControl.value = null;else if (scalarControl.current.value == null) {
|
|
545
716
|
scalarControl.value = defaultValue;
|
|
546
717
|
}
|
|
547
|
-
}, [
|
|
548
|
-
|
|
718
|
+
}, [isVisible, defaultValue]);
|
|
719
|
+
var dataProps = getDefaultScalarControlProperties(definition, field, visible, defaultValue, scalarControl, formState);
|
|
720
|
+
schemaHooks.useValidators(formState, isVisible, scalarControl, dataProps.required, definition.validators);
|
|
721
|
+
React.useEffect(function () {
|
|
722
|
+
var subscription = scalarControl.subscribe(function (c) {
|
|
723
|
+
return c.touched = true;
|
|
724
|
+
}, core.ControlChange.Validate);
|
|
725
|
+
return function () {
|
|
726
|
+
return scalarControl.unsubscribe(subscription);
|
|
727
|
+
};
|
|
728
|
+
}, []);
|
|
729
|
+
if (!field.collection) return dataProps;
|
|
730
|
+
return _extends({}, dataProps, {
|
|
731
|
+
array: defaultArrayRendererProps(scalarControl, field, definition, dataProps.readonly, function (c) {
|
|
732
|
+
return renderer.renderData(_extends({}, dataProps, {
|
|
733
|
+
control: c
|
|
734
|
+
}));
|
|
735
|
+
})
|
|
736
|
+
});
|
|
549
737
|
},
|
|
550
738
|
useDisplayProperties: function useDisplayProperties(fs, definition) {
|
|
551
|
-
var visible = useIsControlVisible(definition, fs,
|
|
739
|
+
var visible = useIsControlVisible(definition, fs, schemaHooks);
|
|
552
740
|
return {
|
|
553
|
-
visible: visible
|
|
741
|
+
visible: visible,
|
|
742
|
+
definition: definition
|
|
554
743
|
};
|
|
555
744
|
},
|
|
556
|
-
useGroupProperties: function useGroupProperties(fs, definition, hooks) {
|
|
557
|
-
var
|
|
558
|
-
|
|
745
|
+
useGroupProperties: function useGroupProperties(fs, definition, hooks, renderers) {
|
|
746
|
+
var _definition$groupOpti;
|
|
747
|
+
var visible = useIsControlVisible(definition, fs, schemaHooks);
|
|
748
|
+
var field = definition.compoundField ? findCompoundField(fs.fields, definition.compoundField) : undefined;
|
|
749
|
+
var newFs = _extends({}, fs, {
|
|
750
|
+
fields: field ? field.children : fs.fields,
|
|
751
|
+
data: field ? fs.data.fields[field.field] : fs.data,
|
|
752
|
+
invisible: !visible.value || fs.invisible
|
|
753
|
+
});
|
|
754
|
+
var groupProps = {
|
|
559
755
|
visible: visible,
|
|
560
|
-
hooks: hooks
|
|
756
|
+
hooks: hooks,
|
|
757
|
+
hideTitle: (_definition$groupOpti = definition.groupOptions.hideTitle) != null ? _definition$groupOpti : false,
|
|
758
|
+
childCount: definition.children.length,
|
|
759
|
+
renderChild: function renderChild(i) {
|
|
760
|
+
return renderControl(definition.children[i], newFs, hooks, i);
|
|
761
|
+
},
|
|
762
|
+
definition: definition
|
|
561
763
|
};
|
|
764
|
+
if (field != null && field.collection) {
|
|
765
|
+
return _extends({}, groupProps, {
|
|
766
|
+
array: defaultArrayRendererProps(newFs.data, field, definition, fs.readonly, function (e) {
|
|
767
|
+
return renderers.renderGroup(_extends({}, groupProps, {
|
|
768
|
+
hideTitle: true,
|
|
769
|
+
renderChild: function renderChild(i) {
|
|
770
|
+
return renderControl(definition.children[i], _extends({}, newFs, {
|
|
771
|
+
data: e
|
|
772
|
+
}), hooks, i);
|
|
773
|
+
}
|
|
774
|
+
}));
|
|
775
|
+
})
|
|
776
|
+
});
|
|
777
|
+
}
|
|
778
|
+
return groupProps;
|
|
562
779
|
},
|
|
563
780
|
useActionProperties: function useActionProperties(formState, definition) {
|
|
564
|
-
var visible = useIsControlVisible(definition, formState,
|
|
781
|
+
var visible = useIsControlVisible(definition, formState, schemaHooks);
|
|
565
782
|
return {
|
|
566
783
|
visible: visible,
|
|
567
|
-
onClick: function onClick() {}
|
|
784
|
+
onClick: function onClick() {},
|
|
785
|
+
definition: definition
|
|
568
786
|
};
|
|
569
787
|
}
|
|
570
788
|
};
|
|
571
789
|
}
|
|
790
|
+
function defaultArrayRendererProps(control, field, definition, readonly, renderElem) {
|
|
791
|
+
var _control$elements$len, _control$elements;
|
|
792
|
+
return {
|
|
793
|
+
control: control,
|
|
794
|
+
childCount: (_control$elements$len = (_control$elements = control.elements) == null ? void 0 : _control$elements.length) != null ? _control$elements$len : 0,
|
|
795
|
+
field: field,
|
|
796
|
+
definition: definition,
|
|
797
|
+
addAction: !readonly ? {
|
|
798
|
+
definition: {
|
|
799
|
+
title: "Add " + controlTitle(definition.title, field),
|
|
800
|
+
type: exports.ControlDefinitionType.Action,
|
|
801
|
+
actionId: "addElement"
|
|
802
|
+
},
|
|
803
|
+
visible: {
|
|
804
|
+
value: true,
|
|
805
|
+
canChange: false
|
|
806
|
+
},
|
|
807
|
+
onClick: function onClick() {
|
|
808
|
+
return core.addElement(control, elementValueForField(field));
|
|
809
|
+
}
|
|
810
|
+
} : undefined,
|
|
811
|
+
removeAction: !readonly ? function (i) {
|
|
812
|
+
return {
|
|
813
|
+
definition: {
|
|
814
|
+
title: "Remove",
|
|
815
|
+
type: exports.ControlDefinitionType.Action,
|
|
816
|
+
actionId: "removeElement"
|
|
817
|
+
},
|
|
818
|
+
visible: {
|
|
819
|
+
value: true,
|
|
820
|
+
canChange: false
|
|
821
|
+
},
|
|
822
|
+
onClick: function onClick() {
|
|
823
|
+
return core.removeElement(control, control.elements[i]);
|
|
824
|
+
}
|
|
825
|
+
};
|
|
826
|
+
} : undefined,
|
|
827
|
+
childKey: function childKey(i) {
|
|
828
|
+
return control.elements[i].uniqueId;
|
|
829
|
+
},
|
|
830
|
+
renderChild: function renderChild(i) {
|
|
831
|
+
var c = control.elements[i];
|
|
832
|
+
return /*#__PURE__*/React__default["default"].createElement(React.Fragment, {
|
|
833
|
+
key: c.uniqueId
|
|
834
|
+
}, renderElem(c));
|
|
835
|
+
}
|
|
836
|
+
};
|
|
837
|
+
}
|
|
838
|
+
|
|
839
|
+
var _excluded = ["control", "convert"],
|
|
840
|
+
_excluded2 = ["errorText", "value", "onChange"],
|
|
841
|
+
_excluded3 = ["state", "options", "className", "convert", "required", "emptyText", "requiredText"];
|
|
842
|
+
function createFormRenderer(customRenderers, defaultRenderers) {
|
|
843
|
+
var _customRenderers$find, _customRenderers$find2;
|
|
844
|
+
if (customRenderers === void 0) {
|
|
845
|
+
customRenderers = [];
|
|
846
|
+
}
|
|
847
|
+
if (defaultRenderers === void 0) {
|
|
848
|
+
defaultRenderers = createClassStyledRenderers();
|
|
849
|
+
}
|
|
850
|
+
var dataRegistrations = customRenderers.filter(isDataRegistration);
|
|
851
|
+
var adornmentRegistrations = customRenderers.filter(isAdornmentRegistration);
|
|
852
|
+
var labelRenderer = (_customRenderers$find = customRenderers.find(isLabelRegistration)) != null ? _customRenderers$find : defaultRenderers.label;
|
|
853
|
+
var renderVisibility = ((_customRenderers$find2 = customRenderers.find(isVisibilityRegistration)) != null ? _customRenderers$find2 : defaultRenderers.visibility).render;
|
|
854
|
+
var formRenderers = {
|
|
855
|
+
renderAction: renderAction,
|
|
856
|
+
renderData: _renderData,
|
|
857
|
+
renderGroup: _renderGroup,
|
|
858
|
+
renderDisplay: renderDisplay,
|
|
859
|
+
renderLabel: renderLabel,
|
|
860
|
+
renderArray: renderArray,
|
|
861
|
+
renderVisibility: renderVisibility,
|
|
862
|
+
renderAdornment: renderAdornment
|
|
863
|
+
};
|
|
864
|
+
function renderAdornment(props) {
|
|
865
|
+
var _adornmentRegistratio;
|
|
866
|
+
var renderer = (_adornmentRegistratio = adornmentRegistrations.find(function (x) {
|
|
867
|
+
return isOneOf(x.adornmentType, props.definition.type);
|
|
868
|
+
})) != null ? _adornmentRegistratio : defaultRenderers.adornment;
|
|
869
|
+
return renderer.render(props);
|
|
870
|
+
}
|
|
871
|
+
function renderArray(props) {
|
|
872
|
+
return defaultRenderers.array.render(props, formRenderers);
|
|
873
|
+
}
|
|
874
|
+
function renderLabel(props, elem) {
|
|
875
|
+
return labelRenderer.render(props, elem, formRenderers);
|
|
876
|
+
}
|
|
877
|
+
function withAdornments(definition, adornments) {
|
|
878
|
+
var _definition$adornment, _definition$adornment2;
|
|
879
|
+
var rAdornments = adornments ? adornments : (_definition$adornment = (_definition$adornment2 = definition.adornments) == null ? void 0 : _definition$adornment2.map(function (x, i) {
|
|
880
|
+
return renderAdornment({
|
|
881
|
+
definition: x,
|
|
882
|
+
key: i
|
|
883
|
+
});
|
|
884
|
+
})) != null ? _definition$adornment : [];
|
|
885
|
+
function combineAdornments(placement) {
|
|
886
|
+
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, rAdornments.filter(function (x) {
|
|
887
|
+
return x.child && x.child[0] === placement;
|
|
888
|
+
}).map(function (x) {
|
|
889
|
+
return x.child[1];
|
|
890
|
+
}));
|
|
891
|
+
}
|
|
892
|
+
return [rAdornments, combineAdornments, function (mainElem) {
|
|
893
|
+
return !adornments ? mainElem : rAdornments.reduce(function (e, n) {
|
|
894
|
+
var _n$wrap;
|
|
895
|
+
return (_n$wrap = n.wrap == null ? void 0 : n.wrap(e)) != null ? _n$wrap : e;
|
|
896
|
+
}, mainElem);
|
|
897
|
+
}];
|
|
898
|
+
}
|
|
899
|
+
function _renderData(props, adornments) {
|
|
900
|
+
var _dataRegistrations$fi;
|
|
901
|
+
var definition = props.definition,
|
|
902
|
+
renderType = props.renderOptions.type,
|
|
903
|
+
visible = props.visible,
|
|
904
|
+
required = props.required,
|
|
905
|
+
control = props.control,
|
|
906
|
+
field = props.field;
|
|
907
|
+
var options = hasOptions(props);
|
|
908
|
+
var renderer = (_dataRegistrations$fi = dataRegistrations.find(function (x) {
|
|
909
|
+
var _x$collection, _field$collection, _x$options;
|
|
910
|
+
return ((_x$collection = x.collection) != null ? _x$collection : false) === ((_field$collection = field.collection) != null ? _field$collection : false) && ((_x$options = x.options) != null ? _x$options : false) === options && isOneOf(x.schemaType, field.type) && isOneOf(x.renderType, renderType) && (!x.match || x.match(props));
|
|
911
|
+
})) != null ? _dataRegistrations$fi : defaultRenderers.data;
|
|
912
|
+
var _withAdornments = withAdornments(definition, adornments),
|
|
913
|
+
rAdornments = _withAdornments[0],
|
|
914
|
+
renderAdornment = _withAdornments[1],
|
|
915
|
+
wrapElem = _withAdornments[2];
|
|
916
|
+
return wrapElem(renderer.render(props, createLabel, _extends({}, formRenderers, {
|
|
917
|
+
renderData: function renderData(p) {
|
|
918
|
+
return _renderData(p, rAdornments);
|
|
919
|
+
}
|
|
920
|
+
})));
|
|
921
|
+
function createLabel(labelProps) {
|
|
922
|
+
var _labelProps$title;
|
|
923
|
+
return _extends({
|
|
924
|
+
visible: visible,
|
|
925
|
+
required: required,
|
|
926
|
+
control: control,
|
|
927
|
+
forId: "c" + control.uniqueId,
|
|
928
|
+
renderAdornment: renderAdornment
|
|
929
|
+
}, labelProps, {
|
|
930
|
+
title: (_labelProps$title = labelProps == null ? void 0 : labelProps.title) != null ? _labelProps$title : controlTitle(definition.title, field)
|
|
931
|
+
});
|
|
932
|
+
}
|
|
933
|
+
}
|
|
934
|
+
function _renderGroup(props, adornments) {
|
|
935
|
+
var definition = props.definition,
|
|
936
|
+
visible = props.visible,
|
|
937
|
+
field = props.field;
|
|
938
|
+
var _withAdornments2 = withAdornments(props.definition, adornments),
|
|
939
|
+
rAdornments = _withAdornments2[0],
|
|
940
|
+
renderAdornment = _withAdornments2[1],
|
|
941
|
+
wrapElem = _withAdornments2[2];
|
|
942
|
+
var title = props.hideTitle ? undefined : field ? controlTitle(definition.title, field) : definition.title;
|
|
943
|
+
return wrapElem(defaultRenderers.group.render(props, createLabel, _extends({}, formRenderers, {
|
|
944
|
+
renderGroup: function renderGroup(p) {
|
|
945
|
+
return _renderGroup(p, rAdornments);
|
|
946
|
+
}
|
|
947
|
+
})));
|
|
948
|
+
function createLabel(labelProps) {
|
|
949
|
+
return _extends({
|
|
950
|
+
required: false,
|
|
951
|
+
visible: visible,
|
|
952
|
+
group: true,
|
|
953
|
+
renderAdornment: renderAdornment,
|
|
954
|
+
title: title
|
|
955
|
+
}, labelProps);
|
|
956
|
+
}
|
|
957
|
+
}
|
|
958
|
+
function renderAction(props, adornments) {
|
|
959
|
+
var _customRenderers$find3;
|
|
960
|
+
var renderer = (_customRenderers$find3 = customRenderers.find(isActionRegistration)) != null ? _customRenderers$find3 : defaultRenderers.action;
|
|
961
|
+
var _withAdornments3 = withAdornments(props.definition, adornments),
|
|
962
|
+
wrapElem = _withAdornments3[2];
|
|
963
|
+
return wrapElem(renderer.render(props, formRenderers));
|
|
964
|
+
}
|
|
965
|
+
function renderDisplay(props, adornments) {
|
|
966
|
+
var _withAdornments4 = withAdornments(props.definition, adornments),
|
|
967
|
+
wrapElem = _withAdornments4[2];
|
|
968
|
+
return wrapElem(defaultRenderers.display.render(props, formRenderers));
|
|
969
|
+
}
|
|
970
|
+
return formRenderers;
|
|
971
|
+
}
|
|
972
|
+
function createDefaultActionRenderer(options) {
|
|
973
|
+
if (options === void 0) {
|
|
974
|
+
options = {};
|
|
975
|
+
}
|
|
976
|
+
function render(_ref, _ref2) {
|
|
977
|
+
var visible = _ref.visible,
|
|
978
|
+
onClick = _ref.onClick,
|
|
979
|
+
title = _ref.definition.title;
|
|
980
|
+
var renderVisibility = _ref2.renderVisibility;
|
|
981
|
+
return renderVisibility(visible, /*#__PURE__*/React__default["default"].createElement("button", {
|
|
982
|
+
className: options.className,
|
|
983
|
+
onClick: onClick
|
|
984
|
+
}, title));
|
|
985
|
+
}
|
|
986
|
+
return {
|
|
987
|
+
render: render,
|
|
988
|
+
type: "action"
|
|
989
|
+
};
|
|
990
|
+
}
|
|
991
|
+
function createDefaultLabelRenderer(options) {
|
|
992
|
+
if (options === void 0) {
|
|
993
|
+
options = {
|
|
994
|
+
requiredElement: /*#__PURE__*/React__default["default"].createElement("span", null, " *")
|
|
995
|
+
};
|
|
996
|
+
}
|
|
997
|
+
return {
|
|
998
|
+
render: function render(p, elem, _ref3) {
|
|
999
|
+
var renderVisibility = _ref3.renderVisibility;
|
|
1000
|
+
return renderVisibility(p.visible, /*#__PURE__*/React__default["default"].createElement(DefaultLabelRenderer, _extends({}, p, options, {
|
|
1001
|
+
children: elem
|
|
1002
|
+
})));
|
|
1003
|
+
},
|
|
1004
|
+
type: "label"
|
|
1005
|
+
};
|
|
1006
|
+
}
|
|
1007
|
+
function DefaultLabelRenderer(_ref4) {
|
|
1008
|
+
var _effect = core.useComponentTracking();
|
|
1009
|
+
try {
|
|
1010
|
+
var className = _ref4.className,
|
|
1011
|
+
labelClass = _ref4.labelClass,
|
|
1012
|
+
title = _ref4.title,
|
|
1013
|
+
forId = _ref4.forId,
|
|
1014
|
+
required = _ref4.required,
|
|
1015
|
+
children = _ref4.children,
|
|
1016
|
+
group = _ref4.group,
|
|
1017
|
+
groupLabelClass = _ref4.groupLabelClass,
|
|
1018
|
+
renderAdornment = _ref4.renderAdornment,
|
|
1019
|
+
requiredElement = _ref4.requiredElement;
|
|
1020
|
+
return title ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1021
|
+
className: className
|
|
1022
|
+
}, renderAdornment(exports.AdornmentPlacement.LabelStart), /*#__PURE__*/React__default["default"].createElement("label", {
|
|
1023
|
+
htmlFor: forId,
|
|
1024
|
+
className: clsx__default["default"](labelClass, group && groupLabelClass)
|
|
1025
|
+
}, title, required && requiredElement), renderAdornment(exports.AdornmentPlacement.LabelEnd), renderAdornment(exports.AdornmentPlacement.ControlStart), children, renderAdornment(exports.AdornmentPlacement.ControlEnd)) : /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, children);
|
|
1026
|
+
} finally {
|
|
1027
|
+
_effect();
|
|
1028
|
+
}
|
|
1029
|
+
}
|
|
1030
|
+
function createDefaultArrayRenderer(options) {
|
|
1031
|
+
var _ref5 = options != null ? options : {},
|
|
1032
|
+
className = _ref5.className,
|
|
1033
|
+
removableClass = _ref5.removableClass,
|
|
1034
|
+
childClass = _ref5.childClass,
|
|
1035
|
+
removableChildClass = _ref5.removableChildClass,
|
|
1036
|
+
removeActionClass = _ref5.removeActionClass,
|
|
1037
|
+
addActionClass = _ref5.addActionClass;
|
|
1038
|
+
function render(_ref6, _ref7) {
|
|
1039
|
+
var childCount = _ref6.childCount,
|
|
1040
|
+
renderChild = _ref6.renderChild,
|
|
1041
|
+
addAction = _ref6.addAction,
|
|
1042
|
+
removeAction = _ref6.removeAction,
|
|
1043
|
+
childKey = _ref6.childKey;
|
|
1044
|
+
var renderAction = _ref7.renderAction;
|
|
1045
|
+
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1046
|
+
className: clsx__default["default"](className, removeAction && removableClass)
|
|
1047
|
+
}, Array.from({
|
|
1048
|
+
length: childCount
|
|
1049
|
+
}, function (_, x) {
|
|
1050
|
+
return removeAction ? /*#__PURE__*/React__default["default"].createElement(React.Fragment, {
|
|
1051
|
+
key: childKey(x)
|
|
1052
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1053
|
+
className: clsx__default["default"](childClass, removableChildClass)
|
|
1054
|
+
}, renderChild(x)), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1055
|
+
className: removeActionClass
|
|
1056
|
+
}, renderAction(removeAction(x)))) : /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1057
|
+
key: childKey(x),
|
|
1058
|
+
className: childClass
|
|
1059
|
+
}, renderChild(x));
|
|
1060
|
+
})), addAction && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1061
|
+
className: addActionClass
|
|
1062
|
+
}, renderAction(addAction)));
|
|
1063
|
+
}
|
|
1064
|
+
return {
|
|
1065
|
+
render: render,
|
|
1066
|
+
type: "array"
|
|
1067
|
+
};
|
|
1068
|
+
}
|
|
1069
|
+
function createDefaultGroupRenderer(options) {
|
|
1070
|
+
var _ref8 = options != null ? options : {},
|
|
1071
|
+
className = _ref8.className,
|
|
1072
|
+
_ref8$gridStyles = _ref8.gridStyles,
|
|
1073
|
+
gridStyles = _ref8$gridStyles === void 0 ? defaultGridStyles : _ref8$gridStyles,
|
|
1074
|
+
_ref8$defaultGridColu = _ref8.defaultGridColumns,
|
|
1075
|
+
defaultGridColumns = _ref8$defaultGridColu === void 0 ? 2 : _ref8$defaultGridColu,
|
|
1076
|
+
gridClassName = _ref8.gridClassName,
|
|
1077
|
+
standardClassName = _ref8.standardClassName;
|
|
1078
|
+
function defaultGridStyles(_ref9) {
|
|
1079
|
+
var _ref9$columns = _ref9.columns,
|
|
1080
|
+
columns = _ref9$columns === void 0 ? defaultGridColumns : _ref9$columns;
|
|
1081
|
+
return {
|
|
1082
|
+
className: gridClassName,
|
|
1083
|
+
style: {
|
|
1084
|
+
display: "grid",
|
|
1085
|
+
gridTemplateColumns: "repeat(" + columns + ", 1fr)"
|
|
1086
|
+
}
|
|
1087
|
+
};
|
|
1088
|
+
}
|
|
1089
|
+
function render(props, defaultLabel, _ref10) {
|
|
1090
|
+
var renderLabel = _ref10.renderLabel,
|
|
1091
|
+
renderArray = _ref10.renderArray;
|
|
1092
|
+
var childCount = props.childCount,
|
|
1093
|
+
renderChild = props.renderChild,
|
|
1094
|
+
definition = props.definition;
|
|
1095
|
+
return renderLabel(defaultLabel(), props.array ? renderArray(props.array) : renderChildren());
|
|
1096
|
+
function renderChildren() {
|
|
1097
|
+
var groupOptions = definition.groupOptions;
|
|
1098
|
+
var _ref11 = isGridRenderer(groupOptions) ? gridStyles(groupOptions) : {
|
|
1099
|
+
className: standardClassName
|
|
1100
|
+
},
|
|
1101
|
+
style = _ref11.style,
|
|
1102
|
+
gcn = _ref11.className;
|
|
1103
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1104
|
+
className: clsx__default["default"](className, gcn),
|
|
1105
|
+
style: style
|
|
1106
|
+
}, Array.from({
|
|
1107
|
+
length: childCount
|
|
1108
|
+
}, function (_, x) {
|
|
1109
|
+
return renderChild(x);
|
|
1110
|
+
}));
|
|
1111
|
+
}
|
|
1112
|
+
}
|
|
1113
|
+
return {
|
|
1114
|
+
type: "group",
|
|
1115
|
+
render: render
|
|
1116
|
+
};
|
|
1117
|
+
}
|
|
1118
|
+
function createDefaultDisplayRenderer(options) {
|
|
1119
|
+
if (options === void 0) {
|
|
1120
|
+
options = {};
|
|
1121
|
+
}
|
|
1122
|
+
function doRender(_ref12) {
|
|
1123
|
+
var displayData = _ref12.definition.displayData;
|
|
1124
|
+
switch (displayData.type) {
|
|
1125
|
+
case exports.DisplayDataType.Text:
|
|
1126
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1127
|
+
className: options.textClassName
|
|
1128
|
+
}, displayData.text);
|
|
1129
|
+
case exports.DisplayDataType.Html:
|
|
1130
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1131
|
+
className: options.htmlClassName,
|
|
1132
|
+
dangerouslySetInnerHTML: {
|
|
1133
|
+
__html: displayData.html
|
|
1134
|
+
}
|
|
1135
|
+
});
|
|
1136
|
+
default:
|
|
1137
|
+
return /*#__PURE__*/React__default["default"].createElement("h1", null, "Unknown display type: ", displayData.type);
|
|
1138
|
+
}
|
|
1139
|
+
}
|
|
1140
|
+
return {
|
|
1141
|
+
render: function render(p, _ref13) {
|
|
1142
|
+
var renderVisibility = _ref13.renderVisibility;
|
|
1143
|
+
return renderVisibility(p.visible, doRender(p));
|
|
1144
|
+
},
|
|
1145
|
+
type: "display"
|
|
1146
|
+
};
|
|
1147
|
+
}
|
|
1148
|
+
var DefaultBoolOptions = [{
|
|
1149
|
+
name: "Yes",
|
|
1150
|
+
value: true
|
|
1151
|
+
}, {
|
|
1152
|
+
name: "No",
|
|
1153
|
+
value: false
|
|
1154
|
+
}];
|
|
1155
|
+
function createDefaultDataRenderer(options) {
|
|
1156
|
+
var _options$selectOption;
|
|
1157
|
+
if (options === void 0) {
|
|
1158
|
+
options = {};
|
|
1159
|
+
}
|
|
1160
|
+
var selectRenderer = createSelectRenderer((_options$selectOption = options.selectOptions) != null ? _options$selectOption : {});
|
|
1161
|
+
var _optionRenderer$boole = _extends({
|
|
1162
|
+
optionRenderer: selectRenderer,
|
|
1163
|
+
booleanOptions: DefaultBoolOptions
|
|
1164
|
+
}, options),
|
|
1165
|
+
inputClass = _optionRenderer$boole.inputClass,
|
|
1166
|
+
booleanOptions = _optionRenderer$boole.booleanOptions,
|
|
1167
|
+
optionRenderer = _optionRenderer$boole.optionRenderer;
|
|
1168
|
+
return createDataRenderer(function (props, defaultLabel, renderers) {
|
|
1169
|
+
if (props.array) {
|
|
1170
|
+
return renderers.renderArray(props.array);
|
|
1171
|
+
}
|
|
1172
|
+
var renderType = props.renderOptions.type;
|
|
1173
|
+
var fieldType = props.field.type;
|
|
1174
|
+
var isBool = fieldType === exports.FieldType.Bool;
|
|
1175
|
+
if (booleanOptions != null && isBool && props.options == null) {
|
|
1176
|
+
return renderers.renderData(_extends({}, props, {
|
|
1177
|
+
options: booleanOptions
|
|
1178
|
+
}));
|
|
1179
|
+
}
|
|
1180
|
+
if (renderType === exports.DataRenderType.Standard && hasOptions(props)) {
|
|
1181
|
+
return optionRenderer.render(props, defaultLabel, renderers);
|
|
1182
|
+
}
|
|
1183
|
+
switch (renderType) {
|
|
1184
|
+
case exports.DataRenderType.Dropdown:
|
|
1185
|
+
return selectRenderer.render(props, defaultLabel, renderers);
|
|
1186
|
+
}
|
|
1187
|
+
var l = defaultLabel();
|
|
1188
|
+
return renderers.renderLabel(l, renderType === exports.DataRenderType.Checkbox ? /*#__PURE__*/React__default["default"].createElement(core.Fcheckbox, {
|
|
1189
|
+
control: props.control
|
|
1190
|
+
}) : /*#__PURE__*/React__default["default"].createElement(ControlInput, {
|
|
1191
|
+
className: inputClass,
|
|
1192
|
+
id: l.forId,
|
|
1193
|
+
readOnly: props.readonly,
|
|
1194
|
+
control: props.control,
|
|
1195
|
+
convert: createInputConversion(props.field.type)
|
|
1196
|
+
}));
|
|
1197
|
+
});
|
|
1198
|
+
}
|
|
1199
|
+
function ControlInput(_ref14) {
|
|
1200
|
+
var _effect2 = core.useComponentTracking();
|
|
1201
|
+
try {
|
|
1202
|
+
var control = _ref14.control,
|
|
1203
|
+
convert = _ref14.convert,
|
|
1204
|
+
props = _objectWithoutPropertiesLoose(_ref14, _excluded);
|
|
1205
|
+
var _formControlProps = core.formControlProps(control),
|
|
1206
|
+
errorText = _formControlProps.errorText,
|
|
1207
|
+
value = _formControlProps.value,
|
|
1208
|
+
onChange = _formControlProps.onChange,
|
|
1209
|
+
inputProps = _objectWithoutPropertiesLoose(_formControlProps, _excluded2);
|
|
1210
|
+
return /*#__PURE__*/React__default["default"].createElement("input", _extends({}, inputProps, {
|
|
1211
|
+
type: convert[0],
|
|
1212
|
+
value: value == null ? "" : convert[2](value),
|
|
1213
|
+
onChange: function onChange(e) {
|
|
1214
|
+
control.value = convert[1](e.target.value);
|
|
1215
|
+
}
|
|
1216
|
+
}, props));
|
|
1217
|
+
} finally {
|
|
1218
|
+
_effect2();
|
|
1219
|
+
}
|
|
1220
|
+
}
|
|
1221
|
+
function createDefaultAdornmentRenderer(options) {
|
|
1222
|
+
return {
|
|
1223
|
+
type: "adornment",
|
|
1224
|
+
render: function render() {
|
|
1225
|
+
return {};
|
|
1226
|
+
}
|
|
1227
|
+
};
|
|
1228
|
+
}
|
|
1229
|
+
function createDefaultVisibilityRenderer(options) {
|
|
1230
|
+
return {
|
|
1231
|
+
type: "visibility",
|
|
1232
|
+
render: function render(visible, children) {
|
|
1233
|
+
return visible.value ? children : /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null);
|
|
1234
|
+
}
|
|
1235
|
+
};
|
|
1236
|
+
}
|
|
1237
|
+
function createDefaultRenderers(options) {
|
|
1238
|
+
if (options === void 0) {
|
|
1239
|
+
options = {};
|
|
1240
|
+
}
|
|
1241
|
+
return {
|
|
1242
|
+
data: createDefaultDataRenderer(options.data),
|
|
1243
|
+
display: createDefaultDisplayRenderer(options.display),
|
|
1244
|
+
action: createDefaultActionRenderer(options.action),
|
|
1245
|
+
array: createDefaultArrayRenderer(options.array),
|
|
1246
|
+
group: createDefaultGroupRenderer(options.group),
|
|
1247
|
+
label: createDefaultLabelRenderer(options.label),
|
|
1248
|
+
visibility: createDefaultVisibilityRenderer(),
|
|
1249
|
+
adornment: createDefaultAdornmentRenderer()
|
|
1250
|
+
};
|
|
1251
|
+
}
|
|
1252
|
+
function createClassStyledRenderers() {
|
|
1253
|
+
return createDefaultRenderers({
|
|
1254
|
+
label: {
|
|
1255
|
+
className: "control"
|
|
1256
|
+
},
|
|
1257
|
+
group: {
|
|
1258
|
+
className: "group"
|
|
1259
|
+
},
|
|
1260
|
+
array: {
|
|
1261
|
+
className: "control-array"
|
|
1262
|
+
},
|
|
1263
|
+
action: {
|
|
1264
|
+
className: "action"
|
|
1265
|
+
},
|
|
1266
|
+
data: {
|
|
1267
|
+
inputClass: "data"
|
|
1268
|
+
},
|
|
1269
|
+
display: {
|
|
1270
|
+
htmlClassName: "html",
|
|
1271
|
+
textClassName: "text"
|
|
1272
|
+
}
|
|
1273
|
+
});
|
|
1274
|
+
}
|
|
1275
|
+
function isAdornmentRegistration(x) {
|
|
1276
|
+
return x.type === "adornment";
|
|
1277
|
+
}
|
|
1278
|
+
function isDataRegistration(x) {
|
|
1279
|
+
return x.type === "data";
|
|
1280
|
+
}
|
|
1281
|
+
function isLabelRegistration(x) {
|
|
1282
|
+
return x.type === "label";
|
|
1283
|
+
}
|
|
1284
|
+
function isActionRegistration(x) {
|
|
1285
|
+
return x.type === "action";
|
|
1286
|
+
}
|
|
1287
|
+
function isVisibilityRegistration(x) {
|
|
1288
|
+
return x.type === "visibility";
|
|
1289
|
+
}
|
|
1290
|
+
function isOneOf(x, v) {
|
|
1291
|
+
return x == null ? true : Array.isArray(x) ? x.includes(v) : v === x;
|
|
1292
|
+
}
|
|
1293
|
+
function createDataRenderer(render, options) {
|
|
1294
|
+
return _extends({
|
|
1295
|
+
type: "data",
|
|
1296
|
+
render: render
|
|
1297
|
+
}, options);
|
|
1298
|
+
}
|
|
1299
|
+
function createDataRendererLabelled(_render, options) {
|
|
1300
|
+
return _extends({
|
|
1301
|
+
type: "data",
|
|
1302
|
+
render: function render(props, defaultLabel, renderers) {
|
|
1303
|
+
var dl = defaultLabel();
|
|
1304
|
+
return renderers.renderLabel(dl, _render(props, dl.forId, renderers));
|
|
1305
|
+
}
|
|
1306
|
+
}, options);
|
|
1307
|
+
}
|
|
1308
|
+
function createLabelRenderer(options) {
|
|
1309
|
+
return _extends({
|
|
1310
|
+
type: "label"
|
|
1311
|
+
}, options);
|
|
1312
|
+
}
|
|
1313
|
+
function createAdornmentRenderer(render, options) {
|
|
1314
|
+
return _extends({
|
|
1315
|
+
type: "adornment"
|
|
1316
|
+
}, options, {
|
|
1317
|
+
render: render
|
|
1318
|
+
});
|
|
1319
|
+
}
|
|
1320
|
+
function createSelectRenderer(options) {
|
|
1321
|
+
if (options === void 0) {
|
|
1322
|
+
options = {};
|
|
1323
|
+
}
|
|
1324
|
+
return createDataRendererLabelled(function (props, id) {
|
|
1325
|
+
return /*#__PURE__*/React__default["default"].createElement(SelectDataRenderer, {
|
|
1326
|
+
className: options.className,
|
|
1327
|
+
state: props.control,
|
|
1328
|
+
id: id,
|
|
1329
|
+
options: props.options,
|
|
1330
|
+
required: props.required,
|
|
1331
|
+
emptyText: options.emptyText,
|
|
1332
|
+
requiredText: options.requiredText,
|
|
1333
|
+
convert: createSelectConversion(props.field.type)
|
|
1334
|
+
});
|
|
1335
|
+
}, {
|
|
1336
|
+
options: true
|
|
1337
|
+
});
|
|
1338
|
+
}
|
|
1339
|
+
function SelectDataRenderer(_ref15) {
|
|
1340
|
+
var _effect3 = core.useComponentTracking();
|
|
1341
|
+
try {
|
|
1342
|
+
var state = _ref15.state,
|
|
1343
|
+
options = _ref15.options,
|
|
1344
|
+
className = _ref15.className,
|
|
1345
|
+
convert = _ref15.convert,
|
|
1346
|
+
required = _ref15.required,
|
|
1347
|
+
_ref15$emptyText = _ref15.emptyText,
|
|
1348
|
+
emptyText = _ref15$emptyText === void 0 ? "N/A" : _ref15$emptyText,
|
|
1349
|
+
_ref15$requiredText = _ref15.requiredText,
|
|
1350
|
+
requiredText = _ref15$requiredText === void 0 ? "<please select>" : _ref15$requiredText,
|
|
1351
|
+
props = _objectWithoutPropertiesLoose(_ref15, _excluded3);
|
|
1352
|
+
var value = state.value,
|
|
1353
|
+
disabled = state.disabled;
|
|
1354
|
+
var _useState = React.useState(!required || value == null),
|
|
1355
|
+
showEmpty = _useState[0];
|
|
1356
|
+
var optionStringMap = React.useMemo(function () {
|
|
1357
|
+
return Object.fromEntries(options.map(function (x) {
|
|
1358
|
+
return [convert(x.value), x.value];
|
|
1359
|
+
}));
|
|
1360
|
+
}, [options]);
|
|
1361
|
+
return /*#__PURE__*/React__default["default"].createElement("select", _extends({}, props, {
|
|
1362
|
+
className: className,
|
|
1363
|
+
onChange: function onChange(v) {
|
|
1364
|
+
return state.value = optionStringMap[v.target.value];
|
|
1365
|
+
},
|
|
1366
|
+
value: convert(value),
|
|
1367
|
+
disabled: disabled
|
|
1368
|
+
}), showEmpty && /*#__PURE__*/React__default["default"].createElement("option", {
|
|
1369
|
+
value: ""
|
|
1370
|
+
}, required ? requiredText : emptyText), options.map(function (x, i) {
|
|
1371
|
+
return /*#__PURE__*/React__default["default"].createElement("option", {
|
|
1372
|
+
key: i,
|
|
1373
|
+
value: convert(x.value),
|
|
1374
|
+
disabled: x.disabled
|
|
1375
|
+
}, x.name);
|
|
1376
|
+
}));
|
|
1377
|
+
} finally {
|
|
1378
|
+
_effect3();
|
|
1379
|
+
}
|
|
1380
|
+
}
|
|
1381
|
+
function createSelectConversion(ft) {
|
|
1382
|
+
switch (ft) {
|
|
1383
|
+
case exports.FieldType.String:
|
|
1384
|
+
case exports.FieldType.Int:
|
|
1385
|
+
case exports.FieldType.Double:
|
|
1386
|
+
return function (a) {
|
|
1387
|
+
return a;
|
|
1388
|
+
};
|
|
1389
|
+
default:
|
|
1390
|
+
return function (a) {
|
|
1391
|
+
var _a$toString;
|
|
1392
|
+
return (_a$toString = a == null ? void 0 : a.toString()) != null ? _a$toString : "";
|
|
1393
|
+
};
|
|
1394
|
+
}
|
|
1395
|
+
}
|
|
1396
|
+
function createInputConversion(ft) {
|
|
1397
|
+
switch (ft) {
|
|
1398
|
+
case exports.FieldType.String:
|
|
1399
|
+
return ["text", function (a) {
|
|
1400
|
+
return a;
|
|
1401
|
+
}, function (a) {
|
|
1402
|
+
return a;
|
|
1403
|
+
}];
|
|
1404
|
+
case exports.FieldType.Bool:
|
|
1405
|
+
return ["text", function (a) {
|
|
1406
|
+
return a === "true";
|
|
1407
|
+
}, function (a) {
|
|
1408
|
+
var _a$toString2;
|
|
1409
|
+
return (_a$toString2 = a == null ? void 0 : a.toString()) != null ? _a$toString2 : "";
|
|
1410
|
+
}];
|
|
1411
|
+
case exports.FieldType.Int:
|
|
1412
|
+
return ["number", function (a) {
|
|
1413
|
+
return a !== "" ? parseInt(a) : null;
|
|
1414
|
+
}, function (a) {
|
|
1415
|
+
return a == null ? "" : a;
|
|
1416
|
+
}];
|
|
1417
|
+
case exports.FieldType.Date:
|
|
1418
|
+
return ["date", function (a) {
|
|
1419
|
+
return a;
|
|
1420
|
+
}, function (a) {
|
|
1421
|
+
return a;
|
|
1422
|
+
}];
|
|
1423
|
+
case exports.FieldType.Double:
|
|
1424
|
+
return ["number", function (a) {
|
|
1425
|
+
return parseFloat(a);
|
|
1426
|
+
}, function (a) {
|
|
1427
|
+
return a;
|
|
1428
|
+
}];
|
|
1429
|
+
default:
|
|
1430
|
+
return ["text", function (a) {
|
|
1431
|
+
return a;
|
|
1432
|
+
}, function (a) {
|
|
1433
|
+
return a;
|
|
1434
|
+
}];
|
|
1435
|
+
}
|
|
1436
|
+
}
|
|
1437
|
+
|
|
1438
|
+
var defaultTailwindTheme = {
|
|
1439
|
+
label: {
|
|
1440
|
+
className: "flex flex-col",
|
|
1441
|
+
groupLabelClass: "font-bold",
|
|
1442
|
+
requiredElement: /*#__PURE__*/React__default["default"].createElement("span", {
|
|
1443
|
+
className: "text-red-500"
|
|
1444
|
+
}, " *")
|
|
1445
|
+
},
|
|
1446
|
+
array: {
|
|
1447
|
+
removableClass: "grid grid-cols-[1fr_auto] items-center gap-x-2",
|
|
1448
|
+
childClass: "grow"
|
|
1449
|
+
},
|
|
1450
|
+
group: {
|
|
1451
|
+
standardClassName: "space-y-4",
|
|
1452
|
+
gridClassName: "gap-x-2 gap-y-4"
|
|
1453
|
+
},
|
|
1454
|
+
action: {
|
|
1455
|
+
className: "bg-primary rounded-lg p-3 text-white"
|
|
1456
|
+
}
|
|
1457
|
+
};
|
|
572
1458
|
|
|
1459
|
+
exports.AlwaysVisible = AlwaysVisible;
|
|
1460
|
+
exports.ControlInput = ControlInput;
|
|
1461
|
+
exports.DefaultBoolOptions = DefaultBoolOptions;
|
|
1462
|
+
exports.DefaultLabelRenderer = DefaultLabelRenderer;
|
|
573
1463
|
exports.FormRendererProvider = FormRendererProvider;
|
|
1464
|
+
exports.SelectDataRenderer = SelectDataRenderer;
|
|
574
1465
|
exports.applyDefaultForField = applyDefaultForField;
|
|
575
1466
|
exports.applyDefaultValues = applyDefaultValues;
|
|
576
1467
|
exports.boolField = boolField;
|
|
@@ -578,11 +1469,31 @@ exports.buildSchema = buildSchema;
|
|
|
578
1469
|
exports.compoundField = compoundField;
|
|
579
1470
|
exports.controlForField = controlForField;
|
|
580
1471
|
exports.controlTitle = controlTitle;
|
|
1472
|
+
exports.createAction = createAction;
|
|
1473
|
+
exports.createAdornmentRenderer = createAdornmentRenderer;
|
|
1474
|
+
exports.createDataRenderer = createDataRenderer;
|
|
1475
|
+
exports.createDataRendererLabelled = createDataRendererLabelled;
|
|
1476
|
+
exports.createDefaultActionRenderer = createDefaultActionRenderer;
|
|
1477
|
+
exports.createDefaultAdornmentRenderer = createDefaultAdornmentRenderer;
|
|
1478
|
+
exports.createDefaultArrayRenderer = createDefaultArrayRenderer;
|
|
1479
|
+
exports.createDefaultDataRenderer = createDefaultDataRenderer;
|
|
1480
|
+
exports.createDefaultDisplayRenderer = createDefaultDisplayRenderer;
|
|
1481
|
+
exports.createDefaultGroupRenderer = createDefaultGroupRenderer;
|
|
1482
|
+
exports.createDefaultLabelRenderer = createDefaultLabelRenderer;
|
|
1483
|
+
exports.createDefaultRenderers = createDefaultRenderers;
|
|
1484
|
+
exports.createDefaultSchemaHooks = createDefaultSchemaHooks;
|
|
1485
|
+
exports.createDefaultVisibilityRenderer = createDefaultVisibilityRenderer;
|
|
581
1486
|
exports.createFormEditHooks = createFormEditHooks;
|
|
1487
|
+
exports.createFormRenderer = createFormRenderer;
|
|
1488
|
+
exports.createInputConversion = createInputConversion;
|
|
1489
|
+
exports.createLabelRenderer = createLabelRenderer;
|
|
1490
|
+
exports.createSelectConversion = createSelectConversion;
|
|
1491
|
+
exports.createSelectRenderer = createSelectRenderer;
|
|
582
1492
|
exports.dataControl = dataControl;
|
|
583
1493
|
exports.defaultCompoundField = defaultCompoundField;
|
|
584
|
-
exports.
|
|
1494
|
+
exports.defaultFormEditHooks = defaultFormEditHooks;
|
|
585
1495
|
exports.defaultScalarField = defaultScalarField;
|
|
1496
|
+
exports.defaultTailwindTheme = defaultTailwindTheme;
|
|
586
1497
|
exports.defaultValueForField = defaultValueForField;
|
|
587
1498
|
exports.defaultValueForFields = defaultValueForFields;
|
|
588
1499
|
exports.elementValueForField = elementValueForField;
|
|
@@ -595,12 +1506,14 @@ exports.findField = findField;
|
|
|
595
1506
|
exports.findScalarField = findScalarField;
|
|
596
1507
|
exports.getDefaultScalarControlProperties = getDefaultScalarControlProperties;
|
|
597
1508
|
exports.getOptionsForScalarField = getOptionsForScalarField;
|
|
1509
|
+
exports.hasOptions = hasOptions;
|
|
598
1510
|
exports.intField = intField;
|
|
599
1511
|
exports.isActionControlsDefinition = isActionControlsDefinition;
|
|
600
1512
|
exports.isCompoundField = isCompoundField;
|
|
601
1513
|
exports.isDataControl = isDataControl;
|
|
602
1514
|
exports.isDataControlDefinition = isDataControlDefinition;
|
|
603
1515
|
exports.isDisplayControlsDefinition = isDisplayControlsDefinition;
|
|
1516
|
+
exports.isGridRenderer = isGridRenderer;
|
|
604
1517
|
exports.isGroupControl = isGroupControl;
|
|
605
1518
|
exports.isGroupControlsDefinition = isGroupControlsDefinition;
|
|
606
1519
|
exports.isScalarField = isScalarField;
|
|
@@ -613,6 +1526,7 @@ exports.useDefaultValue = useDefaultValue;
|
|
|
613
1526
|
exports.useFormRendererComponents = useFormRendererComponents;
|
|
614
1527
|
exports.useIsControlVisible = useIsControlVisible;
|
|
615
1528
|
exports.visibility = visibility;
|
|
1529
|
+
exports.visitControlData = visitControlData;
|
|
616
1530
|
exports.visitControlDefinition = visitControlDefinition;
|
|
617
1531
|
exports.withScalarOptions = withScalarOptions;
|
|
618
1532
|
//# sourceMappingURL=index.js.map
|