@nocobase/client 0.7.2-alpha.6 → 0.7.4-alpha.1

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.
Files changed (149) hide show
  1. package/es/application/Application.d.ts +1 -0
  2. package/es/application/Application.js +7 -1
  3. package/es/block-provider/FormBlockProvider.js +8 -3
  4. package/es/block-provider/TableFieldProvider.d.ts +1 -0
  5. package/es/block-provider/TableFieldProvider.js +5 -2
  6. package/es/block-provider/TableSelectorProvider.js +41 -13
  7. package/es/block-provider/hooks/index.d.ts +6 -0
  8. package/es/block-provider/hooks/index.js +159 -65
  9. package/es/collection-manager/CollectionField.js +4 -2
  10. package/es/collection-manager/Configuration/index.js +5 -1
  11. package/es/collection-manager/Configuration/schemas/collections.js +2 -1
  12. package/es/collection-manager/interfaces/input.js +103 -0
  13. package/es/collection-manager/interfaces/integer.js +63 -0
  14. package/es/collection-manager/interfaces/m2m.js +2 -0
  15. package/es/collection-manager/interfaces/m2o.js +1 -0
  16. package/es/collection-manager/interfaces/markdown.js +34 -0
  17. package/es/collection-manager/interfaces/number.js +55 -0
  18. package/es/collection-manager/interfaces/o2m.js +1 -0
  19. package/es/collection-manager/interfaces/o2o.js +3 -0
  20. package/es/collection-manager/interfaces/password.js +36 -1
  21. package/es/collection-manager/interfaces/percent.js +97 -0
  22. package/es/collection-manager/interfaces/properties/index.d.ts +1 -0
  23. package/es/collection-manager/interfaces/properties/index.js +1 -0
  24. package/es/collection-manager/interfaces/properties/operators.js +4 -4
  25. package/es/collection-manager/interfaces/richText.js +34 -0
  26. package/es/collection-manager/interfaces/textarea.js +34 -0
  27. package/es/file-manager/FileStorageShortcut.js +2 -2
  28. package/es/locale/en_US.d.ts +8 -2
  29. package/es/locale/en_US.js +9 -3
  30. package/es/locale/zh_CN.d.ts +26 -2
  31. package/es/locale/zh_CN.js +27 -3
  32. package/es/plugin-manager/PluginManager.d.ts +1 -0
  33. package/es/plugin-manager/PluginManager.js +20 -6
  34. package/es/schema-component/antd/action/Action.Modal.js +1 -1
  35. package/es/schema-component/antd/calendar/Calendar.Designer.js +16 -10
  36. package/es/schema-component/antd/date-picker/DatePicker.d.ts +1 -1
  37. package/es/schema-component/antd/date-picker/DatePicker.js +1 -1
  38. package/es/schema-component/antd/date-picker/ReadPretty.js +1 -1
  39. package/es/schema-component/antd/date-picker/util.d.ts +0 -10
  40. package/es/schema-component/antd/date-picker/util.js +1 -79
  41. package/es/schema-component/antd/form-item/FormItem.js +161 -10
  42. package/es/schema-component/antd/grid/Grid.js +72 -6
  43. package/es/schema-component/antd/input-number/InputNumber.d.ts +1 -5
  44. package/es/schema-component/antd/input-number/InputNumber.js +25 -1
  45. package/es/schema-component/antd/input-number/ReadPretty.js +2 -4
  46. package/es/schema-component/antd/kanban/Kanban.Card.Designer.js +20 -14
  47. package/es/schema-component/antd/menu/Menu.js +6 -3
  48. package/es/schema-component/antd/percent/Percent.js +2 -2
  49. package/es/schema-component/antd/record-picker/InputRecordPicker.js +27 -13
  50. package/es/schema-component/antd/record-picker/ReadPrettyRecordPicker.js +5 -3
  51. package/es/schema-component/antd/table/Table.Array.js +2 -2
  52. package/es/schema-component/antd/table/Table.Void.js +11 -1
  53. package/es/schema-component/antd/table-v2/Table.Column.Designer.js +3 -1
  54. package/es/schema-component/antd/table-v2/Table.d.ts +0 -11
  55. package/es/schema-component/antd/table-v2/Table.js +163 -92
  56. package/es/schema-component/antd/table-v2/TableField.js +3 -0
  57. package/es/schema-component/antd/tabs/Tabs.Designer.js +23 -12
  58. package/es/schema-component/antd/tabs/Tabs.js +7 -1
  59. package/es/schema-component/antd/time-picker/ReadPretty.js +11 -5
  60. package/es/schema-component/core/DesignableSwitch.js +7 -1
  61. package/es/schema-component/hooks/useDesignable.js +21 -21
  62. package/es/schema-component/hooks/useProps.js +1 -1
  63. package/es/schema-initializer/buttons/FormItemInitializers.js +14 -3
  64. package/es/schema-initializer/buttons/ReadPrettyFormActionInitializers.js +8 -0
  65. package/es/schema-initializer/buttons/ReadPrettyFormItemInitializers.js +14 -3
  66. package/es/schema-initializer/buttons/RecordBlockInitializers.js +32 -3
  67. package/es/schema-initializer/buttons/TabPaneInitializers.js +11 -3
  68. package/es/schema-initializer/buttons/TableActionInitializers.js +11 -0
  69. package/es/schema-initializer/components/assigned-field/AssignedField.d.ts +4 -0
  70. package/es/schema-initializer/components/assigned-field/AssignedField.js +255 -69
  71. package/es/schema-initializer/items/index.d.ts +2 -0
  72. package/es/schema-initializer/items/index.js +48 -2
  73. package/es/schema-initializer/utils.js +22 -2
  74. package/es/system-settings/SystemSettingsShortcut.js +35 -12
  75. package/lib/application/Application.d.ts +1 -0
  76. package/lib/application/Application.js +11 -2
  77. package/lib/block-provider/FormBlockProvider.js +7 -2
  78. package/lib/block-provider/TableFieldProvider.d.ts +1 -0
  79. package/lib/block-provider/TableFieldProvider.js +4 -1
  80. package/lib/block-provider/TableSelectorProvider.js +41 -13
  81. package/lib/block-provider/hooks/index.d.ts +6 -0
  82. package/lib/block-provider/hooks/index.js +168 -67
  83. package/lib/collection-manager/CollectionField.js +5 -2
  84. package/lib/collection-manager/Configuration/index.js +5 -0
  85. package/lib/collection-manager/Configuration/schemas/collections.js +2 -1
  86. package/lib/collection-manager/interfaces/input.js +104 -0
  87. package/lib/collection-manager/interfaces/integer.js +65 -0
  88. package/lib/collection-manager/interfaces/m2m.js +2 -0
  89. package/lib/collection-manager/interfaces/m2o.js +1 -0
  90. package/lib/collection-manager/interfaces/markdown.js +35 -0
  91. package/lib/collection-manager/interfaces/number.js +56 -0
  92. package/lib/collection-manager/interfaces/o2m.js +1 -0
  93. package/lib/collection-manager/interfaces/o2o.js +3 -0
  94. package/lib/collection-manager/interfaces/password.js +37 -1
  95. package/lib/collection-manager/interfaces/percent.js +99 -0
  96. package/lib/collection-manager/interfaces/properties/index.d.ts +1 -0
  97. package/lib/collection-manager/interfaces/properties/index.js +1 -0
  98. package/lib/collection-manager/interfaces/properties/operators.js +4 -4
  99. package/lib/collection-manager/interfaces/richText.js +35 -0
  100. package/lib/collection-manager/interfaces/textarea.js +35 -0
  101. package/lib/file-manager/FileStorageShortcut.js +1 -1
  102. package/lib/locale/en_US.d.ts +8 -2
  103. package/lib/locale/en_US.js +9 -3
  104. package/lib/locale/zh_CN.d.ts +26 -2
  105. package/lib/locale/zh_CN.js +27 -3
  106. package/lib/plugin-manager/PluginManager.d.ts +1 -0
  107. package/lib/plugin-manager/PluginManager.js +23 -5
  108. package/lib/schema-component/antd/action/Action.Modal.js +1 -1
  109. package/lib/schema-component/antd/calendar/Calendar.Designer.js +16 -10
  110. package/lib/schema-component/antd/date-picker/DatePicker.d.ts +1 -1
  111. package/lib/schema-component/antd/date-picker/DatePicker.js +2 -2
  112. package/lib/schema-component/antd/date-picker/ReadPretty.js +6 -6
  113. package/lib/schema-component/antd/date-picker/util.d.ts +0 -10
  114. package/lib/schema-component/antd/date-picker/util.js +6 -89
  115. package/lib/schema-component/antd/form-item/FormItem.js +164 -12
  116. package/lib/schema-component/antd/grid/Grid.js +69 -3
  117. package/lib/schema-component/antd/input-number/InputNumber.d.ts +1 -5
  118. package/lib/schema-component/antd/input-number/InputNumber.js +28 -1
  119. package/lib/schema-component/antd/input-number/ReadPretty.js +2 -5
  120. package/lib/schema-component/antd/kanban/Kanban.Card.Designer.js +20 -14
  121. package/lib/schema-component/antd/menu/Menu.js +6 -3
  122. package/lib/schema-component/antd/percent/Percent.js +2 -2
  123. package/lib/schema-component/antd/record-picker/InputRecordPicker.js +27 -12
  124. package/lib/schema-component/antd/record-picker/ReadPrettyRecordPicker.js +4 -2
  125. package/lib/schema-component/antd/table/Table.Array.js +2 -2
  126. package/lib/schema-component/antd/table/Table.Void.js +11 -1
  127. package/lib/schema-component/antd/table-v2/Table.Column.Designer.js +3 -1
  128. package/lib/schema-component/antd/table-v2/Table.d.ts +0 -11
  129. package/lib/schema-component/antd/table-v2/Table.js +172 -94
  130. package/lib/schema-component/antd/table-v2/TableField.js +3 -0
  131. package/lib/schema-component/antd/tabs/Tabs.Designer.js +23 -12
  132. package/lib/schema-component/antd/tabs/Tabs.js +8 -1
  133. package/lib/schema-component/antd/time-picker/ReadPretty.js +10 -3
  134. package/lib/schema-component/core/DesignableSwitch.js +8 -1
  135. package/lib/schema-component/hooks/useDesignable.js +21 -21
  136. package/lib/schema-component/hooks/useProps.js +1 -1
  137. package/lib/schema-initializer/buttons/FormItemInitializers.js +14 -2
  138. package/lib/schema-initializer/buttons/ReadPrettyFormActionInitializers.js +8 -0
  139. package/lib/schema-initializer/buttons/ReadPrettyFormItemInitializers.js +14 -2
  140. package/lib/schema-initializer/buttons/RecordBlockInitializers.js +34 -4
  141. package/lib/schema-initializer/buttons/TabPaneInitializers.js +11 -3
  142. package/lib/schema-initializer/buttons/TableActionInitializers.js +11 -0
  143. package/lib/schema-initializer/components/assigned-field/AssignedField.d.ts +4 -0
  144. package/lib/schema-initializer/components/assigned-field/AssignedField.js +257 -66
  145. package/lib/schema-initializer/items/index.d.ts +2 -0
  146. package/lib/schema-initializer/items/index.js +54 -2
  147. package/lib/schema-initializer/utils.js +22 -2
  148. package/lib/system-settings/SystemSettingsShortcut.js +37 -13
  149. package/package.json +7 -4
@@ -5,14 +5,20 @@ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" =
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.AssignedField = void 0;
8
+ exports.AssignedFieldValueType = exports.AssignedField = void 0;
9
9
 
10
10
  var _react = require("@formily/react");
11
11
 
12
+ var _shared = require("@formily/shared");
13
+
14
+ var _antd = require("antd");
15
+
12
16
  var _react2 = _interopRequireWildcard(require("react"));
13
17
 
14
18
  var _reactI18next = require("react-i18next");
15
19
 
20
+ var _blockProvider = require("../../../block-provider");
21
+
16
22
  var _collectionManager = require("../../../collection-manager");
17
23
 
18
24
  var _schemaComponent = require("../../../schema-component");
@@ -21,12 +27,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
21
27
 
22
28
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
29
 
24
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
25
-
26
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
27
-
28
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
29
-
30
30
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
31
31
 
32
32
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -39,77 +39,268 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
39
39
 
40
40
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
41
41
 
42
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
43
+
44
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
45
+
46
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
47
+
48
+ var DYNAMIC_RECORD_REG = /\{\{\s*currentRecord\.(.*)\s*\}\}/;
49
+ var DYNAMIC_USER_REG = /\{\{\s*currentUser\.(.*)\s*\}\}/;
50
+ var DYNAMIC_TIME_REG = /\{\{\s*currentTime\s*\}\}/;
51
+
52
+ var InternalField = function InternalField(props) {
53
+ var field = (0, _react.useField)();
54
+ var fieldSchema = (0, _react.useFieldSchema)();
55
+
56
+ var _useCollectionField = (0, _collectionManager.useCollectionField)(),
57
+ name = _useCollectionField.name,
58
+ interfaceType = _useCollectionField.interface,
59
+ uiSchema = _useCollectionField.uiSchema;
60
+
61
+ var component = (0, _schemaComponent.useComponent)(uiSchema === null || uiSchema === void 0 ? void 0 : uiSchema['x-component']);
62
+ var compile = (0, _schemaComponent.useCompile)();
63
+
64
+ var setFieldProps = function setFieldProps(key, value) {
65
+ field[key] = typeof field[key] === 'undefined' ? value : field[key];
66
+ };
67
+
68
+ var setRequired = function setRequired() {
69
+ if (typeof fieldSchema['required'] === 'undefined') {
70
+ field.required = !!uiSchema['required'];
71
+ }
72
+ };
73
+
74
+ var ctx = (0, _blockProvider.useFormBlockContext)();
75
+ (0, _react2.useEffect)(function () {
76
+ if (ctx === null || ctx === void 0 ? void 0 : ctx.field) {
77
+ ctx.field.added = ctx.field.added || new Set();
78
+ ctx.field.added.add(fieldSchema.name);
79
+ }
80
+ });
81
+ (0, _react2.useEffect)(function () {
82
+ if (!uiSchema) {
83
+ return;
84
+ }
85
+
86
+ setFieldProps('content', uiSchema['x-content']);
87
+ setFieldProps('title', uiSchema.title);
88
+ setFieldProps('description', uiSchema.description);
89
+ setFieldProps('initialValue', uiSchema.default);
90
+
91
+ if (!field.validator && uiSchema['x-validator']) {
92
+ field.validator = uiSchema['x-validator'];
93
+ }
94
+
95
+ if (fieldSchema['x-disabled'] === true) {
96
+ field.disabled = true;
97
+ }
98
+
99
+ if (fieldSchema['x-read-pretty'] === true) {
100
+ field.readPretty = true;
101
+ }
102
+
103
+ setRequired(); // @ts-ignore
104
+
105
+ field.dataSource = uiSchema.enum;
106
+ var originalProps = compile(uiSchema['x-component-props']) || {};
107
+ var componentProps = (0, _shared.merge)(originalProps, field.componentProps || {});
108
+ field.componentProps = componentProps; // field.component = [component, componentProps];
109
+ }, [JSON.stringify(uiSchema)]);
110
+
111
+ if (!uiSchema) {
112
+ return null;
113
+ }
114
+
115
+ return /*#__PURE__*/_react2.default.createElement(component, props, props.children);
116
+ };
117
+
118
+ var CollectionField = (0, _react.connect)(function (props) {
119
+ var fieldSchema = (0, _react.useFieldSchema)();
120
+ return /*#__PURE__*/_react2.default.createElement(_collectionManager.CollectionFieldProvider, {
121
+ name: fieldSchema.name
122
+ }, /*#__PURE__*/_react2.default.createElement(InternalField, _objectSpread({}, props)));
123
+ });
124
+ var AssignedFieldValueType;
125
+ exports.AssignedFieldValueType = AssignedFieldValueType;
126
+
127
+ (function (AssignedFieldValueType) {
128
+ AssignedFieldValueType["ConstantValue"] = "constantValue";
129
+ AssignedFieldValueType["DynamicValue"] = "dynamicValue";
130
+ })(AssignedFieldValueType || (exports.AssignedFieldValueType = AssignedFieldValueType = {}));
131
+
42
132
  var AssignedField = function AssignedField(props) {
43
- var _field$value$value, _field$value;
133
+ var _initFieldType, _DYNAMIC_RECORD_REG$e, _DYNAMIC_RECORD_REG$e2, _DYNAMIC_RECORD_REG$e3, _DYNAMIC_USER_REG$exe, _DYNAMIC_USER_REG$exe2, _DYNAMIC_USER_REG$exe3;
44
134
 
45
135
  var _useTranslation = (0, _reactI18next.useTranslation)(),
46
136
  t = _useTranslation.t;
47
137
 
48
138
  var compile = (0, _schemaComponent.useCompile)();
49
139
  var field = (0, _react.useField)();
50
- var fieldSchema = (0, _react.useFieldSchema)(); // const [type, setType] = useState<string>('constantValue');
140
+ var fieldSchema = (0, _react.useFieldSchema)();
141
+ var isDynamicValue = DYNAMIC_RECORD_REG.test(field.value) || DYNAMIC_USER_REG.test(field.value) || DYNAMIC_TIME_REG.test(field.value);
142
+ var initType = isDynamicValue ? AssignedFieldValueType.DynamicValue : AssignedFieldValueType.ConstantValue;
51
143
 
52
- var _useState = (0, _react2.useState)((_field$value$value = field === null || field === void 0 ? void 0 : (_field$value = field.value) === null || _field$value === void 0 ? void 0 : _field$value.value) !== null && _field$value$value !== void 0 ? _field$value$value : ''),
144
+ var _useState = (0, _react2.useState)(initType),
53
145
  _useState2 = _slicedToArray(_useState, 2),
54
- value = _useState2[0],
55
- setValue = _useState2[1]; // const [options, setOptions] = useState<any[]>([]);
56
- // const { getField } = useCollection();
57
- // const collectionField = getField(fieldSchema.name);
58
- // const { uiSchema } = collectionField;
59
- // const currentUser = useFilterOptions('users');
60
- // const currentRecord = useFilterOptions(collectionField.collectionName);
61
- // useEffect(() => {
62
- // const opt = [
63
- // {
64
- // name: 'currentUser',
65
- // title: t('Current user'),
66
- // children: [...currentUser],
67
- // },
68
- // {
69
- // name: 'currentRecord',
70
- // title: t('Current record'),
71
- // children: [...currentRecord],
72
- // },
73
- // ];
74
- // setOptions(compile(opt));
75
- // }, []);
146
+ type = _useState2[0],
147
+ setType = _useState2[1];
148
+
149
+ var initFieldType = (_initFieldType = {}, _defineProperty(_initFieldType, "".concat(DYNAMIC_TIME_REG.test(field.value)), 'currentTime'), _defineProperty(_initFieldType, "".concat(DYNAMIC_USER_REG.test(field.value)), 'currentUser'), _defineProperty(_initFieldType, "".concat(DYNAMIC_RECORD_REG.test(field.value)), 'currentRecord'), _initFieldType);
150
+
151
+ var _useState3 = (0, _react2.useState)(initFieldType['true']),
152
+ _useState4 = _slicedToArray(_useState3, 2),
153
+ fieldType = _useState4[0],
154
+ setFieldType = _useState4[1];
155
+
156
+ var initRecordValue = (_DYNAMIC_RECORD_REG$e = (_DYNAMIC_RECORD_REG$e2 = DYNAMIC_RECORD_REG.exec(field.value)) === null || _DYNAMIC_RECORD_REG$e2 === void 0 ? void 0 : (_DYNAMIC_RECORD_REG$e3 = _DYNAMIC_RECORD_REG$e2[1]) === null || _DYNAMIC_RECORD_REG$e3 === void 0 ? void 0 : _DYNAMIC_RECORD_REG$e3.split('.')) !== null && _DYNAMIC_RECORD_REG$e !== void 0 ? _DYNAMIC_RECORD_REG$e : [];
157
+
158
+ var _useState5 = (0, _react2.useState)(initRecordValue),
159
+ _useState6 = _slicedToArray(_useState5, 2),
160
+ recordValue = _useState6[0],
161
+ setRecordValue = _useState6[1];
162
+
163
+ var initUserValue = (_DYNAMIC_USER_REG$exe = (_DYNAMIC_USER_REG$exe2 = DYNAMIC_USER_REG.exec(field.value)) === null || _DYNAMIC_USER_REG$exe2 === void 0 ? void 0 : (_DYNAMIC_USER_REG$exe3 = _DYNAMIC_USER_REG$exe2[1]) === null || _DYNAMIC_USER_REG$exe3 === void 0 ? void 0 : _DYNAMIC_USER_REG$exe3.split('.')) !== null && _DYNAMIC_USER_REG$exe !== void 0 ? _DYNAMIC_USER_REG$exe : [];
76
164
 
165
+ var _useState7 = (0, _react2.useState)(initUserValue),
166
+ _useState8 = _slicedToArray(_useState7, 2),
167
+ userValue = _useState8[0],
168
+ setUserValue = _useState8[1];
169
+
170
+ var initValue = isDynamicValue ? '' : field.value;
171
+
172
+ var _useState9 = (0, _react2.useState)(initValue),
173
+ _useState10 = _slicedToArray(_useState9, 2),
174
+ value = _useState10[0],
175
+ setValue = _useState10[1];
176
+
177
+ var _useState11 = (0, _react2.useState)([]),
178
+ _useState12 = _slicedToArray(_useState11, 2),
179
+ options = _useState12[0],
180
+ setOptions = _useState12[1];
181
+
182
+ var _useCollection = (0, _collectionManager.useCollection)(),
183
+ getField = _useCollection.getField;
184
+
185
+ var collectionField = getField(fieldSchema.name);
186
+ var fields = (0, _collectionManager.useCollectionFilterOptions)(collectionField === null || collectionField === void 0 ? void 0 : collectionField.collectionName);
187
+ var userFields = (0, _collectionManager.useCollectionFilterOptions)('users');
188
+ var dateTimeFields = ['createdAt', 'datetime', 'time', 'updatedAt'];
189
+ (0, _react2.useEffect)(function () {
190
+ var opt = [{
191
+ name: 'currentRecord',
192
+ title: t('Current record')
193
+ }, {
194
+ name: 'currentUser',
195
+ title: t('Current user')
196
+ }];
197
+
198
+ if (dateTimeFields.includes(collectionField.interface)) {
199
+ opt.unshift({
200
+ name: 'currentTime',
201
+ title: t('Current time')
202
+ });
203
+ } else {}
204
+
205
+ setOptions(compile(opt));
206
+ }, []);
207
+ (0, _react2.useEffect)(function () {
208
+ if (type === AssignedFieldValueType.ConstantValue) {
209
+ field.value = value;
210
+ } else {
211
+ if (fieldType === 'currentTime') {
212
+ field.value = '{{currentTime}}';
213
+ } else if (fieldType === 'currentUser') {
214
+ (userValue === null || userValue === void 0 ? void 0 : userValue.length) > 0 && (field.value = "{{currentUser.".concat(userValue.join('.'), "}}"));
215
+ } else if (fieldType === 'currentRecord') {
216
+ (recordValue === null || recordValue === void 0 ? void 0 : recordValue.length) > 0 && (field.value = "{{currentRecord.".concat(recordValue.join('.'), "}}"));
217
+ }
218
+ }
219
+ }, [type, value, fieldType, userValue, recordValue]);
220
+ (0, _react2.useEffect)(function () {
221
+ if (type === AssignedFieldValueType.ConstantValue) {
222
+ setFieldType(null);
223
+ setUserValue([]);
224
+ setRecordValue([]);
225
+ }
226
+ }, [type]);
227
+
228
+ var typeChangeHandler = function typeChangeHandler(val) {
229
+ setType(val);
230
+ };
77
231
 
78
232
  var valueChangeHandler = function valueChangeHandler(val) {
79
- setValue(val);
80
- }; // const typeChangeHandler = (val) => {
81
- // setType(val);
82
- // };
83
-
84
-
85
- return /*#__PURE__*/_react2.default.createElement(_collectionManager.CollectionField, _objectSpread(_objectSpread({}, props), {}, {
86
- value: field.value,
87
- onChange: valueChangeHandler
88
- })); // return (
89
- // <Space>
90
- // <Select defaultValue={type} value={type} style={{ width: 120 }} onChange={typeChangeHandler}>
91
- // <Select.Option value="constantValue">{t('Constant value')}</Select.Option>
92
- // <Select.Option value="dynamicValue">{t('Dynamic value')}</Select.Option>
93
- // </Select>
94
- // {type === 'constantValue' ? (
95
- // <CollectionField {...props} onChange={valueChangeHandler} />
96
- // ) : (
97
- // <Cascader
98
- // fieldNames={{
99
- // label: 'title',
100
- // value: 'name',
101
- // children: 'children',
102
- // }}
103
- // style={{
104
- // width: 150,
105
- // }}
106
- // options={options}
107
- // onChange={valueChangeHandler}
108
- // defaultValue={value}
109
- // />
110
- // )}
111
- // </Space>
112
- // );
233
+ var _val$target$value, _val$target;
234
+
235
+ setValue((_val$target$value = val === null || val === void 0 ? void 0 : (_val$target = val.target) === null || _val$target === void 0 ? void 0 : _val$target.value) !== null && _val$target$value !== void 0 ? _val$target$value : val);
236
+ };
237
+
238
+ var fieldTypeChangeHandler = function fieldTypeChangeHandler(val) {
239
+ setFieldType(val);
240
+ };
241
+
242
+ var recordChangeHandler = function recordChangeHandler(val) {
243
+ setRecordValue(val);
244
+ };
245
+
246
+ var userChangeHandler = function userChangeHandler(val) {
247
+ setUserValue(val);
248
+ };
249
+
250
+ return /*#__PURE__*/_react2.default.createElement(_antd.Space, null, /*#__PURE__*/_react2.default.createElement(_antd.Select, {
251
+ defaultValue: type,
252
+ value: type,
253
+ style: {
254
+ width: 150
255
+ },
256
+ onChange: typeChangeHandler
257
+ }, /*#__PURE__*/_react2.default.createElement(_antd.Select.Option, {
258
+ value: AssignedFieldValueType.ConstantValue
259
+ }, t('Constant value')), /*#__PURE__*/_react2.default.createElement(_antd.Select.Option, {
260
+ value: AssignedFieldValueType.DynamicValue
261
+ }, t('Dynamic value'))), type === AssignedFieldValueType.ConstantValue ? /*#__PURE__*/_react2.default.createElement(CollectionField, _objectSpread(_objectSpread({}, props), {}, {
262
+ value: value,
263
+ onChange: valueChangeHandler,
264
+ style: {
265
+ minWidth: 150
266
+ }
267
+ })) : /*#__PURE__*/_react2.default.createElement(_antd.Select, {
268
+ defaultValue: fieldType,
269
+ value: fieldType,
270
+ style: {
271
+ minWidth: 150
272
+ },
273
+ onChange: fieldTypeChangeHandler
274
+ }, options === null || options === void 0 ? void 0 : options.map(function (opt) {
275
+ return /*#__PURE__*/_react2.default.createElement(_antd.Select.Option, {
276
+ key: opt.name,
277
+ value: opt.name
278
+ }, opt.title);
279
+ })), fieldType === 'currentRecord' && /*#__PURE__*/_react2.default.createElement(_antd.Cascader, {
280
+ fieldNames: {
281
+ label: 'title',
282
+ value: 'name',
283
+ children: 'children'
284
+ },
285
+ style: {
286
+ minWidth: 150
287
+ },
288
+ options: compile(fields),
289
+ onChange: recordChangeHandler,
290
+ defaultValue: recordValue
291
+ }), fieldType === 'currentUser' && /*#__PURE__*/_react2.default.createElement(_antd.Cascader, {
292
+ fieldNames: {
293
+ label: 'title',
294
+ value: 'name',
295
+ children: 'children'
296
+ },
297
+ style: {
298
+ minWidth: 150
299
+ },
300
+ options: compile(userFields),
301
+ onChange: userChangeHandler,
302
+ defaultValue: userValue
303
+ }));
113
304
  };
114
305
 
115
306
  exports.AssignedField = AssignedField;
@@ -15,7 +15,9 @@ export declare const CreateActionInitializer: (props: any) => JSX.Element;
15
15
  export declare const ViewActionInitializer: (props: any) => JSX.Element;
16
16
  export declare const UpdateActionInitializer: (props: any) => JSX.Element;
17
17
  export declare const DestroyActionInitializer: (props: any) => JSX.Element;
18
+ export declare const PrintActionInitializer: (props: any) => JSX.Element;
18
19
  export declare const BulkDestroyActionInitializer: (props: any) => JSX.Element;
20
+ export declare const RefreshActionInitializer: (props: any) => JSX.Element;
19
21
  export declare const SubmitActionInitializer: (props: any) => JSX.Element;
20
22
  export declare const CreateSubmitActionInitializer: (props: any) => JSX.Element;
21
23
  export declare const UpdateSubmitActionInitializer: (props: any) => JSX.Element;
@@ -5,7 +5,7 @@ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" =
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.ViewActionInitializer = exports.UpdateSubmitActionInitializer = exports.UpdateActionInitializer = exports.TableSelectorInitializer = exports.TableCollectionFieldInitializer = exports.TableBlockInitializer = exports.TableActionColumnInitializer = exports.SubmitActionInitializer = exports.RecordReadPrettyFormBlockInitializer = exports.RecordReadPrettyAssociationFormBlockInitializer = exports.RecordFormBlockInitializer = exports.RecordAssociationFormBlockInitializer = exports.RecordAssociationDetailsBlockInitializer = exports.RecordAssociationCalendarBlockInitializer = exports.RecordAssociationBlockInitializer = exports.MarkdownBlockInitializer = exports.KanbanBlockInitializer = exports.InitializerWithSwitch = exports.G2PlotInitializer = exports.FormBlockInitializer = exports.FilterActionInitializer = exports.DetailsBlockInitializer = exports.DestroyActionInitializer = exports.DataBlockInitializer = exports.CustomizeActionInitializer = exports.CreateSubmitActionInitializer = exports.CreateFormBlockInitializer = exports.CreateActionInitializer = exports.CollectionFieldInitializer = exports.CalendarBlockInitializer = exports.BulkDestroyActionInitializer = exports.BlockInitializer = exports.ActionInitializer = void 0;
8
+ exports.ViewActionInitializer = exports.UpdateSubmitActionInitializer = exports.UpdateActionInitializer = exports.TableSelectorInitializer = exports.TableCollectionFieldInitializer = exports.TableBlockInitializer = exports.TableActionColumnInitializer = exports.SubmitActionInitializer = exports.RefreshActionInitializer = exports.RecordReadPrettyFormBlockInitializer = exports.RecordReadPrettyAssociationFormBlockInitializer = exports.RecordFormBlockInitializer = exports.RecordAssociationFormBlockInitializer = exports.RecordAssociationDetailsBlockInitializer = exports.RecordAssociationCalendarBlockInitializer = exports.RecordAssociationBlockInitializer = exports.PrintActionInitializer = exports.MarkdownBlockInitializer = exports.KanbanBlockInitializer = exports.InitializerWithSwitch = exports.G2PlotInitializer = exports.FormBlockInitializer = exports.FilterActionInitializer = exports.DetailsBlockInitializer = exports.DestroyActionInitializer = exports.DataBlockInitializer = exports.CustomizeActionInitializer = exports.CreateSubmitActionInitializer = exports.CreateFormBlockInitializer = exports.CreateActionInitializer = exports.CollectionFieldInitializer = exports.CalendarBlockInitializer = exports.BulkDestroyActionInitializer = exports.BlockInitializer = exports.ActionInitializer = void 0;
9
9
 
10
10
  var _icons = require("@ant-design/icons");
11
11
 
@@ -471,9 +471,10 @@ var KanbanBlockInitializer = function KanbanBlockInitializer(props) {
471
471
  schema: {
472
472
  properties: {
473
473
  groupField: {
474
- title: t('Group field'),
474
+ title: t('Grouping field'),
475
475
  enum: fields,
476
476
  required: true,
477
+ description: '{{t("Single select and radio fields can be used as the grouping field")}}',
477
478
  'x-component': 'Select',
478
479
  'x-component-props': {
479
480
  objectValue: true,
@@ -770,6 +771,24 @@ var DestroyActionInitializer = function DestroyActionInitializer(props) {
770
771
 
771
772
  exports.DestroyActionInitializer = DestroyActionInitializer;
772
773
 
774
+ var PrintActionInitializer = function PrintActionInitializer(props) {
775
+ var schema = {
776
+ title: '{{ t("Print") }}',
777
+ 'x-action': 'print',
778
+ 'x-component': 'Action',
779
+ 'x-designer': 'Action.Designer',
780
+ 'x-component-props': {
781
+ icon: 'PrinterOutlined',
782
+ useProps: '{{ useDetailPrintActionProps }}'
783
+ }
784
+ };
785
+ return /*#__PURE__*/_react2.default.createElement(ActionInitializer, _objectSpread(_objectSpread({}, props), {}, {
786
+ schema: schema
787
+ }));
788
+ };
789
+
790
+ exports.PrintActionInitializer = PrintActionInitializer;
791
+
773
792
  var BulkDestroyActionInitializer = function BulkDestroyActionInitializer(props) {
774
793
  var schema = {
775
794
  title: '{{ t("Delete") }}',
@@ -792,6 +811,24 @@ var BulkDestroyActionInitializer = function BulkDestroyActionInitializer(props)
792
811
 
793
812
  exports.BulkDestroyActionInitializer = BulkDestroyActionInitializer;
794
813
 
814
+ var RefreshActionInitializer = function RefreshActionInitializer(props) {
815
+ var schema = {
816
+ title: '{{ t("Refresh") }}',
817
+ 'x-action': 'refresh',
818
+ 'x-component': 'Action',
819
+ 'x-designer': 'Action.Designer',
820
+ 'x-component-props': {
821
+ icon: 'ReloadOutlined',
822
+ useProps: '{{ useRefreshActionProps }}'
823
+ }
824
+ };
825
+ return /*#__PURE__*/_react2.default.createElement(ActionInitializer, _objectSpread(_objectSpread({}, props), {}, {
826
+ schema: schema
827
+ }));
828
+ };
829
+
830
+ exports.RefreshActionInitializer = RefreshActionInitializer;
831
+
795
832
  var SubmitActionInitializer = function SubmitActionInitializer(props) {
796
833
  var schema = {
797
834
  title: '{{ t("Submit") }}',
@@ -943,6 +980,7 @@ var RecordFormBlockInitializer = function RecordFormBlockInitializer(props) {
943
980
 
944
981
  var collection = (0, _collectionManager.useCollection)();
945
982
  var association = (0, _blockProvider.useBlockAssociationContext)();
983
+ console.log('RecordFormBlockInitializer', collection, association);
946
984
  return /*#__PURE__*/_react2.default.createElement(_SchemaInitializer.SchemaInitializer.Item, _objectSpread(_objectSpread({
947
985
  icon: /*#__PURE__*/_react2.default.createElement(_icons.FormOutlined, null)
948
986
  }, others), {}, {
@@ -1031,6 +1069,11 @@ var RecordReadPrettyFormBlockInitializer = function RecordReadPrettyFormBlockIni
1031
1069
 
1032
1070
  var collection = (0, _collectionManager.useCollection)();
1033
1071
  var association = (0, _blockProvider.useBlockAssociationContext)();
1072
+
1073
+ var _useBlockRequestConte = (0, _blockProvider.useBlockRequestContext)(),
1074
+ block = _useBlockRequestConte.block;
1075
+
1076
+ var actionInitializers = block !== 'TableField' ? 'ReadPrettyFormActionInitializers' : null;
1034
1077
  return /*#__PURE__*/_react2.default.createElement(_SchemaInitializer.SchemaInitializer.Item, _objectSpread(_objectSpread({
1035
1078
  icon: /*#__PURE__*/_react2.default.createElement(_icons.FormOutlined, null)
1036
1079
  }, others), {}, {
@@ -1057,6 +1100,7 @@ var RecordReadPrettyFormBlockInitializer = function RecordReadPrettyFormBlockIni
1057
1100
 
1058
1101
  if (item.template.componentName === 'ReadPrettyFormItem') {
1059
1102
  blockSchema = (0, _utils.createReadPrettyFormBlockSchema)({
1103
+ actionInitializers: actionInitializers,
1060
1104
  association: association,
1061
1105
  collection: collection.name,
1062
1106
  action: 'get',
@@ -1079,6 +1123,7 @@ var RecordReadPrettyFormBlockInitializer = function RecordReadPrettyFormBlockIni
1079
1123
 
1080
1124
  case 8:
1081
1125
  insert((0, _utils.createReadPrettyFormBlockSchema)({
1126
+ actionInitializers: actionInitializers,
1082
1127
  association: association,
1083
1128
  collection: collection.name,
1084
1129
  action: 'get',
@@ -1214,6 +1259,11 @@ var RecordReadPrettyAssociationFormBlockInitializer = function RecordReadPrettyA
1214
1259
  var field = item.field;
1215
1260
  var collection = field.target;
1216
1261
  var resource = "".concat(field.collectionName, ".").concat(field.name);
1262
+
1263
+ var _useBlockRequestConte2 = (0, _blockProvider.useBlockRequestContext)(),
1264
+ block = _useBlockRequestConte2.block;
1265
+
1266
+ var actionInitializers = block !== 'TableField' ? 'ReadPrettyFormActionInitializers' : null;
1217
1267
  return /*#__PURE__*/_react2.default.createElement(_SchemaInitializer.SchemaInitializer.Item, _objectSpread(_objectSpread({
1218
1268
  icon: /*#__PURE__*/_react2.default.createElement(_icons.FormOutlined, null)
1219
1269
  }, others), {}, {
@@ -1239,6 +1289,7 @@ var RecordReadPrettyAssociationFormBlockInitializer = function RecordReadPrettyA
1239
1289
 
1240
1290
  if (item.template.componentName === 'ReadPrettyFormItem') {
1241
1291
  blockSchema = (0, _utils.createReadPrettyFormBlockSchema)({
1292
+ actionInitializers: actionInitializers,
1242
1293
  collection: collection,
1243
1294
  resource: resource,
1244
1295
  association: resource,
@@ -1262,6 +1313,7 @@ var RecordReadPrettyAssociationFormBlockInitializer = function RecordReadPrettyA
1262
1313
 
1263
1314
  case 8:
1264
1315
  insert((0, _utils.createReadPrettyFormBlockSchema)({
1316
+ actionInitializers: actionInitializers,
1265
1317
  collection: collection,
1266
1318
  resource: resource,
1267
1319
  association: resource,
@@ -300,8 +300,9 @@ var useAssociatedFormItemInitializerFields = function useAssociatedFormItemIniti
300
300
  _ref2$block = _ref2.block,
301
301
  block = _ref2$block === void 0 ? 'Form' : _ref2$block;
302
302
 
303
+ var interfaces = block === 'Form' ? ['m2o'] : ['o2o', 'oho', 'obo', 'm2o'];
303
304
  var groups = fields === null || fields === void 0 ? void 0 : (_fields$filter3 = fields.filter(function (field) {
304
- return ['o2o', 'oho', 'obo', 'm2o'].includes(field.interface);
305
+ return interfaces.includes(field.interface);
305
306
  })) === null || _fields$filter3 === void 0 ? void 0 : _fields$filter3.map(function (field) {
306
307
  var _subFields$filter2, _field$uiSchema4;
307
308
 
@@ -318,7 +319,10 @@ var useAssociatedFormItemInitializerFields = function useAssociatedFormItemIniti
318
319
  // title: subField?.uiSchema?.title || subField.name,
319
320
  'x-designer': 'FormItem.Designer',
320
321
  'x-component': 'CollectionField',
321
- 'x-component-props': {},
322
+ 'x-read-pretty': readPretty,
323
+ 'x-component-props': {
324
+ 'pattern-disable': block === 'Form' && readPretty
325
+ },
322
326
  'x-decorator': 'FormItem',
323
327
  'x-collection-field': "".concat(name, ".").concat(field.name, ".").concat(subField.name)
324
328
  }; // interfaceConfig?.schemaInitialize?.(schema, { field, block: 'Form', readPretty: form.readPretty });
@@ -429,11 +433,27 @@ var removeSchema = function removeSchema(schema, cb) {
429
433
  return cb(schema);
430
434
  };
431
435
 
436
+ var recursiveParent = function recursiveParent(schema) {
437
+ if (!schema.parent) return null;
438
+ if (schema.parent['x-initializer']) return schema.parent;
439
+ return recursiveParent(schema.parent);
440
+ };
441
+
432
442
  var useCurrentSchema = function useCurrentSchema(action, key) {
443
+ var _fieldSchema;
444
+
433
445
  var find = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : findSchema;
434
446
  var rm = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : removeSchema;
435
447
  var fieldSchema = (0, _react.useFieldSchema)();
436
448
 
449
+ if (!((_fieldSchema = fieldSchema) === null || _fieldSchema === void 0 ? void 0 : _fieldSchema['x-initializer'])) {
450
+ var recursiveInitializerSchema = recursiveParent(fieldSchema);
451
+
452
+ if (recursiveInitializerSchema) {
453
+ fieldSchema = recursiveInitializerSchema;
454
+ }
455
+ }
456
+
437
457
  var _useDesignable = (0, _schemaComponent.useDesignable)(),
438
458
  _remove = _useDesignable.remove;
439
459
 
@@ -13,6 +13,8 @@ var _react = require("@formily/react");
13
13
 
14
14
  var _shared = require("@formily/shared");
15
15
 
16
+ var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
17
+
16
18
  var _react2 = _interopRequireWildcard(require("react"));
17
19
 
18
20
  var _reactI18next = require("react-i18next");
@@ -25,12 +27,12 @@ var _locale = _interopRequireDefault(require("../locale"));
25
27
 
26
28
  var _schemaComponent = require("../schema-component");
27
29
 
28
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
-
30
30
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
31
31
 
32
32
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
33
33
 
34
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
35
+
34
36
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
35
37
 
36
38
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -110,6 +112,9 @@ var useSaveSystemSettingsValues = function useSaveSystemSettingsValues() {
110
112
  return {
111
113
  run: function run() {
112
114
  return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
115
+ var _values$enabledLangua;
116
+
117
+ var values, lang;
113
118
  return regeneratorRuntime.wrap(function _callee2$(_context2) {
114
119
  while (1) {
115
120
  switch (_context2.prev = _context2.next) {
@@ -118,18 +123,28 @@ var useSaveSystemSettingsValues = function useSaveSystemSettingsValues() {
118
123
  return form.submit();
119
124
 
120
125
  case 2:
121
- setVisible(false);
126
+ values = (0, _cloneDeep.default)(form.values);
122
127
  mutate({
123
- data: _objectSpread(_objectSpread({}, data === null || data === void 0 ? void 0 : data.data), form.values)
128
+ data: _objectSpread(_objectSpread({}, data === null || data === void 0 ? void 0 : data.data), values)
124
129
  });
125
130
  _context2.next = 6;
126
131
  return api.request({
127
132
  url: 'systemSettings:update/1',
128
133
  method: 'post',
129
- data: form.values
134
+ data: values
130
135
  });
131
136
 
132
137
  case 6:
138
+ lang = ((_values$enabledLangua = values.enabledLanguages) === null || _values$enabledLangua === void 0 ? void 0 : _values$enabledLangua[0]) || 'en-US';
139
+
140
+ if (values.enabledLanguages.length < 2 && api.auth.getLocale() !== lang) {
141
+ api.auth.setLocale('');
142
+ window.location.reload();
143
+ } else {
144
+ setVisible(false);
145
+ }
146
+
147
+ case 8:
133
148
  case "end":
134
149
  return _context2.stop();
135
150
  }
@@ -177,14 +192,23 @@ var schema = {
177
192
  mode: 'multiple'
178
193
  },
179
194
  'x-decorator': 'FormItem',
180
- enum: langs
181
- },
182
- appLang: {
183
- type: 'string',
184
- title: '{{t("Default language")}}',
185
- 'x-component': 'Select',
186
- 'x-decorator': 'FormItem',
187
- enum: langs
195
+ enum: langs,
196
+ 'x-reactions': function xReactions(field) {
197
+ field.dataSource = langs.map(function (item) {
198
+ var _field$value;
199
+
200
+ var label = item.label;
201
+
202
+ if (((_field$value = field.value) === null || _field$value === void 0 ? void 0 : _field$value[0]) === item.value) {
203
+ label += "(".concat(_2.i18n.t('Default'), ")");
204
+ }
205
+
206
+ return {
207
+ label: label,
208
+ value: item.value
209
+ };
210
+ });
211
+ }
188
212
  },
189
213
  allowSignUp: {
190
214
  type: 'boolean',