@nocobase/client 0.7.1-alpha.6 → 0.7.2-alpha.2

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 (245) hide show
  1. package/es/acl/Configuration/schemas/scopes.js +1 -0
  2. package/es/application/Application.js +0 -4
  3. package/es/block-provider/BlockSchemaComponentProvider.js +3 -0
  4. package/es/block-provider/FormBlockProvider.js +2 -1
  5. package/es/block-provider/FormFieldProvider.d.ts +8 -0
  6. package/es/block-provider/FormFieldProvider.js +89 -0
  7. package/es/block-provider/KanbanBlockProvider.js +117 -3
  8. package/es/block-provider/TableFieldProvider.js +17 -2
  9. package/es/block-provider/TableSelectorProvider.js +38 -6
  10. package/es/block-provider/hooks/index.js +10 -3
  11. package/es/block-provider/index.d.ts +1 -0
  12. package/es/block-provider/index.js +2 -1
  13. package/es/collection-manager/CollectionField.js +5 -1
  14. package/es/collection-manager/CollectionFieldProvider.js +7 -2
  15. package/es/collection-manager/Configuration/AddFieldAction.js +1 -1
  16. package/es/collection-manager/Configuration/EditFieldAction.js +1 -1
  17. package/es/collection-manager/hooks/useCollectionManager.js +20 -5
  18. package/es/collection-manager/interfaces/index.d.ts +2 -1
  19. package/es/collection-manager/interfaces/index.js +3 -2
  20. package/es/collection-manager/interfaces/integer.d.ts +2 -0
  21. package/es/{workflow/nodes/update.js → collection-manager/interfaces/integer.js} +24 -20
  22. package/es/collection-manager/interfaces/linkTo.js +14 -6
  23. package/es/collection-manager/interfaces/m2m.js +12 -5
  24. package/es/collection-manager/interfaces/m2o.js +59 -8
  25. package/es/collection-manager/interfaces/o2m.js +72 -46
  26. package/es/collection-manager/interfaces/o2o.js +100 -39
  27. package/es/collection-manager/interfaces/properties/operators.d.ts +13 -0
  28. package/es/collection-manager/interfaces/properties/operators.js +7 -0
  29. package/es/index.d.ts +0 -1
  30. package/es/index.js +1 -2
  31. package/es/locale/en_US.d.ts +7 -0
  32. package/es/locale/en_US.js +9 -2
  33. package/es/locale/zh_CN.d.ts +10 -1
  34. package/es/locale/zh_CN.js +10 -1
  35. package/es/schema-component/antd/AntdSchemaComponentProvider.js +2 -0
  36. package/es/schema-component/antd/filter/DynamicComponent.js +50 -3
  37. package/es/schema-component/antd/filter/FilterItem.js +6 -0
  38. package/es/schema-component/antd/filter/useFilterActionProps.js +2 -0
  39. package/es/schema-component/antd/form-item/FormItem.js +79 -16
  40. package/es/schema-component/antd/form-v2/FormField.d.ts +1 -0
  41. package/es/schema-component/antd/form-v2/FormField.js +29 -0
  42. package/es/schema-component/antd/form-v2/index.d.ts +1 -0
  43. package/es/schema-component/antd/form-v2/index.js +2 -1
  44. package/es/schema-component/antd/g2plot/G2Plot.js +33 -3
  45. package/es/schema-component/antd/g2plot/requestChartData.d.ts +4 -0
  46. package/es/schema-component/antd/g2plot/requestChartData.js +33 -0
  47. package/es/schema-component/antd/kanban/Kanban.Card.Designer.js +10 -1
  48. package/es/schema-component/antd/record-picker/InputRecordPicker.js +34 -14
  49. package/es/schema-component/antd/record-picker/ReadPrettyRecordPicker.js +34 -11
  50. package/es/schema-component/antd/record-picker/useFieldNames.js +2 -2
  51. package/es/schema-component/antd/select/shared.js +4 -2
  52. package/es/schema-component/antd/table-v2/Table.Column.Decorator.d.ts +1 -1
  53. package/es/schema-component/antd/table-v2/Table.Column.Decorator.js +7 -3
  54. package/es/schema-component/antd/table-v2/Table.Column.Designer.js +7 -2
  55. package/es/schema-component/antd/table-v2/Table.js +4 -2
  56. package/es/schema-component/antd/table-v2/TableField.js +7 -0
  57. package/es/schema-initializer/buttons/TableColumnInitializers.js +26 -12
  58. package/es/schema-initializer/components/assigned-field/AssignedField.js +34 -47
  59. package/es/schema-initializer/utils.d.ts +2 -0
  60. package/es/schema-initializer/utils.js +160 -30
  61. package/es/schema-settings/SchemaSettings.js +6 -3
  62. package/lib/acl/Configuration/schemas/scopes.js +1 -0
  63. package/lib/application/Application.js +0 -5
  64. package/lib/block-provider/BlockSchemaComponentProvider.js +4 -0
  65. package/lib/block-provider/FormBlockProvider.js +2 -1
  66. package/lib/block-provider/FormFieldProvider.d.ts +8 -0
  67. package/lib/block-provider/FormFieldProvider.js +120 -0
  68. package/lib/block-provider/KanbanBlockProvider.js +118 -1
  69. package/lib/block-provider/TableFieldProvider.js +19 -2
  70. package/lib/block-provider/TableSelectorProvider.js +39 -5
  71. package/lib/block-provider/hooks/index.js +11 -3
  72. package/lib/block-provider/index.d.ts +1 -0
  73. package/lib/block-provider/index.js +13 -0
  74. package/lib/collection-manager/CollectionField.js +5 -1
  75. package/lib/collection-manager/CollectionFieldProvider.js +9 -3
  76. package/lib/collection-manager/Configuration/AddFieldAction.js +1 -1
  77. package/lib/collection-manager/Configuration/EditFieldAction.js +1 -1
  78. package/lib/collection-manager/hooks/useCollectionManager.js +20 -5
  79. package/lib/collection-manager/interfaces/index.d.ts +2 -1
  80. package/lib/collection-manager/interfaces/index.js +26 -13
  81. package/lib/collection-manager/interfaces/integer.d.ts +2 -0
  82. package/lib/{workflow/nodes/update.js → collection-manager/interfaces/integer.js} +26 -24
  83. package/lib/collection-manager/interfaces/linkTo.js +14 -6
  84. package/lib/collection-manager/interfaces/m2m.js +12 -5
  85. package/lib/collection-manager/interfaces/m2o.js +61 -10
  86. package/lib/collection-manager/interfaces/o2m.js +72 -45
  87. package/lib/collection-manager/interfaces/o2o.js +103 -43
  88. package/lib/collection-manager/interfaces/properties/operators.d.ts +13 -0
  89. package/lib/collection-manager/interfaces/properties/operators.js +7 -0
  90. package/lib/index.d.ts +0 -1
  91. package/lib/index.js +0 -13
  92. package/lib/locale/en_US.d.ts +7 -0
  93. package/lib/locale/en_US.js +9 -2
  94. package/lib/locale/zh_CN.d.ts +10 -1
  95. package/lib/locale/zh_CN.js +10 -1
  96. package/lib/schema-component/antd/AntdSchemaComponentProvider.js +3 -0
  97. package/lib/schema-component/antd/filter/DynamicComponent.js +52 -1
  98. package/lib/schema-component/antd/filter/FilterItem.js +7 -0
  99. package/lib/schema-component/antd/filter/useFilterActionProps.js +2 -0
  100. package/lib/schema-component/antd/form-item/FormItem.js +80 -17
  101. package/lib/schema-component/antd/form-v2/FormField.d.ts +1 -0
  102. package/lib/schema-component/antd/form-v2/FormField.js +48 -0
  103. package/lib/schema-component/antd/form-v2/index.d.ts +1 -0
  104. package/lib/schema-component/antd/form-v2/index.js +17 -0
  105. package/lib/schema-component/antd/g2plot/G2Plot.js +32 -2
  106. package/lib/schema-component/antd/g2plot/requestChartData.d.ts +4 -0
  107. package/lib/schema-component/antd/g2plot/requestChartData.js +42 -0
  108. package/lib/schema-component/antd/kanban/Kanban.Card.Designer.js +9 -0
  109. package/lib/schema-component/antd/record-picker/InputRecordPicker.js +33 -13
  110. package/lib/schema-component/antd/record-picker/ReadPrettyRecordPicker.js +32 -9
  111. package/lib/schema-component/antd/record-picker/useFieldNames.js +2 -2
  112. package/lib/schema-component/antd/select/shared.js +4 -2
  113. package/lib/schema-component/antd/table-v2/Table.Column.Decorator.d.ts +1 -1
  114. package/lib/schema-component/antd/table-v2/Table.Column.Decorator.js +6 -2
  115. package/lib/schema-component/antd/table-v2/Table.Column.Designer.js +7 -2
  116. package/lib/schema-component/antd/table-v2/Table.js +4 -2
  117. package/lib/schema-component/antd/table-v2/TableField.js +8 -0
  118. package/lib/schema-initializer/buttons/TableColumnInitializers.js +25 -11
  119. package/lib/schema-initializer/components/assigned-field/AssignedField.js +29 -43
  120. package/lib/schema-initializer/utils.d.ts +2 -0
  121. package/lib/schema-initializer/utils.js +166 -30
  122. package/lib/schema-settings/SchemaSettings.js +5 -2
  123. package/package.json +4 -5
  124. package/es/workflow/ExecutionResourceProvider.d.ts +0 -4
  125. package/es/workflow/ExecutionResourceProvider.js +0 -35
  126. package/es/workflow/WorkflowCanvas.d.ts +0 -15
  127. package/es/workflow/WorkflowCanvas.js +0 -375
  128. package/es/workflow/WorkflowLink.d.ts +0 -1
  129. package/es/workflow/WorkflowLink.js +0 -21
  130. package/es/workflow/WorkflowPage.d.ts +0 -1
  131. package/es/workflow/WorkflowPage.js +0 -43
  132. package/es/workflow/WorkflowRouteProvider.d.ts +0 -1
  133. package/es/workflow/WorkflowRouteProvider.js +0 -30
  134. package/es/workflow/WorkflowShortcut.d.ts +0 -1
  135. package/es/workflow/WorkflowShortcut.js +0 -62
  136. package/es/workflow/calculators.d.ts +0 -101
  137. package/es/workflow/calculators.js +0 -647
  138. package/es/workflow/components/Duration.d.ts +0 -5
  139. package/es/workflow/components/Duration.js +0 -61
  140. package/es/workflow/index.d.ts +0 -5
  141. package/es/workflow/index.js +0 -5
  142. package/es/workflow/nodes/calculation.d.ts +0 -25
  143. package/es/workflow/nodes/calculation.js +0 -47
  144. package/es/workflow/nodes/condition.d.ts +0 -46
  145. package/es/workflow/nodes/condition.js +0 -255
  146. package/es/workflow/nodes/create.d.ts +0 -46
  147. package/es/workflow/nodes/create.js +0 -90
  148. package/es/workflow/nodes/delay.d.ts +0 -35
  149. package/es/workflow/nodes/delay.js +0 -37
  150. package/es/workflow/nodes/destroy.d.ts +0 -55
  151. package/es/workflow/nodes/destroy.js +0 -27
  152. package/es/workflow/nodes/index.d.ts +0 -33
  153. package/es/workflow/nodes/index.js +0 -312
  154. package/es/workflow/nodes/parallel.d.ts +0 -24
  155. package/es/workflow/nodes/parallel.js +0 -132
  156. package/es/workflow/nodes/query.d.ts +0 -70
  157. package/es/workflow/nodes/query.js +0 -98
  158. package/es/workflow/nodes/update.d.ts +0 -60
  159. package/es/workflow/schemas/collection.d.ts +0 -42
  160. package/es/workflow/schemas/collection.js +0 -57
  161. package/es/workflow/schemas/executions.d.ts +0 -209
  162. package/es/workflow/schemas/executions.js +0 -157
  163. package/es/workflow/schemas/workflows.d.ts +0 -2
  164. package/es/workflow/schemas/workflows.js +0 -334
  165. package/es/workflow/style.d.ts +0 -12
  166. package/es/workflow/style.js +0 -17
  167. package/es/workflow/triggers/collection.d.ts +0 -77
  168. package/es/workflow/triggers/collection.js +0 -144
  169. package/es/workflow/triggers/index.d.ts +0 -26
  170. package/es/workflow/triggers/index.js +0 -177
  171. package/es/workflow/triggers/schedule/DateFieldsSelect.d.ts +0 -2
  172. package/es/workflow/triggers/schedule/DateFieldsSelect.js +0 -39
  173. package/es/workflow/triggers/schedule/EndsByField.d.ts +0 -5
  174. package/es/workflow/triggers/schedule/EndsByField.js +0 -57
  175. package/es/workflow/triggers/schedule/OnField.d.ts +0 -5
  176. package/es/workflow/triggers/schedule/OnField.js +0 -87
  177. package/es/workflow/triggers/schedule/RepeatField.d.ts +0 -5
  178. package/es/workflow/triggers/schedule/RepeatField.js +0 -131
  179. package/es/workflow/triggers/schedule/ScheduleConfig.d.ts +0 -1
  180. package/es/workflow/triggers/schedule/ScheduleConfig.js +0 -225
  181. package/es/workflow/triggers/schedule/index.d.ts +0 -25
  182. package/es/workflow/triggers/schedule/index.js +0 -77
  183. package/es/workflow/triggers/schedule/locale/Cron.zh-CN.d.ts +0 -34
  184. package/es/workflow/triggers/schedule/locale/Cron.zh-CN.js +0 -37
  185. package/lib/workflow/ExecutionResourceProvider.d.ts +0 -4
  186. package/lib/workflow/ExecutionResourceProvider.js +0 -48
  187. package/lib/workflow/WorkflowCanvas.d.ts +0 -15
  188. package/lib/workflow/WorkflowCanvas.js +0 -408
  189. package/lib/workflow/WorkflowLink.d.ts +0 -1
  190. package/lib/workflow/WorkflowLink.js +0 -36
  191. package/lib/workflow/WorkflowPage.d.ts +0 -1
  192. package/lib/workflow/WorkflowPage.js +0 -60
  193. package/lib/workflow/WorkflowRouteProvider.d.ts +0 -1
  194. package/lib/workflow/WorkflowRouteProvider.js +0 -47
  195. package/lib/workflow/WorkflowShortcut.d.ts +0 -1
  196. package/lib/workflow/WorkflowShortcut.js +0 -87
  197. package/lib/workflow/calculators.d.ts +0 -101
  198. package/lib/workflow/calculators.js +0 -688
  199. package/lib/workflow/components/Duration.d.ts +0 -5
  200. package/lib/workflow/components/Duration.js +0 -74
  201. package/lib/workflow/index.d.ts +0 -5
  202. package/lib/workflow/index.js +0 -70
  203. package/lib/workflow/nodes/calculation.d.ts +0 -25
  204. package/lib/workflow/nodes/calculation.js +0 -61
  205. package/lib/workflow/nodes/condition.d.ts +0 -46
  206. package/lib/workflow/nodes/condition.js +0 -275
  207. package/lib/workflow/nodes/create.d.ts +0 -46
  208. package/lib/workflow/nodes/create.js +0 -107
  209. package/lib/workflow/nodes/delay.d.ts +0 -35
  210. package/lib/workflow/nodes/delay.js +0 -48
  211. package/lib/workflow/nodes/destroy.d.ts +0 -55
  212. package/lib/workflow/nodes/destroy.js +0 -38
  213. package/lib/workflow/nodes/index.d.ts +0 -33
  214. package/lib/workflow/nodes/index.js +0 -357
  215. package/lib/workflow/nodes/parallel.d.ts +0 -24
  216. package/lib/workflow/nodes/parallel.js +0 -155
  217. package/lib/workflow/nodes/query.d.ts +0 -70
  218. package/lib/workflow/nodes/query.js +0 -115
  219. package/lib/workflow/nodes/update.d.ts +0 -60
  220. package/lib/workflow/schemas/collection.d.ts +0 -42
  221. package/lib/workflow/schemas/collection.js +0 -70
  222. package/lib/workflow/schemas/executions.d.ts +0 -209
  223. package/lib/workflow/schemas/executions.js +0 -164
  224. package/lib/workflow/schemas/workflows.d.ts +0 -2
  225. package/lib/workflow/schemas/workflows.js +0 -344
  226. package/lib/workflow/style.d.ts +0 -12
  227. package/lib/workflow/style.js +0 -37
  228. package/lib/workflow/triggers/collection.d.ts +0 -77
  229. package/lib/workflow/triggers/collection.js +0 -164
  230. package/lib/workflow/triggers/index.d.ts +0 -26
  231. package/lib/workflow/triggers/index.js +0 -201
  232. package/lib/workflow/triggers/schedule/DateFieldsSelect.d.ts +0 -2
  233. package/lib/workflow/triggers/schedule/DateFieldsSelect.js +0 -54
  234. package/lib/workflow/triggers/schedule/EndsByField.d.ts +0 -5
  235. package/lib/workflow/triggers/schedule/EndsByField.js +0 -73
  236. package/lib/workflow/triggers/schedule/OnField.d.ts +0 -5
  237. package/lib/workflow/triggers/schedule/OnField.js +0 -105
  238. package/lib/workflow/triggers/schedule/RepeatField.d.ts +0 -5
  239. package/lib/workflow/triggers/schedule/RepeatField.js +0 -146
  240. package/lib/workflow/triggers/schedule/ScheduleConfig.d.ts +0 -1
  241. package/lib/workflow/triggers/schedule/ScheduleConfig.js +0 -250
  242. package/lib/workflow/triggers/schedule/index.d.ts +0 -25
  243. package/lib/workflow/triggers/schedule/index.js +0 -94
  244. package/lib/workflow/triggers/schedule/locale/Cron.zh-CN.d.ts +0 -34
  245. package/lib/workflow/triggers/schedule/locale/Cron.zh-CN.js +0 -44
@@ -120,6 +120,7 @@ export default {
120
120
  "Phone": "手机号码",
121
121
  "Email": "电子邮箱",
122
122
  "Number": "数字",
123
+ "Integer": "整数",
123
124
  "Percent": "百分比",
124
125
  "Password": "密码",
125
126
  "Formula": "公式",
@@ -173,7 +174,11 @@ export default {
173
174
  "Many to one description": "用于创建多对一关系,比如一个城市只能属于一个国家,一个国家可以有多个城市。作为字段存在时,它是一个下拉选择用于选择目标数据表的数据。创建后,会在目标数据表里自动生成一个多对一字段。",
174
175
  "Many to many description": "用于创建多对多关系,比如一个学生会有多个老师,一个老师也会有多个学生。作为字段存在时,它是一个下拉选择用于选择目标数据表的数据。",
175
176
  "Generated automatically if left blank": "留空时,自动生成中间表",
176
- "References fields of associated table": "引用关联表的字段",
177
+ "Display association fields": "显示关联表的字段",
178
+ "Field component": "字段组件",
179
+ "Subtable": "子表格",
180
+ "Subform": "子表单",
181
+ "Record picker": "数据选择器",
177
182
  "Toggles the subfield mode": "切换子字段模式",
178
183
  "Selector mode": "选择器模式",
179
184
  "Subtable mode": "子表格模式",
@@ -189,6 +194,7 @@ export default {
189
194
  "Add filter group": "添加筛选分组",
190
195
  "is": "等于",
191
196
  "is not": "不等于",
197
+ "is variable": "为动态变量",
192
198
  "contains": "包含",
193
199
  "does not contain": "不包含",
194
200
  "starts with": "开头是",
@@ -501,10 +507,13 @@ export default {
501
507
  'Branch into "Yes" and "No"': '“是”和“否”分别继续',
502
508
  'Conditions': '条件配置',
503
509
  'Parallel branch': '分支',
510
+ 'Add branch': '增加分支',
504
511
  'All succeeded': '全部成功',
505
512
  'Any succeeded': '任意成功',
513
+ 'Any succeeded or failed': '任意成功或失败',
506
514
  'Continue after all branches succeeded': '全部分支都成功后才能继续',
507
515
  'Continue after any branch succeeded': '任意分支成功后就继续',
516
+ 'Continue after any branch succeeded, or exit after any branch failed': '任意分支成功继续,或失败后退出',
508
517
  'Delay': '延时',
509
518
  'Duration': '时长',
510
519
  'End Status': '到时状态',
@@ -9,10 +9,12 @@ import * as components from '.';
9
9
  import * as common from '../common';
10
10
  import { SchemaComponentOptions } from '../core/SchemaComponentOptions';
11
11
  import { useFilterActionProps } from './filter/useFilterActionProps';
12
+ import { requestChartData } from './g2plot/requestChartData';
12
13
  export var AntdSchemaComponentProvider = function AntdSchemaComponentProvider(props) {
13
14
  var children = props.children;
14
15
  return /*#__PURE__*/React.createElement(SchemaComponentOptions, {
15
16
  scope: {
17
+ requestChartData: requestChartData,
16
18
  useFilterActionProps: useFilterActionProps
17
19
  },
18
20
  components: _objectSpread(_objectSpread({}, components), common)
@@ -1,16 +1,60 @@
1
+ var _templateObject;
2
+
1
3
  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; }
2
4
 
3
5
  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; }
4
6
 
5
7
  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; }
6
8
 
9
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
10
+
11
+ import { css } from '@emotion/css';
7
12
  import { createForm, onFieldValueChange } from '@formily/core';
8
- import { FieldContext, FormContext } from '@formily/react';
13
+ import { connect, FieldContext, FormContext } from '@formily/react';
9
14
  import { merge } from '@formily/shared';
15
+ import { Cascader } from 'antd';
10
16
  import React, { useContext, useMemo } from 'react';
11
17
  import { SchemaComponent } from '../../core';
12
- import { useComponent } from '../../hooks';
18
+ import { useCompile, useComponent } from '../../hooks';
13
19
  import { FilterContext } from './context';
20
+ import { useFilterOptions } from './useFilterActionProps';
21
+ var VariableCascader = connect(function (props) {
22
+ var fields = useFilterOptions('users');
23
+ var compile = useCompile();
24
+ var value = props.value,
25
+ _onChange = props.onChange;
26
+ return /*#__PURE__*/React.createElement(Cascader, {
27
+ className: css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: 160px;\n "]))),
28
+ value: value ? value.split('.') : [],
29
+ fieldNames: {
30
+ label: 'title',
31
+ value: 'name',
32
+ children: 'children'
33
+ },
34
+ onChange: function onChange(value) {
35
+ _onChange(value ? value.join('.') : null);
36
+ },
37
+ options: compile([{
38
+ title: '{{t("Current user")}}',
39
+ name: 'currentUser',
40
+ children: fields.filter(function (field) {
41
+ if (!field.target) {
42
+ return true;
43
+ }
44
+
45
+ return field.type === 'belongsTo';
46
+ }).map(function (field) {
47
+ if (field.children) {
48
+ field.children = field.children.filter(function (child) {
49
+ return !child.target;
50
+ });
51
+ }
52
+
53
+ return field;
54
+ })
55
+ }])
56
+ });
57
+ });
14
58
  export var DynamicComponent = function DynamicComponent(props) {
15
59
  var _useContext = useContext(FilterContext),
16
60
  dynamicComponent = _useContext.dynamicComponent;
@@ -49,7 +93,10 @@ export var DynamicComponent = function DynamicComponent(props) {
49
93
  'x-read-pretty': false,
50
94
  'x-validator': undefined,
51
95
  'x-decorator': undefined
52
- })
96
+ }),
97
+ components: {
98
+ VariableCascader: VariableCascader
99
+ }
53
100
  }));
54
101
  };
55
102
 
@@ -1,4 +1,9 @@
1
+ var _templateObject;
2
+
3
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
4
+
1
5
  import { CloseCircleOutlined } from '@ant-design/icons';
6
+ import { css } from '@emotion/css';
2
7
  import { observer } from '@formily/react';
3
8
  import { Cascader, Select, Space } from 'antd';
4
9
  import React, { useContext } from 'react';
@@ -30,6 +35,7 @@ export var FilterItem = observer(function (props) {
30
35
  marginBottom: 8
31
36
  }
32
37
  }, /*#__PURE__*/React.createElement(Space, null, /*#__PURE__*/React.createElement(Cascader, {
38
+ className: css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n width: 160px;\n "]))),
33
39
  fieldNames: {
34
40
  label: 'title',
35
41
  value: 'name',
@@ -56,6 +56,8 @@ export var useFilterOptions = function useFilterOptions(collectionName) {
56
56
  operators = _fieldInterface$filte.operators;
57
57
  var option = {
58
58
  name: field.name,
59
+ type: field.type,
60
+ target: field.target,
59
61
  title: (field === null || field === void 0 ? void 0 : (_field$uiSchema = field.uiSchema) === null || _field$uiSchema === void 0 ? void 0 : _field$uiSchema.title) || field.name,
60
62
  schema: field === null || field === void 0 ? void 0 : field.uiSchema,
61
63
  operators: (operators === null || operators === void 0 ? void 0 : (_operators$filter = operators.filter) === null || _operators$filter === void 0 ? void 0 : _operators$filter.call(operators, function (operator) {
@@ -11,14 +11,24 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
11
11
  import { css } from '@emotion/css';
12
12
  import { FormItem as Item } from '@formily/antd';
13
13
  import { useField, useFieldSchema } from '@formily/react';
14
+ import { uid } from '@formily/shared';
14
15
  import React from 'react';
15
16
  import { useTranslation } from 'react-i18next';
16
17
  import { useCompile, useDesignable } from '../..';
17
- import { useFormBlockContext } from '../../../block-provider';
18
+ import { useFilterByTk, useFormBlockContext } from '../../../block-provider';
18
19
  import { useCollection, useCollectionManager } from '../../../collection-manager';
19
20
  import { GeneralSchemaDesigner, SchemaSettings } from '../../../schema-settings';
20
21
  import { BlockItem } from '../block-item';
21
22
  import { HTMLEncode } from '../input/shared';
23
+
24
+ var divWrap = function divWrap(schema) {
25
+ return {
26
+ type: 'void',
27
+ 'x-component': 'div',
28
+ properties: _defineProperty({}, schema.name || uid(), schema)
29
+ };
30
+ };
31
+
22
32
  export var FormItem = function FormItem(props) {
23
33
  var field = useField();
24
34
  return /*#__PURE__*/React.createElement(BlockItem, {
@@ -34,15 +44,20 @@ export var FormItem = function FormItem(props) {
34
44
  })));
35
45
  };
36
46
 
37
- FormItem.Designer = function () {
47
+ FormItem.Designer = function (props) {
38
48
  var _collectionField$uiSc, _collectionField$uiSc2, _fieldSchema$xDecora, _field$componentProps, _field$componentProps2;
39
49
 
40
50
  var _useCollectionManager = useCollectionManager(),
41
- getCollectionFields = _useCollectionManager.getCollectionFields;
51
+ getCollectionFields = _useCollectionManager.getCollectionFields,
52
+ getCollection = _useCollectionManager.getCollection,
53
+ getInterface = _useCollectionManager.getInterface,
54
+ getCollectionJoinField = _useCollectionManager.getCollectionJoinField;
42
55
 
43
56
  var _useCollection = useCollection(),
44
57
  getField = _useCollection.getField;
45
58
 
59
+ var tk = useFilterByTk();
60
+
46
61
  var _useFormBlockContext = useFormBlockContext(),
47
62
  form = _useFormBlockContext.form;
48
63
 
@@ -54,12 +69,16 @@ FormItem.Designer = function () {
54
69
 
55
70
  var _useDesignable = useDesignable(),
56
71
  dn = _useDesignable.dn,
57
- refresh = _useDesignable.refresh;
72
+ refresh = _useDesignable.refresh,
73
+ insertAdjacent = _useDesignable.insertAdjacent,
74
+ insertBeforeBegin = _useDesignable.insertBeforeBegin;
58
75
 
59
76
  var compile = useCompile();
60
- var collectionField = getField(fieldSchema['name']);
77
+ var collectionField = getField(fieldSchema['name']) || getCollectionJoinField(fieldSchema['x-collection-field']);
78
+ var interfaceConfig = getInterface(collectionField === null || collectionField === void 0 ? void 0 : collectionField.interface);
61
79
  var originalTitle = collectionField === null || collectionField === void 0 ? void 0 : (_collectionField$uiSc = collectionField.uiSchema) === null || _collectionField$uiSc === void 0 ? void 0 : _collectionField$uiSc.title;
62
80
  var targetFields = (collectionField === null || collectionField === void 0 ? void 0 : collectionField.target) ? getCollectionFields(collectionField.target) : [];
81
+ var isSubFormAssocitionField = field.address.segments.includes('__form_grid');
63
82
  var initialValue = {
64
83
  title: field.title === originalTitle ? undefined : field.title
65
84
  };
@@ -177,7 +196,7 @@ FormItem.Designer = function () {
177
196
  });
178
197
  dn.refresh();
179
198
  }
180
- }), !field.readPretty && /*#__PURE__*/React.createElement(SchemaSettings.SwitchItem, {
199
+ }), !field.readPretty && fieldSchema['x-component'] !== 'FormField' && /*#__PURE__*/React.createElement(SchemaSettings.SwitchItem, {
181
200
  key: "required",
182
201
  title: t('Required'),
183
202
  checked: field.required,
@@ -192,6 +211,52 @@ FormItem.Designer = function () {
192
211
  });
193
212
  refresh();
194
213
  }
214
+ }), form && !isSubFormAssocitionField && ['o2o', 'oho', 'obo', 'o2m'].includes(collectionField === null || collectionField === void 0 ? void 0 : collectionField.interface) && /*#__PURE__*/React.createElement(SchemaSettings.SelectItem, {
215
+ title: t('Field component'),
216
+ options: (collectionField === null || collectionField === void 0 ? void 0 : collectionField.interface) === 'o2m' ? [{
217
+ label: t('Record picker'),
218
+ value: 'CollectionField'
219
+ }, {
220
+ label: t('Subtable'),
221
+ value: 'TableField'
222
+ }] : [{
223
+ label: t('Record picker'),
224
+ value: 'CollectionField'
225
+ }, {
226
+ label: t('Subform'),
227
+ value: 'FormField'
228
+ }],
229
+ value: fieldSchema['x-component'],
230
+ onChange: function onChange(v) {
231
+ var _interfaceConfig$sche;
232
+
233
+ var schema = {
234
+ name: collectionField.name,
235
+ type: 'void',
236
+ // title: compile(collectionField.uiSchema?.title),
237
+ 'x-decorator': 'FormItem',
238
+ 'x-designer': 'FormItem.Designer',
239
+ 'x-component': v,
240
+ 'x-component-props': {},
241
+ 'x-collection-field': fieldSchema['x-collection-field']
242
+ };
243
+ interfaceConfig === null || interfaceConfig === void 0 ? void 0 : (_interfaceConfig$sche = interfaceConfig.schemaInitialize) === null || _interfaceConfig$sche === void 0 ? void 0 : _interfaceConfig$sche.call(interfaceConfig, schema, {
244
+ field: collectionField,
245
+ block: 'Form',
246
+ readPretty: field.readPretty,
247
+ action: tk ? 'get' : null
248
+ });
249
+ insertAdjacent('beforeBegin', divWrap(schema), {
250
+ onSuccess: function onSuccess() {
251
+ dn.remove(null, {
252
+ removeParentsIfNoChildren: true,
253
+ breakRemoveOn: {
254
+ 'x-component': 'Grid'
255
+ }
256
+ });
257
+ }
258
+ });
259
+ }
195
260
  }), form && !(form === null || form === void 0 ? void 0 : form.readPretty) && (collectionField === null || collectionField === void 0 ? void 0 : collectionField.interface) !== 'o2m' && /*#__PURE__*/React.createElement(SchemaSettings.SelectItem, {
196
261
  key: "pattern",
197
262
  title: t('Pattern'),
@@ -207,8 +272,6 @@ FormItem.Designer = function () {
207
272
  }],
208
273
  value: readOnlyMode,
209
274
  onChange: function onChange(v) {
210
- console.log('v', v);
211
-
212
275
  var schema = _defineProperty({}, 'x-uid', fieldSchema['x-uid']);
213
276
 
214
277
  switch (v) {
@@ -229,8 +292,7 @@ FormItem.Designer = function () {
229
292
  fieldSchema['x-disabled'] = false;
230
293
  schema['x-read-pretty'] = true;
231
294
  schema['x-disabled'] = false;
232
- field.readPretty = true; // field.disabled = true;
233
-
295
+ field.readPretty = true;
234
296
  break;
235
297
  }
236
298
 
@@ -251,7 +313,7 @@ FormItem.Designer = function () {
251
313
  });
252
314
  dn.refresh();
253
315
  }
254
- }), (collectionField === null || collectionField === void 0 ? void 0 : collectionField.target) && /*#__PURE__*/React.createElement(SchemaSettings.SelectItem, {
316
+ }), (collectionField === null || collectionField === void 0 ? void 0 : collectionField.target) && fieldSchema['x-component'] === 'CollectionField' && /*#__PURE__*/React.createElement(SchemaSettings.SelectItem, {
255
317
  key: "title-field",
256
318
  title: t('Title field'),
257
319
  options: options,
@@ -261,14 +323,15 @@ FormItem.Designer = function () {
261
323
 
262
324
  var fieldNames = _objectSpread(_objectSpread({}, field.componentProps.fieldNames), {}, {
263
325
  label: label
264
- });
326
+ }); // if (fieldSchema['x-component-props']?.['field']?.['uiSchema']?.['x-component-props']) {
327
+ // fieldSchema['x-component-props']['field']['uiSchema']['x-component-props']['fieldNames'] = fieldNames;
328
+ // } else {
329
+ // }
330
+
265
331
 
266
332
  fieldSchema['x-component-props'] = fieldSchema['x-component-props'] || {};
267
333
  fieldSchema['x-component-props']['fieldNames'] = fieldNames;
268
- field.componentProps.fieldNames = fieldNames;
269
- schema['x-component-props'] = {
270
- fieldNames: fieldNames
271
- };
334
+ schema['x-component-props'] = fieldSchema['x-component-props'];
272
335
  dn.emit('patch', {
273
336
  schema: schema
274
337
  });
@@ -0,0 +1 @@
1
+ export declare const FormField: any;
@@ -0,0 +1,29 @@
1
+ import { observer, useField, useFieldSchema } from '@formily/react';
2
+ import React, { useEffect } from 'react';
3
+ import { useFormBlockContext } from '../../../block-provider';
4
+ import { useCollection } from '../../../collection-manager';
5
+ import { useCompile } from '../../hooks';
6
+ export var FormField = observer(function (props) {
7
+ var fieldSchema = useFieldSchema();
8
+
9
+ var _useCollection = useCollection(),
10
+ getField = _useCollection.getField;
11
+
12
+ var field = useField();
13
+ var collectionField = getField(fieldSchema.name);
14
+ var compile = useCompile();
15
+ var ctx = useFormBlockContext();
16
+ useEffect(function () {
17
+ if (!field.title) {
18
+ var _collectionField$uiSc;
19
+
20
+ field.title = compile(collectionField === null || collectionField === void 0 ? void 0 : (_collectionField$uiSc = collectionField.uiSchema) === null || _collectionField$uiSc === void 0 ? void 0 : _collectionField$uiSc.title);
21
+ }
22
+
23
+ if (ctx === null || ctx === void 0 ? void 0 : ctx.field) {
24
+ ctx.field.added = ctx.field.added || new Set();
25
+ ctx.field.added.add(fieldSchema.name);
26
+ }
27
+ }, []);
28
+ return /*#__PURE__*/React.createElement("div", null, props.children);
29
+ });
@@ -1,3 +1,4 @@
1
1
  import { Form as FormV2 } from './Form';
2
2
  import { DetailsDesigner } from './Form.Designer';
3
3
  export { FormV2, DetailsDesigner };
4
+ export * from './FormField';
@@ -2,4 +2,5 @@ import { Form as FormV2 } from './Form';
2
2
  import { DetailsDesigner, FormDesigner, ReadPrettyFormDesigner } from './Form.Designer';
3
3
  FormV2.Designer = FormDesigner;
4
4
  FormV2.ReadPrettyDesigner = ReadPrettyFormDesigner;
5
- export { FormV2, DetailsDesigner };
5
+ export { FormV2, DetailsDesigner };
6
+ export * from './FormField';
@@ -4,7 +4,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
4
4
 
5
5
  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; }
6
6
 
7
- import { Area, Bar, Column, Line, Pie } from '@antv/g2plot';
7
+ import { Area, Bar, BidirectionalBar, Box, Bullet, Chord, CirclePacking, Column, DualAxes, Facet, Funnel, Gauge, Heatmap, Histogram, Line, Liquid, Mix, Pie, Progress, Radar, RadialBar, RingProgress, Rose, Sankey, Scatter, Stock, Sunburst, TinyArea, TinyColumn, TinyLine, Treemap, Venn, Violin, Waterfall, WordCloud } from '@antv/g2plot';
8
8
  import { observer, useField } from '@formily/react';
9
9
  import { Spin } from 'antd';
10
10
  import cls from 'classnames';
@@ -13,11 +13,41 @@ import { useTranslation } from 'react-i18next';
13
13
  import { useAPIClient } from '../../../api-client';
14
14
  import { G2PlotDesigner } from './G2PlotDesigner';
15
15
  var plots = {
16
+ Line: Line,
16
17
  Area: Area,
17
18
  Column: Column,
18
- Line: Line,
19
+ Bar: Bar,
19
20
  Pie: Pie,
20
- Bar: Bar
21
+ Rose: Rose,
22
+ WordCloud: WordCloud,
23
+ Scatter: Scatter,
24
+ Radar: Radar,
25
+ DualAxes: DualAxes,
26
+ TinyLine: TinyLine,
27
+ TinyColumn: TinyColumn,
28
+ TinyArea: TinyArea,
29
+ Histogram: Histogram,
30
+ Progress: Progress,
31
+ RingProgress: RingProgress,
32
+ Heatmap: Heatmap,
33
+ Box: Box,
34
+ Violin: Violin,
35
+ Venn: Venn,
36
+ Stock: Stock,
37
+ Funnel: Funnel,
38
+ Liquid: Liquid,
39
+ Bullet: Bullet,
40
+ Sunburst: Sunburst,
41
+ Gauge: Gauge,
42
+ Waterfall: Waterfall,
43
+ RadialBar: RadialBar,
44
+ BidirectionalBar: BidirectionalBar,
45
+ Treemap: Treemap,
46
+ Sankey: Sankey,
47
+ Chord: Chord,
48
+ CirclePacking: CirclePacking,
49
+ Mix: Mix,
50
+ Facet: Facet
21
51
  };
22
52
  export var G2PlotRenderer = /*#__PURE__*/forwardRef(function (props, ref) {
23
53
  var className = props.className,
@@ -0,0 +1,4 @@
1
+ import { APIClient } from '../../../api-client';
2
+ export declare const requestChartData: (options: any) => (this: {
3
+ api: APIClient;
4
+ }) => Promise<any>;
@@ -0,0 +1,33 @@
1
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
2
+
3
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
4
+
5
+ export var requestChartData = function requestChartData(options) {
6
+ return /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
7
+ var _response$data, response;
8
+
9
+ return regeneratorRuntime.wrap(function _callee$(_context) {
10
+ while (1) {
11
+ switch (_context.prev = _context.next) {
12
+ case 0:
13
+ _context.prev = 0;
14
+ _context.next = 3;
15
+ return this.api.request(options);
16
+
17
+ case 3:
18
+ response = _context.sent;
19
+ return _context.abrupt("return", response === null || response === void 0 ? void 0 : (_response$data = response.data) === null || _response$data === void 0 ? void 0 : _response$data.data);
20
+
21
+ case 7:
22
+ _context.prev = 7;
23
+ _context.t0 = _context["catch"](0);
24
+ return _context.abrupt("return", []);
25
+
26
+ case 10:
27
+ case "end":
28
+ return _context.stop();
29
+ }
30
+ }
31
+ }, _callee, this, [[0, 7]]);
32
+ }));
33
+ };
@@ -14,7 +14,7 @@ import { useTranslation } from 'react-i18next';
14
14
  import { useAPIClient } from '../../../api-client';
15
15
  import { createDesignable, useDesignable } from '../../../schema-component';
16
16
  import { SchemaInitializer } from '../../../schema-initializer';
17
- import { useFormItemInitializerFields } from '../../../schema-initializer/utils';
17
+ import { useAssociatedFormItemInitializerFields, useFormItemInitializerFields } from '../../../schema-initializer/utils';
18
18
  var titleCss = css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n pointer-events: none;\n position: absolute;\n font-size: 12px;\n background: #f18b62;\n color: #fff;\n padding: 0 5px;\n line-height: 16px;\n height: 16px;\n border-bottom-right-radius: 2px;\n border-radius: 2px;\n top: 2px;\n left: 2px;\n"])));
19
19
 
20
20
  var gridRowColWrap = function gridRowColWrap(schema) {
@@ -97,6 +97,15 @@ export var KanbanCardDesigner = function KanbanCardDesigner(props) {
97
97
  type: 'itemGroup',
98
98
  title: t('Display fields'),
99
99
  children: fields
100
+ }, {
101
+ type: 'divider'
102
+ }, {
103
+ type: 'itemGroup',
104
+ title: t('Display association fields'),
105
+ children: useAssociatedFormItemInitializerFields({
106
+ readPretty: true,
107
+ block: 'Kanban'
108
+ })
100
109
  }],
101
110
  component: /*#__PURE__*/React.createElement(MenuOutlined, {
102
111
  style: {
@@ -25,7 +25,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
25
25
 
26
26
  import { RecursionField, useFieldSchema } from '@formily/react';
27
27
  import { Select } from 'antd';
28
- import React, { createContext, useContext, useState } from 'react';
28
+ import React, { createContext, useContext, useEffect, useState } from 'react';
29
29
  import { useTableSelectorProps as useTsp } from '../../../block-provider/TableSelectorProvider';
30
30
  import { CollectionProvider, useCollection } from '../../../collection-manager';
31
31
  import { FormProvider, SchemaComponentOptions } from '../../core';
@@ -116,19 +116,36 @@ export var InputRecordPicker = function InputRecordPicker(props) {
116
116
  var fieldSchema = useFieldSchema();
117
117
  var collectionField = useAssociation(props);
118
118
  var compile = useCompile();
119
- var options = (Array.isArray(value) ? value : value ? [value] : []).map(function (option) {
120
- var label = option[fieldNames.label];
121
- return _objectSpread(_objectSpread({}, option), {}, _defineProperty({}, fieldNames.label, compile(label)));
122
- });
123
119
 
124
- var _useState3 = useState(options),
120
+ var _useState3 = useState([]),
125
121
  _useState4 = _slicedToArray(_useState3, 2),
126
122
  selectedRows = _useState4[0],
127
123
  setSelectedRows = _useState4[1];
128
124
 
129
- var values = options === null || options === void 0 ? void 0 : options.map(function (option) {
130
- return option[fieldNames.value];
131
- });
125
+ var _useState5 = useState([]),
126
+ _useState6 = _slicedToArray(_useState5, 2),
127
+ options = _useState6[0],
128
+ setOptions = _useState6[1];
129
+
130
+ useEffect(function () {
131
+ if (value) {
132
+ var opts = (Array.isArray(value) ? value : value ? [value] : []).map(function (option) {
133
+ var label = option[fieldNames.label];
134
+ return _objectSpread(_objectSpread({}, option), {}, _defineProperty({}, fieldNames.label, compile(label)));
135
+ });
136
+ setOptions(opts);
137
+ setSelectedRows(opts);
138
+ }
139
+ }, [value]);
140
+ useEffect(function () {});
141
+
142
+ var getValue = function getValue() {
143
+ if (multiple == null) return null;
144
+ return multiple ? Array.isArray(value) ? value === null || value === void 0 ? void 0 : value.map(function (v) {
145
+ return v[fieldNames.value];
146
+ }) : [] : value === null || value === void 0 ? void 0 : value[fieldNames.value];
147
+ };
148
+
132
149
  return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Select, _objectSpread(_objectSpread({}, others), {}, {
133
150
  mode: multiple ? 'multiple' : props.mode,
134
151
  fieldNames: fieldNames,
@@ -146,17 +163,17 @@ export var InputRecordPicker = function InputRecordPicker(props) {
146
163
 
147
164
  setSelectedRows([]);
148
165
  } else if (Array.isArray(changed)) {
149
- var _values = options === null || options === void 0 ? void 0 : options.filter(function (option) {
166
+ var values = options === null || options === void 0 ? void 0 : options.filter(function (option) {
150
167
  return changed.includes(option[fieldNames.value]);
151
168
  });
152
169
 
153
- _onChange(_values);
170
+ _onChange(values);
154
171
 
155
- setSelectedRows(_values);
172
+ setSelectedRows(values);
156
173
  }
157
174
  },
158
175
  options: options,
159
- value: multiple ? values : values === null || values === void 0 ? void 0 : values[0],
176
+ value: getValue(),
160
177
  open: false
161
178
  })), /*#__PURE__*/React.createElement(RecordPickerContext.Provider, {
162
179
  value: {
@@ -181,6 +198,9 @@ export var InputRecordPicker = function InputRecordPicker(props) {
181
198
  }
182
199
  }, /*#__PURE__*/React.createElement(RecursionField, {
183
200
  schema: fieldSchema,
184
- onlyRenderProperties: true
201
+ onlyRenderProperties: true,
202
+ filterProperties: function filterProperties(s) {
203
+ return s['x-component'] === 'RecordPicker.Selector';
204
+ }
185
205
  })))))));
186
206
  };