@nocobase/client 0.7.2-alpha.7 → 0.7.4-alpha.4

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 (175) 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 +15 -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 +42 -14
  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 +11 -4
  10. package/es/collection-manager/Configuration/AddFieldAction.js +6 -0
  11. package/es/collection-manager/Configuration/EditFieldAction.js +7 -0
  12. package/es/collection-manager/Configuration/index.js +5 -1
  13. package/es/collection-manager/Configuration/schemas/collections.js +2 -1
  14. package/es/collection-manager/interfaces/checkbox.js +1 -0
  15. package/es/collection-manager/interfaces/checkboxGroup.js +1 -0
  16. package/es/collection-manager/interfaces/datetime.js +1 -0
  17. package/es/collection-manager/interfaces/email.js +1 -0
  18. package/es/collection-manager/interfaces/icon.js +1 -0
  19. package/es/collection-manager/interfaces/input.js +104 -0
  20. package/es/collection-manager/interfaces/integer.js +64 -0
  21. package/es/collection-manager/interfaces/m2m.js +2 -0
  22. package/es/collection-manager/interfaces/m2o.js +1 -0
  23. package/es/collection-manager/interfaces/markdown.js +35 -0
  24. package/es/collection-manager/interfaces/multipleSelect.js +1 -0
  25. package/es/collection-manager/interfaces/number.js +56 -0
  26. package/es/collection-manager/interfaces/o2m.js +1 -0
  27. package/es/collection-manager/interfaces/o2o.js +3 -0
  28. package/es/collection-manager/interfaces/password.js +37 -1
  29. package/es/collection-manager/interfaces/percent.js +98 -0
  30. package/es/collection-manager/interfaces/phone.js +1 -0
  31. package/es/collection-manager/interfaces/properties/index.d.ts +1 -0
  32. package/es/collection-manager/interfaces/properties/index.js +1 -0
  33. package/es/collection-manager/interfaces/properties/operators.js +4 -4
  34. package/es/collection-manager/interfaces/radioGroup.js +1 -0
  35. package/es/collection-manager/interfaces/richText.js +35 -0
  36. package/es/collection-manager/interfaces/select.js +1 -0
  37. package/es/collection-manager/interfaces/textarea.js +35 -0
  38. package/es/collection-manager/interfaces/time.js +1 -0
  39. package/es/file-manager/FileStorageShortcut.js +2 -2
  40. package/es/locale/en_US.d.ts +8 -2
  41. package/es/locale/en_US.js +9 -3
  42. package/es/locale/zh_CN.d.ts +28 -2
  43. package/es/locale/zh_CN.js +29 -3
  44. package/es/plugin-manager/PluginManager.d.ts +1 -0
  45. package/es/plugin-manager/PluginManager.js +20 -6
  46. package/es/schema-component/antd/action/Action.Modal.js +1 -1
  47. package/es/schema-component/antd/calendar/Calendar.Designer.js +16 -10
  48. package/es/schema-component/antd/date-picker/DatePicker.d.ts +1 -1
  49. package/es/schema-component/antd/date-picker/DatePicker.js +1 -1
  50. package/es/schema-component/antd/date-picker/ReadPretty.js +1 -1
  51. package/es/schema-component/antd/date-picker/util.d.ts +0 -10
  52. package/es/schema-component/antd/date-picker/util.js +1 -79
  53. package/es/schema-component/antd/form-item/FormItem.js +193 -10
  54. package/es/schema-component/antd/grid/Grid.js +72 -6
  55. package/es/schema-component/antd/input-number/InputNumber.d.ts +1 -5
  56. package/es/schema-component/antd/input-number/InputNumber.js +25 -1
  57. package/es/schema-component/antd/input-number/ReadPretty.js +2 -4
  58. package/es/schema-component/antd/kanban/Kanban.Card.Designer.js +20 -14
  59. package/es/schema-component/antd/menu/Menu.js +6 -3
  60. package/es/schema-component/antd/percent/Percent.js +2 -2
  61. package/es/schema-component/antd/record-picker/InputRecordPicker.js +27 -13
  62. package/es/schema-component/antd/record-picker/ReadPrettyRecordPicker.js +5 -3
  63. package/es/schema-component/antd/table/Table.Array.js +2 -2
  64. package/es/schema-component/antd/table/Table.Void.js +11 -1
  65. package/es/schema-component/antd/table-v2/Table.Column.Designer.js +3 -1
  66. package/es/schema-component/antd/table-v2/Table.d.ts +0 -11
  67. package/es/schema-component/antd/table-v2/Table.js +163 -92
  68. package/es/schema-component/antd/table-v2/TableField.js +3 -0
  69. package/es/schema-component/antd/tabs/Tabs.Designer.js +23 -12
  70. package/es/schema-component/antd/tabs/Tabs.js +7 -1
  71. package/es/schema-component/antd/time-picker/ReadPretty.js +11 -5
  72. package/es/schema-component/core/DesignableSwitch.js +7 -1
  73. package/es/schema-component/hooks/useDesignable.js +21 -21
  74. package/es/schema-component/hooks/useProps.js +1 -1
  75. package/es/schema-initializer/buttons/FormItemInitializers.js +14 -3
  76. package/es/schema-initializer/buttons/ReadPrettyFormActionInitializers.js +8 -0
  77. package/es/schema-initializer/buttons/ReadPrettyFormItemInitializers.js +14 -3
  78. package/es/schema-initializer/buttons/RecordBlockInitializers.js +32 -3
  79. package/es/schema-initializer/buttons/TabPaneInitializers.js +11 -3
  80. package/es/schema-initializer/buttons/TableActionInitializers.js +11 -0
  81. package/es/schema-initializer/components/assigned-field/AssignedField.d.ts +4 -0
  82. package/es/schema-initializer/components/assigned-field/AssignedField.js +255 -69
  83. package/es/schema-initializer/items/index.d.ts +2 -0
  84. package/es/schema-initializer/items/index.js +48 -2
  85. package/es/schema-initializer/utils.js +22 -2
  86. package/es/schema-settings/SchemaSettings.js +7 -0
  87. package/es/system-settings/SystemSettingsShortcut.js +35 -12
  88. package/lib/application/Application.d.ts +1 -0
  89. package/lib/application/Application.js +11 -2
  90. package/lib/block-provider/FormBlockProvider.js +15 -2
  91. package/lib/block-provider/TableFieldProvider.d.ts +1 -0
  92. package/lib/block-provider/TableFieldProvider.js +4 -1
  93. package/lib/block-provider/TableSelectorProvider.js +42 -14
  94. package/lib/block-provider/hooks/index.d.ts +6 -0
  95. package/lib/block-provider/hooks/index.js +168 -67
  96. package/lib/collection-manager/CollectionField.js +12 -4
  97. package/lib/collection-manager/Configuration/AddFieldAction.js +6 -0
  98. package/lib/collection-manager/Configuration/EditFieldAction.js +7 -0
  99. package/lib/collection-manager/Configuration/index.js +5 -0
  100. package/lib/collection-manager/Configuration/schemas/collections.js +2 -1
  101. package/lib/collection-manager/interfaces/checkbox.js +1 -0
  102. package/lib/collection-manager/interfaces/checkboxGroup.js +1 -0
  103. package/lib/collection-manager/interfaces/datetime.js +1 -0
  104. package/lib/collection-manager/interfaces/email.js +1 -0
  105. package/lib/collection-manager/interfaces/icon.js +1 -0
  106. package/lib/collection-manager/interfaces/input.js +105 -0
  107. package/lib/collection-manager/interfaces/integer.js +66 -0
  108. package/lib/collection-manager/interfaces/m2m.js +2 -0
  109. package/lib/collection-manager/interfaces/m2o.js +1 -0
  110. package/lib/collection-manager/interfaces/markdown.js +36 -0
  111. package/lib/collection-manager/interfaces/multipleSelect.js +1 -0
  112. package/lib/collection-manager/interfaces/number.js +57 -0
  113. package/lib/collection-manager/interfaces/o2m.js +1 -0
  114. package/lib/collection-manager/interfaces/o2o.js +3 -0
  115. package/lib/collection-manager/interfaces/password.js +38 -1
  116. package/lib/collection-manager/interfaces/percent.js +100 -0
  117. package/lib/collection-manager/interfaces/phone.js +1 -0
  118. package/lib/collection-manager/interfaces/properties/index.d.ts +1 -0
  119. package/lib/collection-manager/interfaces/properties/index.js +1 -0
  120. package/lib/collection-manager/interfaces/properties/operators.js +4 -4
  121. package/lib/collection-manager/interfaces/radioGroup.js +1 -0
  122. package/lib/collection-manager/interfaces/richText.js +36 -0
  123. package/lib/collection-manager/interfaces/select.js +1 -0
  124. package/lib/collection-manager/interfaces/textarea.js +36 -0
  125. package/lib/collection-manager/interfaces/time.js +1 -0
  126. package/lib/file-manager/FileStorageShortcut.js +1 -1
  127. package/lib/locale/en_US.d.ts +8 -2
  128. package/lib/locale/en_US.js +9 -3
  129. package/lib/locale/zh_CN.d.ts +28 -2
  130. package/lib/locale/zh_CN.js +29 -3
  131. package/lib/plugin-manager/PluginManager.d.ts +1 -0
  132. package/lib/plugin-manager/PluginManager.js +23 -5
  133. package/lib/schema-component/antd/action/Action.Modal.js +1 -1
  134. package/lib/schema-component/antd/calendar/Calendar.Designer.js +16 -10
  135. package/lib/schema-component/antd/date-picker/DatePicker.d.ts +1 -1
  136. package/lib/schema-component/antd/date-picker/DatePicker.js +2 -2
  137. package/lib/schema-component/antd/date-picker/ReadPretty.js +6 -6
  138. package/lib/schema-component/antd/date-picker/util.d.ts +0 -10
  139. package/lib/schema-component/antd/date-picker/util.js +6 -89
  140. package/lib/schema-component/antd/form-item/FormItem.js +196 -12
  141. package/lib/schema-component/antd/grid/Grid.js +69 -3
  142. package/lib/schema-component/antd/input-number/InputNumber.d.ts +1 -5
  143. package/lib/schema-component/antd/input-number/InputNumber.js +28 -1
  144. package/lib/schema-component/antd/input-number/ReadPretty.js +2 -5
  145. package/lib/schema-component/antd/kanban/Kanban.Card.Designer.js +20 -14
  146. package/lib/schema-component/antd/menu/Menu.js +6 -3
  147. package/lib/schema-component/antd/percent/Percent.js +2 -2
  148. package/lib/schema-component/antd/record-picker/InputRecordPicker.js +27 -12
  149. package/lib/schema-component/antd/record-picker/ReadPrettyRecordPicker.js +4 -2
  150. package/lib/schema-component/antd/table/Table.Array.js +2 -2
  151. package/lib/schema-component/antd/table/Table.Void.js +11 -1
  152. package/lib/schema-component/antd/table-v2/Table.Column.Designer.js +3 -1
  153. package/lib/schema-component/antd/table-v2/Table.d.ts +0 -11
  154. package/lib/schema-component/antd/table-v2/Table.js +172 -94
  155. package/lib/schema-component/antd/table-v2/TableField.js +3 -0
  156. package/lib/schema-component/antd/tabs/Tabs.Designer.js +23 -12
  157. package/lib/schema-component/antd/tabs/Tabs.js +8 -1
  158. package/lib/schema-component/antd/time-picker/ReadPretty.js +10 -3
  159. package/lib/schema-component/core/DesignableSwitch.js +8 -1
  160. package/lib/schema-component/hooks/useDesignable.js +21 -21
  161. package/lib/schema-component/hooks/useProps.js +1 -1
  162. package/lib/schema-initializer/buttons/FormItemInitializers.js +14 -2
  163. package/lib/schema-initializer/buttons/ReadPrettyFormActionInitializers.js +8 -0
  164. package/lib/schema-initializer/buttons/ReadPrettyFormItemInitializers.js +14 -2
  165. package/lib/schema-initializer/buttons/RecordBlockInitializers.js +34 -4
  166. package/lib/schema-initializer/buttons/TabPaneInitializers.js +11 -3
  167. package/lib/schema-initializer/buttons/TableActionInitializers.js +11 -0
  168. package/lib/schema-initializer/components/assigned-field/AssignedField.d.ts +4 -0
  169. package/lib/schema-initializer/components/assigned-field/AssignedField.js +257 -66
  170. package/lib/schema-initializer/items/index.d.ts +2 -0
  171. package/lib/schema-initializer/items/index.js +54 -2
  172. package/lib/schema-initializer/utils.js +22 -2
  173. package/lib/schema-settings/SchemaSettings.js +7 -0
  174. package/lib/system-settings/SystemSettingsShortcut.js +37 -13
  175. package/package.json +7 -4
@@ -33,6 +33,14 @@ var ReadPrettyFormActionInitializers = {
33
33
  'x-component': 'Action',
34
34
  'x-decorator': 'ACLActionProvider'
35
35
  }
36
+ }, {
37
+ type: 'item',
38
+ title: '{{t("Print")}}',
39
+ component: 'PrintActionInitializer',
40
+ schema: {
41
+ 'x-component': 'Action',
42
+ 'x-decorator': 'ACLActionProvider'
43
+ }
36
44
  }]
37
45
  }, {
38
46
  type: 'divider'
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.ReadPrettyFormItemInitializers = void 0;
7
7
 
8
+ var _lodash = require("lodash");
9
+
8
10
  var _react = _interopRequireDefault(require("react"));
9
11
 
10
12
  var _reactI18next = require("react-i18next");
@@ -21,14 +23,24 @@ var ReadPrettyFormItemInitializers = function ReadPrettyFormItemInitializers(pro
21
23
 
22
24
  var insertPosition = props.insertPosition,
23
25
  component = props.component;
26
+ var associationFields = (0, _utils.useAssociatedFormItemInitializerFields)({
27
+ readPretty: true,
28
+ block: 'Form'
29
+ });
24
30
  return /*#__PURE__*/_react.default.createElement(_SchemaInitializer.SchemaInitializer.Button, {
25
31
  wrap: _utils.gridRowColWrap,
26
32
  icon: 'SettingOutlined',
27
- items: [{
33
+ items: (0, _lodash.union)([{
28
34
  type: 'itemGroup',
29
35
  title: t('Display fields'),
30
36
  children: (0, _utils.useFormItemInitializerFields)()
37
+ }], associationFields.length > 0 ? [{
38
+ type: 'divider'
31
39
  }, {
40
+ type: 'itemGroup',
41
+ title: t('Display association fields'),
42
+ children: associationFields
43
+ }] : [], [{
32
44
  type: 'divider'
33
45
  }, {
34
46
  type: 'item',
@@ -44,7 +56,7 @@ var ReadPrettyFormItemInitializers = function ReadPrettyFormItemInitializers(pro
44
56
  content: t('This is a demo text, **supports Markdown syntax**.')
45
57
  }
46
58
  }
47
- }],
59
+ }]),
48
60
  insertPosition: insertPosition,
49
61
  component: component,
50
62
  title: component ? null : t('Configure fields')
@@ -5,7 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.RecordBlockInitializers = void 0;
7
7
 
8
- var _react = _interopRequireDefault(require("react"));
8
+ var _react = require("@formily/react");
9
+
10
+ var _react2 = _interopRequireDefault(require("react"));
9
11
 
10
12
  var _reactI18next = require("react-i18next");
11
13
 
@@ -15,9 +17,37 @@ var _utils = require("../utils");
15
17
 
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
19
 
20
+ var recursiveParent = function recursiveParent(schema) {
21
+ var _schema$xDecorator;
22
+
23
+ if (!schema) return null;
24
+
25
+ if ((_schema$xDecorator = schema['x-decorator']) === null || _schema$xDecorator === void 0 ? void 0 : _schema$xDecorator.endsWith('BlockProvider')) {
26
+ var _schema$xDecoratorP;
27
+
28
+ return (_schema$xDecoratorP = schema['x-decorator-props']) === null || _schema$xDecoratorP === void 0 ? void 0 : _schema$xDecoratorP['collection'];
29
+ } else {
30
+ return recursiveParent(schema.parent);
31
+ }
32
+ };
33
+
18
34
  var useRelationFields = function useRelationFields() {
19
- var _useCollection = (0, _.useCollection)(),
20
- fields = _useCollection.fields;
35
+ var fieldSchema = (0, _react.useFieldSchema)();
36
+
37
+ var _useCollectionManager = (0, _.useCollectionManager)(),
38
+ getCollectionFields = _useCollectionManager.getCollectionFields;
39
+
40
+ var fields = [];
41
+
42
+ if (fieldSchema['x-initializer']) {
43
+ fields = (0, _.useCollection)().fields;
44
+ } else {
45
+ var collection = recursiveParent(fieldSchema.parent);
46
+
47
+ if (collection) {
48
+ fields = getCollectionFields(collection);
49
+ }
50
+ }
21
51
 
22
52
  var relationFields = fields.filter(function (field) {
23
53
  return ['linkTo', 'subTable', 'o2m', 'm2m', 'obo', 'oho', 'o2o', 'm2o'].includes(field.interface);
@@ -100,7 +130,7 @@ var RecordBlockInitializers = function RecordBlockInitializers(props) {
100
130
 
101
131
  var insertPosition = props.insertPosition,
102
132
  component = props.component;
103
- return /*#__PURE__*/_react.default.createElement(_.SchemaInitializer.Button, {
133
+ return /*#__PURE__*/_react2.default.createElement(_.SchemaInitializer.Button, {
104
134
  wrap: _utils.gridRowColWrap,
105
135
  insertPosition: insertPosition,
106
136
  component: component,
@@ -32,7 +32,8 @@ var TabPaneInitializers = function TabPaneInitializers() {
32
32
  return {
33
33
  run: function run() {
34
34
  return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
35
- var title;
35
+ var _form$values, title, icon;
36
+
36
37
  return regeneratorRuntime.wrap(function _callee$(_context) {
37
38
  while (1) {
38
39
  switch (_context.prev = _context.next) {
@@ -41,13 +42,15 @@ var TabPaneInitializers = function TabPaneInitializers() {
41
42
  return form.submit();
42
43
 
43
44
  case 2:
44
- title = form.values.title;
45
+ _form$values = form.values, title = _form$values.title, icon = _form$values.icon;
45
46
  insertBeforeEnd({
46
47
  type: 'void',
47
48
  title: title,
48
49
  'x-component': 'Tabs.TabPane',
49
50
  'x-designer': 'Tabs.Designer',
50
- 'x-component-props': {},
51
+ 'x-component-props': {
52
+ icon: icon
53
+ },
51
54
  properties: {
52
55
  grid: {
53
56
  type: 'void',
@@ -106,6 +109,11 @@ var TabPaneInitializers = function TabPaneInitializers() {
106
109
  'x-component': 'Input',
107
110
  'x-decorator': 'FormItem'
108
111
  },
112
+ icon: {
113
+ title: '{{t("Icon")}}',
114
+ 'x-component': 'IconPicker',
115
+ 'x-decorator': 'FormItem'
116
+ },
109
117
  footer: {
110
118
  'x-component': 'Action.Modal.Footer',
111
119
  type: 'void',
@@ -43,6 +43,17 @@ var TableActionInitializers = {
43
43
  skipScopeCheck: true
44
44
  }
45
45
  }
46
+ }, {
47
+ type: 'item',
48
+ title: "{{t('Refresh')}}",
49
+ component: 'RefreshActionInitializer',
50
+ schema: {
51
+ 'x-align': 'right',
52
+ 'x-decorator': 'ACLActionProvider',
53
+ 'x-acl-action-props': {
54
+ skipScopeCheck: true
55
+ }
56
+ }
46
57
  }]
47
58
  }]
48
59
  };
@@ -1 +1,5 @@
1
+ export declare enum AssignedFieldValueType {
2
+ ConstantValue = "constantValue",
3
+ DynamicValue = "dynamicValue"
4
+ }
1
5
  export declare const AssignedField: (props: any) => JSX.Element;
@@ -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;