@nocobase/client-v2 2.1.0-alpha.40 → 2.1.0-alpha.46

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 (338) hide show
  1. package/es/Application.d.ts +7 -0
  2. package/es/BaseApplication.d.ts +13 -0
  3. package/es/RouterManager.d.ts +1 -0
  4. package/es/authRedirect.d.ts +12 -0
  5. package/es/collection-field-interface/CollectionFieldInterface.d.ts +51 -15
  6. package/es/collection-field-interface/CollectionFieldInterfaceManager.d.ts +82 -3
  7. package/es/collection-manager/field-configure.d.ts +80 -0
  8. package/es/collection-manager/field-validation.d.ts +43 -0
  9. package/es/collection-manager/filter-operators/index.d.ts +46 -0
  10. package/es/collection-manager/filter-operators/operators.d.ts +30 -0
  11. package/es/collection-manager/interfaces/checkbox.d.ts +1 -41
  12. package/es/collection-manager/interfaces/checkboxGroup.d.ts +12 -44
  13. package/es/collection-manager/interfaces/collection.d.ts +12 -51
  14. package/es/collection-manager/interfaces/color.d.ts +1 -16
  15. package/es/collection-manager/interfaces/createdAt.d.ts +1 -44
  16. package/es/collection-manager/interfaces/createdBy.d.ts +0 -4
  17. package/es/collection-manager/interfaces/dateOnly.d.ts +7 -44
  18. package/es/collection-manager/interfaces/datetime.d.ts +1 -44
  19. package/es/collection-manager/interfaces/datetimeNoTz.d.ts +1 -44
  20. package/es/collection-manager/interfaces/email.d.ts +1 -29
  21. package/es/collection-manager/interfaces/id.d.ts +1 -16
  22. package/es/collection-manager/interfaces/index.d.ts +2 -3
  23. package/es/collection-manager/interfaces/input.d.ts +1 -102
  24. package/es/collection-manager/interfaces/integer.d.ts +1 -95
  25. package/es/collection-manager/interfaces/json.d.ts +16 -7
  26. package/es/collection-manager/interfaces/m2m.d.ts +11 -19
  27. package/es/collection-manager/interfaces/m2o.d.ts +11 -19
  28. package/es/collection-manager/interfaces/markdown.d.ts +1 -63
  29. package/es/collection-manager/interfaces/multipleSelect.d.ts +12 -44
  30. package/es/collection-manager/interfaces/nanoid.d.ts +1 -34
  31. package/es/collection-manager/interfaces/number.d.ts +1 -87
  32. package/es/collection-manager/interfaces/o2m.d.ts +12 -24
  33. package/es/collection-manager/interfaces/obo.d.ts +207 -0
  34. package/es/collection-manager/interfaces/oho.d.ts +207 -0
  35. package/es/collection-manager/interfaces/password.d.ts +1 -56
  36. package/es/collection-manager/interfaces/percent.d.ts +1 -84
  37. package/es/collection-manager/interfaces/phone.d.ts +1 -25
  38. package/es/collection-manager/interfaces/properties/index.d.ts +0 -28
  39. package/es/collection-manager/interfaces/radioGroup.d.ts +1 -29
  40. package/es/collection-manager/interfaces/richText.d.ts +1 -63
  41. package/es/collection-manager/interfaces/select.d.ts +12 -44
  42. package/es/collection-manager/interfaces/snowflake-id.d.ts +1 -34
  43. package/es/collection-manager/interfaces/tableoid.d.ts +1 -10
  44. package/es/collection-manager/interfaces/textarea.d.ts +1 -51
  45. package/es/collection-manager/interfaces/time.d.ts +1 -16
  46. package/es/collection-manager/interfaces/types.d.ts +3 -12
  47. package/es/collection-manager/interfaces/unixTimestamp.d.ts +1 -44
  48. package/es/collection-manager/interfaces/updatedAt.d.ts +1 -44
  49. package/es/collection-manager/interfaces/updatedBy.d.ts +0 -4
  50. package/es/collection-manager/interfaces/url.d.ts +1 -20
  51. package/es/collection-manager/interfaces/uuid.d.ts +1 -34
  52. package/es/collection-manager/template-fields.d.ts +53 -0
  53. package/es/components/KeepAlive.d.ts +22 -0
  54. package/es/components/RouterBridge.d.ts +9 -0
  55. package/es/components/form/DialogFormLayout.d.ts +5 -29
  56. package/es/components/form/TypedVariableInput.d.ts +75 -0
  57. package/es/components/form/VariableInput.d.ts +53 -2
  58. package/es/components/form/filter/CollectionFilter.d.ts +49 -0
  59. package/es/components/form/filter/CollectionFilterItem.d.ts +49 -0
  60. package/es/components/form/filter/DateFilterDynamicComponent.d.ts +57 -0
  61. package/es/components/form/filter/FilterValueInput.d.ts +29 -0
  62. package/es/components/form/filter/index.d.ts +11 -0
  63. package/es/components/form/filter/useFilterActionProps.d.ts +96 -0
  64. package/es/components/form/index.d.ts +2 -0
  65. package/es/data-source/ExtendCollectionsProvider.d.ts +50 -0
  66. package/es/data-source/index.d.ts +9 -0
  67. package/es/flow/FlowPage.d.ts +2 -1
  68. package/es/flow/admin-shell/AdminLayoutRouteCoordinator.d.ts +8 -40
  69. package/es/flow/admin-shell/BaseLayoutModel.d.ts +89 -0
  70. package/es/flow/admin-shell/BaseLayoutRouteCoordinator.d.ts +74 -0
  71. package/es/flow/admin-shell/admin-layout/AdminLayoutEntryGuard.d.ts +12 -0
  72. package/es/flow/admin-shell/admin-layout/AdminLayoutMenuModels.d.ts +1 -0
  73. package/es/flow/admin-shell/admin-layout/AdminLayoutModel.d.ts +7 -92
  74. package/es/flow/admin-shell/admin-layout/AppListRender.d.ts +11 -0
  75. package/es/flow/admin-shell/admin-layout/index.d.ts +3 -0
  76. package/es/flow/admin-shell/admin-layout/useApplications.d.ts +3 -2
  77. package/es/flow/admin-shell/useAdminLayoutRoutePage.d.ts +2 -2
  78. package/es/flow/admin-shell/useLayoutRoutePage.d.ts +23 -0
  79. package/es/flow/components/ConditionBuilder.d.ts +1 -0
  80. package/es/flow/components/FieldAssignRulesEditor.d.ts +3 -1
  81. package/es/flow/components/FieldAssignValueInput.d.ts +1 -0
  82. package/es/flow/components/FlowRoute.d.ts +10 -1
  83. package/es/flow/components/fieldAssignOptions.d.ts +10 -0
  84. package/es/flow/components/filter/LinkageFilterItem.d.ts +1 -0
  85. package/es/flow/components/filter/VariableFilterItem.d.ts +1 -0
  86. package/es/flow/components/filter/index.d.ts +2 -0
  87. package/es/flow/components/filter/metaTreeAssociationDepth.d.ts +13 -0
  88. package/es/flow/components/filter/useFilterOptions.d.ts +66 -0
  89. package/es/flow/index.d.ts +4 -0
  90. package/es/flow/models/base/AssociationFieldGroupModel.d.ts +2 -33
  91. package/es/flow/models/base/PageModel/PageModel.d.ts +3 -1
  92. package/es/flow/models/blocks/assign-form/assignFieldValuesFlow.d.ts +92 -0
  93. package/es/flow/models/blocks/assign-form/index.d.ts +1 -0
  94. package/es/flow/models/blocks/form/FormActionGroupModel.d.ts +1 -0
  95. package/es/flow/models/blocks/form/FormActionModel.d.ts +9 -2
  96. package/es/flow/models/blocks/table/TableBlockModel.d.ts +10 -0
  97. package/es/flow/models/blocks/table/TableColumnModel.d.ts +2 -0
  98. package/es/flow/models/fields/AssociationFieldModel/SubTableFieldModel/index.d.ts +1 -1
  99. package/es/flow-compat/passwordUtils.d.ts +1 -1
  100. package/es/index.d.ts +6 -0
  101. package/es/index.mjs +552 -459
  102. package/es/layout-manager/LayoutContentRoute.d.ts +14 -0
  103. package/es/layout-manager/LayoutManager.d.ts +22 -0
  104. package/es/layout-manager/LayoutRoute.d.ts +14 -0
  105. package/es/layout-manager/index.d.ts +13 -0
  106. package/es/layout-manager/types.d.ts +20 -0
  107. package/es/layout-manager/utils.d.ts +14 -0
  108. package/es/nocobase-buildin-plugin/index.d.ts +3 -10
  109. package/es/settings-center/index.d.ts +1 -1
  110. package/es/settings-center/plugin-manager/BulkEnableButton.d.ts +15 -0
  111. package/es/settings-center/plugin-manager/PluginCard.d.ts +15 -0
  112. package/es/settings-center/plugin-manager/PluginDetail.d.ts +16 -0
  113. package/es/settings-center/{PluginManagerPage.d.ts → plugin-manager/index.d.ts} +1 -7
  114. package/es/settings-center/plugin-manager/types.d.ts +34 -0
  115. package/lib/index.js +552 -459
  116. package/package.json +8 -7
  117. package/src/Application.tsx +51 -12
  118. package/src/BaseApplication.tsx +32 -0
  119. package/src/PluginSettingsManager.ts +1 -1
  120. package/src/RouterManager.tsx +17 -1
  121. package/src/__tests__/PluginSettingsManager.test.ts +41 -2
  122. package/src/__tests__/app.test.tsx +17 -1
  123. package/src/__tests__/globalDeps.test.ts +1 -0
  124. package/src/__tests__/nocobase-buildin-plugin-auth.test.tsx +50 -2
  125. package/src/__tests__/plugin-manager.test.tsx +177 -0
  126. package/src/__tests__/settings-center.test.tsx +24 -2
  127. package/src/authRedirect.ts +43 -0
  128. package/src/collection-field-interface/CollectionFieldInterface.ts +71 -77
  129. package/src/collection-field-interface/CollectionFieldInterfaceManager.ts +201 -4
  130. package/src/collection-manager/field-configure.ts +548 -0
  131. package/src/collection-manager/field-validation.ts +195 -0
  132. package/src/collection-manager/filter-operators/index.ts +176 -0
  133. package/src/collection-manager/{interfaces/properties → filter-operators}/operators.ts +24 -13
  134. package/src/collection-manager/interfaces/checkbox.ts +2 -9
  135. package/src/collection-manager/interfaces/checkboxGroup.ts +2 -10
  136. package/src/collection-manager/interfaces/collection.ts +2 -15
  137. package/src/collection-manager/interfaces/color.ts +2 -2
  138. package/src/collection-manager/interfaces/createdAt.ts +2 -2
  139. package/src/collection-manager/interfaces/createdBy.ts +1 -12
  140. package/src/collection-manager/interfaces/dateOnly.ts +8 -2
  141. package/src/collection-manager/interfaces/datetime.ts +2 -2
  142. package/src/collection-manager/interfaces/datetimeNoTz.ts +2 -2
  143. package/src/collection-manager/interfaces/email.ts +2 -9
  144. package/src/collection-manager/interfaces/id.ts +1 -2
  145. package/src/collection-manager/interfaces/index.ts +2 -3
  146. package/src/collection-manager/interfaces/input.ts +2 -133
  147. package/src/collection-manager/interfaces/integer.ts +2 -71
  148. package/src/collection-manager/interfaces/json.tsx +17 -11
  149. package/src/collection-manager/interfaces/m2m.tsx +0 -21
  150. package/src/collection-manager/interfaces/m2o.tsx +0 -22
  151. package/src/collection-manager/interfaces/markdown.ts +2 -51
  152. package/src/collection-manager/interfaces/multipleSelect.ts +2 -14
  153. package/src/collection-manager/interfaces/nanoid.ts +2 -2
  154. package/src/collection-manager/interfaces/number.ts +2 -85
  155. package/src/collection-manager/interfaces/o2m.tsx +1 -22
  156. package/src/collection-manager/interfaces/obo.tsx +145 -0
  157. package/src/collection-manager/interfaces/oho.tsx +145 -0
  158. package/src/collection-manager/interfaces/password.ts +2 -44
  159. package/src/collection-manager/interfaces/percent.ts +2 -74
  160. package/src/collection-manager/interfaces/phone.ts +2 -2
  161. package/src/collection-manager/interfaces/properties/index.ts +0 -133
  162. package/src/collection-manager/interfaces/radioGroup.ts +2 -2
  163. package/src/collection-manager/interfaces/richText.ts +2 -51
  164. package/src/collection-manager/interfaces/select.ts +2 -14
  165. package/src/collection-manager/interfaces/snowflake-id.ts +2 -2
  166. package/src/collection-manager/interfaces/tableoid.ts +1 -2
  167. package/src/collection-manager/interfaces/textarea.ts +2 -51
  168. package/src/collection-manager/interfaces/time.ts +2 -2
  169. package/src/collection-manager/interfaces/types.ts +4 -12
  170. package/src/collection-manager/interfaces/unixTimestamp.tsx +2 -2
  171. package/src/collection-manager/interfaces/updatedAt.ts +2 -2
  172. package/src/collection-manager/interfaces/updatedBy.ts +1 -12
  173. package/src/collection-manager/interfaces/url.ts +2 -4
  174. package/src/collection-manager/interfaces/uuid.ts +2 -2
  175. package/src/collection-manager/template-fields.ts +109 -0
  176. package/src/components/KeepAlive.tsx +131 -0
  177. package/src/components/README.md +138 -6
  178. package/src/components/README.zh-CN.md +138 -7
  179. package/src/components/RouterBridge.tsx +28 -4
  180. package/src/components/__tests__/KeepAlive.test.tsx +63 -0
  181. package/src/components/__tests__/RouterBridge.test.tsx +27 -0
  182. package/src/components/form/DialogFormLayout.tsx +5 -29
  183. package/src/components/form/TypedVariableInput.tsx +441 -0
  184. package/src/components/form/VariableInput.tsx +101 -28
  185. package/src/components/form/__tests__/TypedVariableInput.test.tsx +152 -0
  186. package/src/components/form/__tests__/VariableInput.test.ts +85 -0
  187. package/src/components/form/filter/CollectionFilter.tsx +111 -0
  188. package/src/components/form/filter/CollectionFilterItem.tsx +184 -0
  189. package/src/components/form/filter/DateFilterDynamicComponent.tsx +283 -0
  190. package/src/components/form/filter/FilterValueInput.tsx +198 -0
  191. package/src/components/form/filter/__tests__/CollectionFilterItem.test.tsx +247 -0
  192. package/src/components/form/filter/__tests__/DateFilterDynamicComponent.test.tsx +148 -0
  193. package/src/components/form/filter/__tests__/FilterValueInput.test.tsx +243 -0
  194. package/src/components/form/filter/__tests__/compileFilterGroup.test.ts +146 -0
  195. package/src/components/form/filter/index.ts +13 -0
  196. package/src/components/form/filter/useFilterActionProps.ts +203 -0
  197. package/src/components/form/index.tsx +2 -0
  198. package/src/data-source/ExtendCollectionsProvider.tsx +144 -0
  199. package/src/data-source/__tests__/ExtendCollectionsProvider.test.tsx +264 -0
  200. package/src/data-source/index.ts +10 -0
  201. package/src/flow/FlowPage.tsx +35 -7
  202. package/src/flow/__tests__/FlowPage.test.tsx +79 -0
  203. package/src/flow/__tests__/FlowRoute.test.tsx +537 -3
  204. package/src/flow/actions/__tests__/linkageRules.hiddenSync.restore.test.ts +100 -0
  205. package/src/flow/actions/__tests__/linkageRules.subFormSetFieldProps.test.ts +191 -0
  206. package/src/flow/actions/__tests__/linkageRulesRefresh.test.ts +23 -1
  207. package/src/flow/actions/__tests__/openView.subModelKey.test.tsx +33 -0
  208. package/src/flow/actions/aclCheck.tsx +4 -0
  209. package/src/flow/actions/aclCheckRefresh.tsx +4 -0
  210. package/src/flow/actions/dataScope.tsx +8 -1
  211. package/src/flow/actions/dateTimeFormat.tsx +12 -8
  212. package/src/flow/actions/linkageRules.tsx +127 -2
  213. package/src/flow/actions/linkageRulesRefresh.tsx +2 -3
  214. package/src/flow/actions/openView.tsx +28 -4
  215. package/src/flow/actions/setTargetDataScope.tsx +1 -1
  216. package/src/flow/admin-shell/AdminLayoutRouteCoordinator.ts +11 -329
  217. package/src/flow/admin-shell/BaseLayoutModel.tsx +455 -0
  218. package/src/flow/admin-shell/BaseLayoutRouteCoordinator.ts +502 -0
  219. package/src/flow/admin-shell/__tests__/AdminLayoutRouteCoordinator.test.ts +547 -3
  220. package/src/flow/admin-shell/admin-layout/AdminLayoutComponent.tsx +35 -7
  221. package/src/flow/admin-shell/admin-layout/AdminLayoutEntryGuard.tsx +160 -0
  222. package/src/flow/admin-shell/admin-layout/AdminLayoutMenuModels.tsx +15 -13
  223. package/src/flow/admin-shell/admin-layout/AdminLayoutModel.tsx +28 -201
  224. package/src/flow/admin-shell/admin-layout/AdminLayoutSlotModels.tsx +11 -2
  225. package/src/flow/admin-shell/admin-layout/AppListRender.tsx +139 -0
  226. package/src/flow/admin-shell/admin-layout/__tests__/AdminLayoutMenuModels.test.ts +76 -27
  227. package/src/flow/admin-shell/admin-layout/__tests__/AdminLayoutModel.test.tsx +149 -27
  228. package/src/flow/admin-shell/admin-layout/index.ts +3 -0
  229. package/src/flow/admin-shell/admin-layout/resolveAdminRouteRuntimeTarget.test.ts +11 -0
  230. package/src/flow/admin-shell/admin-layout/resolveAdminRouteRuntimeTarget.ts +2 -4
  231. package/src/flow/admin-shell/admin-layout/useApplications.tsx +34 -1
  232. package/src/flow/admin-shell/useAdminLayoutRoutePage.ts +10 -26
  233. package/src/flow/admin-shell/useLayoutRoutePage.ts +61 -0
  234. package/src/flow/common/Markdown/Edit.tsx +32 -4
  235. package/src/flow/components/AdminLayout.tsx +4 -154
  236. package/src/flow/components/ConditionBuilder.tsx +12 -2
  237. package/src/flow/components/FieldAssignRulesEditor.tsx +37 -46
  238. package/src/flow/components/FieldAssignValueInput.tsx +8 -4
  239. package/src/flow/components/FlowRoute.tsx +105 -15
  240. package/src/flow/components/__tests__/FieldAssignRulesEditor.test.tsx +112 -1
  241. package/src/flow/components/__tests__/fieldAssignOptions.test.ts +71 -1
  242. package/src/flow/components/code-editor/__tests__/runjsCompletions.test.ts +272 -27
  243. package/src/flow/components/code-editor/runjsCompletions.ts +490 -9
  244. package/src/flow/components/fieldAssignOptions.ts +23 -6
  245. package/src/flow/components/filter/LinkageFilterItem.tsx +22 -9
  246. package/src/flow/components/filter/VariableFilterItem.tsx +27 -9
  247. package/src/flow/components/filter/__tests__/fieldsToOptions.test.ts +48 -0
  248. package/src/flow/components/filter/__tests__/metaTreeAssociationDepth.test.ts +60 -0
  249. package/src/flow/components/filter/fieldsToOptions.ts +9 -4
  250. package/src/flow/components/filter/index.ts +3 -0
  251. package/src/flow/components/filter/metaTreeAssociationDepth.ts +69 -0
  252. package/src/flow/components/filter/useFilterOptions.ts +102 -0
  253. package/src/flow/index.ts +4 -0
  254. package/src/flow/models/actions/FilterActionModel.tsx +15 -3
  255. package/src/flow/models/actions/UpdateRecordActionModel.tsx +14 -95
  256. package/src/flow/models/actions/UpdateRecordActionUtils.ts +4 -7
  257. package/src/flow/models/actions/__tests__/AssignFormRefill.test.ts +116 -1
  258. package/src/flow/models/base/ActionModel.tsx +8 -1
  259. package/src/flow/models/base/AssociationFieldGroupModel.tsx +20 -3
  260. package/src/flow/models/base/GridModel.tsx +1 -1
  261. package/src/flow/models/base/PageModel/ChildPageModel.tsx +5 -1
  262. package/src/flow/models/base/PageModel/PageModel.tsx +51 -18
  263. package/src/flow/models/base/PageModel/RootPageModel.tsx +6 -13
  264. package/src/flow/models/base/PageModel/__tests__/ChildPageModel.test.ts +12 -0
  265. package/src/flow/models/base/PageModel/__tests__/PageModel.test.ts +102 -1
  266. package/src/flow/models/base/RouteModel.tsx +1 -1
  267. package/src/flow/models/base/__tests__/AssociationFieldGroupModel.test.ts +86 -0
  268. package/src/flow/models/base/__tests__/GridModel.render.test.tsx +53 -0
  269. package/src/flow/models/blocks/assign-form/AssignFormGridModel.tsx +12 -3
  270. package/src/flow/models/blocks/assign-form/AssignFormItemModel.tsx +77 -6
  271. package/src/flow/models/blocks/assign-form/__tests__/assignFieldValuesFlow.editor.test.tsx +216 -0
  272. package/src/flow/models/blocks/assign-form/assignFieldValuesFlow.tsx +308 -0
  273. package/src/flow/models/blocks/assign-form/index.ts +1 -0
  274. package/src/flow/models/blocks/filter-form/FilterFormItemModel.tsx +1 -1
  275. package/src/flow/models/blocks/filter-form/__tests__/FilterFormItemModel.defineChildren.test.ts +6 -1
  276. package/src/flow/models/blocks/filter-manager/flow-actions/connectFields.tsx +48 -6
  277. package/src/flow/models/blocks/form/FormActionGroupModel.tsx +14 -0
  278. package/src/flow/models/blocks/form/FormActionModel.tsx +30 -3
  279. package/src/flow/models/blocks/form/FormAssociationItemModel.tsx +9 -0
  280. package/src/flow/models/blocks/form/FormItemModel.tsx +17 -1
  281. package/src/flow/models/blocks/form/__tests__/FormActionGroupModel.test.ts +46 -0
  282. package/src/flow/models/blocks/form/__tests__/FormBlockModel.test.tsx +17 -0
  283. package/src/flow/models/blocks/form/__tests__/FormItemModel.defineChildren.test.ts +27 -2
  284. package/src/flow/models/blocks/form/__tests__/submitHandler.test.ts +71 -0
  285. package/src/flow/models/blocks/form/submitHandler.ts +8 -1
  286. package/src/flow/models/blocks/form/submitValues.ts +4 -1
  287. package/src/flow/models/blocks/form/value-runtime/__tests__/runtime.test.ts +29 -0
  288. package/src/flow/models/blocks/form/value-runtime/runtime.ts +5 -1
  289. package/src/flow/models/blocks/table/TableBlockModel.tsx +118 -16
  290. package/src/flow/models/blocks/table/TableColumnModel.tsx +15 -5
  291. package/src/flow/models/blocks/table/TableCustomColumnModel.tsx +2 -2
  292. package/src/flow/models/blocks/table/__tests__/TableBlockModel.rowSelection.test.tsx +114 -0
  293. package/src/flow/models/blocks/table/__tests__/TableColumnModel.test.tsx +18 -0
  294. package/src/flow/models/fields/AssociationFieldModel/SubFormFieldModel.tsx +7 -1
  295. package/src/flow/models/fields/AssociationFieldModel/SubTableFieldModel/SubTableColumnModel.tsx +6 -7
  296. package/src/flow/models/fields/AssociationFieldModel/SubTableFieldModel/SubTableField.tsx +1 -1
  297. package/src/flow/models/fields/AssociationFieldModel/SubTableFieldModel/index.tsx +6 -5
  298. package/src/flow/models/fields/ClickableFieldModel.tsx +9 -1
  299. package/src/flow/models/fields/CollectionSelectorFieldModel.tsx +8 -2
  300. package/src/flow/models/fields/DisplayEnumFieldModel.tsx +8 -2
  301. package/src/flow/models/fields/DisplayTimeFieldModel.tsx +1 -1
  302. package/src/flow/models/fields/TimeFieldModel.tsx +1 -1
  303. package/src/flow/models/fields/__tests__/TimeFieldModel.test.tsx +61 -0
  304. package/src/flow/models/fields/mobile-components/MobileDatePicker.tsx +19 -3
  305. package/src/flow/models/fields/mobile-components/MobileLazySelect.tsx +5 -3
  306. package/src/flow/models/fields/mobile-components/__tests__/MobileDatePicker.test.tsx +94 -0
  307. package/src/flow/models/fields/mobile-components/__tests__/MobileSelect.test.tsx +70 -0
  308. package/src/flow/models/topbar/TopbarActionModel.tsx +1 -1
  309. package/src/flow/utils/__tests__/dateTimeFormat.test.ts +91 -0
  310. package/src/index.ts +6 -0
  311. package/src/layout-manager/LayoutContentRoute.tsx +90 -0
  312. package/src/layout-manager/LayoutManager.tsx +185 -0
  313. package/src/layout-manager/LayoutRoute.tsx +138 -0
  314. package/src/layout-manager/__tests__/LayoutManager.test.tsx +335 -0
  315. package/src/layout-manager/__tests__/LayoutRoute.test.tsx +473 -0
  316. package/src/layout-manager/index.ts +14 -0
  317. package/src/layout-manager/types.ts +22 -0
  318. package/src/layout-manager/utils.ts +37 -0
  319. package/src/nocobase-buildin-plugin/index.tsx +69 -67
  320. package/src/nocobase-buildin-plugin/plugins/LocalePlugin.ts +1 -0
  321. package/src/settings-center/index.ts +1 -1
  322. package/src/settings-center/plugin-manager/BulkEnableButton.tsx +111 -0
  323. package/src/settings-center/plugin-manager/PluginCard.tsx +270 -0
  324. package/src/settings-center/plugin-manager/PluginDetail.tsx +195 -0
  325. package/src/settings-center/plugin-manager/index.tsx +254 -0
  326. package/src/settings-center/plugin-manager/types.ts +35 -0
  327. package/src/settings-center/utils.tsx +8 -1
  328. package/src/theme/__tests__/globalStyles.test.ts +24 -0
  329. package/src/theme/globalStyles.ts +10 -0
  330. package/src/utils/globalDeps.ts +2 -0
  331. package/es/collection-manager/interfaces/linkTo.d.ts +0 -90
  332. package/es/collection-manager/interfaces/o2o.d.ts +0 -621
  333. package/es/collection-manager/interfaces/properties/operators.d.ts +0 -294
  334. package/es/collection-manager/interfaces/subTable.d.ts +0 -172
  335. package/src/collection-manager/interfaces/linkTo.ts +0 -120
  336. package/src/collection-manager/interfaces/o2o.tsx +0 -561
  337. package/src/collection-manager/interfaces/subTable.ts +0 -218
  338. package/src/settings-center/PluginManagerPage.tsx +0 -162
@@ -6,7 +6,6 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
- import { ISchema } from '@formily/react';
10
9
  import { CollectionFieldInterface } from '../../collection-field-interface/CollectionFieldInterface';
11
10
  export declare class PercentFieldInterface extends CollectionFieldInterface {
12
11
  name: string;
@@ -27,12 +26,6 @@ export declare class PercentFieldInterface extends CollectionFieldInterface {
27
26
  };
28
27
  };
29
28
  };
30
- schemaInitialize(schema: ISchema, { field, block, readPretty, action }: {
31
- field: any;
32
- block: any;
33
- readPretty: any;
34
- action: any;
35
- }): void;
36
29
  availableTypes: string[];
37
30
  hasDefaultValue: boolean;
38
31
  validationType: string;
@@ -44,15 +37,6 @@ export declare class PercentFieldInterface extends CollectionFieldInterface {
44
37
  'x-decorator': string;
45
38
  'x-component': string;
46
39
  'x-disabled': string;
47
- 'x-reactions': {
48
- dependencies: string[];
49
- when: string;
50
- fulfill: {
51
- state: {
52
- value: boolean;
53
- };
54
- };
55
- }[];
56
40
  };
57
41
  'uiSchema.x-component-props.step': {
58
42
  type: string;
@@ -84,74 +68,7 @@ export declare class PercentFieldInterface extends CollectionFieldInterface {
84
68
  };
85
69
  };
86
70
  filterable: {
87
- operators: ({
88
- label: string;
89
- value: string;
90
- selected: boolean;
91
- noValue?: undefined;
92
- } | {
93
- label: string;
94
- value: string;
95
- selected?: undefined;
96
- noValue?: undefined;
97
- } | {
98
- label: string;
99
- value: string;
100
- noValue: boolean;
101
- selected?: undefined;
102
- })[];
71
+ operators: string;
103
72
  };
104
73
  titleUsable: boolean;
105
- validateSchema: (fieldSchema: any) => {
106
- maxValue: {
107
- type: string;
108
- title: string;
109
- 'x-decorator': string;
110
- 'x-component': string;
111
- 'x-component-props': {
112
- addonAfter: string;
113
- };
114
- 'x-reactions': string;
115
- };
116
- minValue: {
117
- type: string;
118
- title: string;
119
- 'x-decorator': string;
120
- 'x-component': string;
121
- 'x-component-props': {
122
- addonAfter: string;
123
- };
124
- 'x-reactions': {
125
- dependencies: string[];
126
- fulfill: {
127
- state: {
128
- selfErrors: string;
129
- };
130
- };
131
- };
132
- };
133
- percentFormat: {
134
- type: string;
135
- title: string;
136
- 'x-decorator': string;
137
- 'x-component': string;
138
- 'x-component-props': {
139
- allowClear: boolean;
140
- };
141
- enum: {
142
- label: string;
143
- value: string;
144
- }[];
145
- };
146
- pattern: {
147
- type: string;
148
- title: string;
149
- 'x-decorator': string;
150
- 'x-component': string;
151
- 'x-component-props': {
152
- prefix: string;
153
- suffix: string;
154
- };
155
- };
156
- };
157
74
  }
@@ -35,15 +35,6 @@ export declare class PhoneFieldInterface extends CollectionFieldInterface {
35
35
  'x-decorator': string;
36
36
  'x-component': string;
37
37
  'x-disabled': string;
38
- 'x-reactions': {
39
- dependencies: string[];
40
- when: string;
41
- fulfill: {
42
- state: {
43
- value: boolean;
44
- };
45
- };
46
- }[];
47
38
  };
48
39
  'uiSchema.title': {
49
40
  type: string;
@@ -64,22 +55,7 @@ export declare class PhoneFieldInterface extends CollectionFieldInterface {
64
55
  };
65
56
  };
66
57
  filterable: {
67
- operators: ({
68
- label: string;
69
- value: string;
70
- selected: boolean;
71
- noValue?: undefined;
72
- } | {
73
- label: string;
74
- value: string;
75
- selected?: undefined;
76
- noValue?: undefined;
77
- } | {
78
- label: string;
79
- value: string;
80
- noValue: boolean;
81
- selected?: undefined;
82
- })[];
58
+ operators: string;
83
59
  };
84
60
  titleUsable: boolean;
85
61
  }
@@ -7,7 +7,6 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
  import { ISchema } from '@formily/react';
10
- export * as operators from './operators';
11
10
  export declare const type: ISchema;
12
11
  export declare const unique: {
13
12
  type: string;
@@ -15,15 +14,6 @@ export declare const unique: {
15
14
  'x-decorator': string;
16
15
  'x-component': string;
17
16
  'x-disabled': string;
18
- 'x-reactions': {
19
- dependencies: string[];
20
- when: string;
21
- fulfill: {
22
- state: {
23
- value: boolean;
24
- };
25
- };
26
- }[];
27
17
  };
28
18
  export declare const primaryKey: {
29
19
  type: string;
@@ -31,15 +21,6 @@ export declare const primaryKey: {
31
21
  'x-decorator': string;
32
22
  'x-component': string;
33
23
  'x-disabled': string;
34
- 'x-reactions': {
35
- dependencies: string[];
36
- when: string;
37
- fulfill: {
38
- state: {
39
- value: boolean;
40
- };
41
- };
42
- }[];
43
24
  };
44
25
  export declare const autoIncrement: {
45
26
  type: string;
@@ -48,15 +29,6 @@ export declare const autoIncrement: {
48
29
  'x-decorator': string;
49
30
  'x-component': string;
50
31
  'x-disabled': string;
51
- 'x-reactions': {
52
- dependencies: string[];
53
- when: string;
54
- fulfill: {
55
- state: {
56
- value: boolean;
57
- };
58
- };
59
- }[];
60
32
  };
61
33
  export declare const autoFill: {
62
34
  type: string;
@@ -100,35 +100,7 @@ export declare class RadioGroupFieldInterface extends CollectionFieldInterface {
100
100
  };
101
101
  };
102
102
  filterable: {
103
- operators: ({
104
- label: string;
105
- value: string;
106
- selected: boolean;
107
- schema: {
108
- 'x-component': string;
109
- 'x-component-props': {
110
- mode: any;
111
- };
112
- };
113
- noValue?: undefined;
114
- } | {
115
- label: string;
116
- value: string;
117
- schema: {
118
- 'x-component': string;
119
- 'x-component-props': {
120
- mode: string;
121
- };
122
- };
123
- selected?: undefined;
124
- noValue?: undefined;
125
- } | {
126
- label: string;
127
- value: string;
128
- noValue: boolean;
129
- selected?: undefined;
130
- schema?: undefined;
131
- })[];
103
+ operators: string;
132
104
  };
133
105
  titleUsable: boolean;
134
106
  }
@@ -6,7 +6,6 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
- import type { ISchema } from '@formily/react';
10
9
  import { CollectionFieldInterface } from '../../collection-field-interface/CollectionFieldInterface';
11
10
  export declare class RichTextFieldInterface extends CollectionFieldInterface {
12
11
  name: string;
@@ -43,68 +42,7 @@ export declare class RichTextFieldInterface extends CollectionFieldInterface {
43
42
  description: string;
44
43
  };
45
44
  };
46
- schemaInitialize(schema: ISchema, { block }: {
47
- block: any;
48
- }): void;
49
- validateSchema: (fieldSchema: any) => {
50
- max: {
51
- type: string;
52
- title: string;
53
- minimum: number;
54
- 'x-decorator': string;
55
- 'x-component': string;
56
- 'x-component-props': {
57
- precision: number;
58
- };
59
- 'x-reactions': string;
60
- };
61
- min: {
62
- type: string;
63
- title: string;
64
- minimum: number;
65
- 'x-decorator': string;
66
- 'x-component': string;
67
- 'x-component-props': {
68
- precision: number;
69
- };
70
- 'x-reactions': {
71
- dependencies: string[];
72
- fulfill: {
73
- state: {
74
- selfErrors: string;
75
- };
76
- };
77
- };
78
- };
79
- };
80
45
  filterable: {
81
- operators: ({
82
- label: string;
83
- value: string;
84
- selected: boolean;
85
- schema: {
86
- type: string;
87
- 'x-component': string;
88
- };
89
- noValue?: undefined;
90
- } | {
91
- label: string;
92
- value: string;
93
- schema: {
94
- type: string;
95
- 'x-component': string;
96
- };
97
- selected?: undefined;
98
- noValue?: undefined;
99
- } | {
100
- label: string;
101
- value: string;
102
- noValue: boolean;
103
- schema: {
104
- type: string;
105
- 'x-component': string;
106
- };
107
- selected?: undefined;
108
- })[];
46
+ operators: string;
109
47
  };
110
48
  }
@@ -6,7 +6,6 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
- import { ISchema } from '@formily/react';
10
9
  import { CollectionFieldInterface } from '../../collection-field-interface/CollectionFieldInterface';
11
10
  export declare class SelectFieldInterface extends CollectionFieldInterface {
12
11
  name: string;
@@ -26,19 +25,19 @@ export declare class SelectFieldInterface extends CollectionFieldInterface {
26
25
  availableTypes: string[];
27
26
  hasDefaultValue: boolean;
28
27
  properties: {
29
- 'uiSchema.enum': import("@formily/react").Stringify<{
28
+ 'uiSchema.enum': import("@formily/json-schema").Stringify<{
30
29
  [key: symbol]: any;
31
30
  [key: `x-${string}`]: any;
32
31
  [key: `x-${number}`]: any;
33
32
  version?: string;
34
- name?: import("@formily/react").SchemaKey;
33
+ name?: import("@formily/json-schema").SchemaKey;
35
34
  title?: any;
36
35
  description?: any;
37
36
  default?: any;
38
37
  readOnly?: boolean;
39
38
  writeOnly?: boolean;
40
- type?: import("@formily/react").SchemaTypes;
41
- enum?: import("@formily/react").SchemaEnum<any>;
39
+ type?: import("@formily/json-schema").SchemaTypes;
40
+ enum?: import("@formily/json-schema").SchemaEnum<any>;
42
41
  const?: any;
43
42
  multipleOf?: number;
44
43
  maximum?: number;
@@ -57,12 +56,12 @@ export declare class SelectFieldInterface extends CollectionFieldInterface {
57
56
  format?: string;
58
57
  $ref?: string;
59
58
  $namespace?: string;
60
- definitions?: import("@formily/react").SchemaProperties<any, any, any, any, any, any, any, any>;
61
- properties?: import("@formily/react").SchemaProperties<any, any, any, any, any, any, any, any>;
62
- items?: import("@formily/react").SchemaItems<any, any, any, any, any, any, any, any>;
63
- additionalItems?: import("@formily/react").Stringify<any>;
64
- patternProperties?: import("@formily/react").SchemaProperties<any, any, any, any, any, any, any, any>;
65
- additionalProperties?: import("@formily/react").Stringify<any>;
59
+ definitions?: import("@formily/json-schema").SchemaProperties<any, any, any, any, any, any, any, any>;
60
+ properties?: import("@formily/json-schema").SchemaProperties<any, any, any, any, any, any, any, any>;
61
+ items?: import("@formily/json-schema").SchemaItems<any, any, any, any, any, any, any, any>;
62
+ additionalItems?: import("@formily/json-schema").Stringify<any>;
63
+ patternProperties?: import("@formily/json-schema").SchemaProperties<any, any, any, any, any, any, any, any>;
64
+ additionalProperties?: import("@formily/json-schema").Stringify<any>;
66
65
  "x-value"?: any;
67
66
  "x-index"?: number;
68
67
  "x-pattern"?: any;
@@ -72,7 +71,7 @@ export declare class SelectFieldInterface extends CollectionFieldInterface {
72
71
  "x-decorator-props"?: any;
73
72
  "x-component"?: any;
74
73
  "x-component-props"?: any;
75
- "x-reactions"?: import("@formily/react").SchemaReactions<any>;
74
+ "x-reactions"?: import("@formily/json-schema").SchemaReactions<any>;
76
75
  "x-content"?: any;
77
76
  "x-data"?: any;
78
77
  "x-visible"?: boolean;
@@ -102,38 +101,7 @@ export declare class SelectFieldInterface extends CollectionFieldInterface {
102
101
  };
103
102
  };
104
103
  filterable: {
105
- operators: ({
106
- label: string;
107
- value: string;
108
- selected: boolean;
109
- schema: {
110
- 'x-component': string;
111
- 'x-component-props': {
112
- mode: any;
113
- };
114
- };
115
- noValue?: undefined;
116
- } | {
117
- label: string;
118
- value: string;
119
- schema: {
120
- 'x-component': string;
121
- 'x-component-props': {
122
- mode: string;
123
- };
124
- };
125
- selected?: undefined;
126
- noValue?: undefined;
127
- } | {
128
- label: string;
129
- value: string;
130
- noValue: boolean;
131
- selected?: undefined;
132
- schema?: undefined;
133
- })[];
104
+ operators: string;
134
105
  };
135
106
  titleUsable: boolean;
136
- schemaInitialize(schema: ISchema, { block }: {
137
- block: any;
138
- }): void;
139
107
  }
@@ -48,15 +48,6 @@ export declare class SnowflakeIdFieldInterface extends CollectionFieldInterface
48
48
  'x-decorator': string;
49
49
  'x-component': string;
50
50
  'x-disabled': string;
51
- 'x-reactions': {
52
- dependencies: string[];
53
- when: string;
54
- fulfill: {
55
- state: {
56
- value: boolean;
57
- };
58
- };
59
- }[];
60
51
  };
61
52
  unique: {
62
53
  type: string;
@@ -64,15 +55,6 @@ export declare class SnowflakeIdFieldInterface extends CollectionFieldInterface
64
55
  'x-decorator': string;
65
56
  'x-component': string;
66
57
  'x-disabled': string;
67
- 'x-reactions': {
68
- dependencies: string[];
69
- when: string;
70
- fulfill: {
71
- state: {
72
- value: boolean;
73
- };
74
- };
75
- }[];
76
58
  };
77
59
  };
78
60
  };
@@ -95,22 +77,7 @@ export declare class SnowflakeIdFieldInterface extends CollectionFieldInterface
95
77
  };
96
78
  };
97
79
  filterable: {
98
- operators: ({
99
- label: string;
100
- value: string;
101
- selected: boolean;
102
- noValue?: undefined;
103
- } | {
104
- label: string;
105
- value: string;
106
- selected?: undefined;
107
- noValue?: undefined;
108
- } | {
109
- label: string;
110
- value: string;
111
- noValue: boolean;
112
- selected?: undefined;
113
- })[];
80
+ operators: string;
114
81
  };
115
82
  description: string;
116
83
  titleUsable: boolean;
@@ -45,15 +45,6 @@ export declare class TableoidFieldInterface extends CollectionFieldInterface {
45
45
  };
46
46
  };
47
47
  filterable: {
48
- operators: {
49
- label: string;
50
- value: string;
51
- schema: {
52
- 'x-component': string;
53
- 'x-component-props': {
54
- mode: string;
55
- };
56
- };
57
- }[];
48
+ operators: string;
58
49
  };
59
50
  }
@@ -6,7 +6,6 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
- import { ISchema } from '@formily/react';
10
9
  import { CollectionFieldInterface } from '../../collection-field-interface/CollectionFieldInterface';
11
10
  export declare class TextareaFieldInterface extends CollectionFieldInterface {
12
11
  name: string;
@@ -52,56 +51,7 @@ export declare class TextareaFieldInterface extends CollectionFieldInterface {
52
51
  description: string;
53
52
  };
54
53
  };
55
- schemaInitialize(schema: ISchema, { block }: {
56
- block: any;
57
- }): void;
58
- validateSchema: (fieldSchema: any) => {
59
- max: {
60
- type: string;
61
- title: string;
62
- minimum: number;
63
- 'x-decorator': string;
64
- 'x-component': string;
65
- 'x-component-props': {
66
- precision: number;
67
- };
68
- 'x-reactions': string;
69
- };
70
- min: {
71
- type: string;
72
- title: string;
73
- minimum: number;
74
- 'x-decorator': string;
75
- 'x-component': string;
76
- 'x-component-props': {
77
- precision: number;
78
- };
79
- 'x-reactions': {
80
- dependencies: string[];
81
- fulfill: {
82
- state: {
83
- selfErrors: string;
84
- };
85
- };
86
- };
87
- };
88
- };
89
54
  filterable: {
90
- operators: ({
91
- label: string;
92
- value: string;
93
- selected: boolean;
94
- noValue?: undefined;
95
- } | {
96
- label: string;
97
- value: string;
98
- selected?: undefined;
99
- noValue?: undefined;
100
- } | {
101
- label: string;
102
- value: string;
103
- noValue: boolean;
104
- selected?: undefined;
105
- })[];
55
+ operators: string;
106
56
  };
107
57
  }
@@ -43,22 +43,7 @@ export declare class TimeFieldInterface extends CollectionFieldInterface {
43
43
  };
44
44
  };
45
45
  filterable: {
46
- operators: ({
47
- label: string;
48
- value: string;
49
- selected: boolean;
50
- noValue?: undefined;
51
- } | {
52
- label: string;
53
- value: string;
54
- selected?: undefined;
55
- noValue?: undefined;
56
- } | {
57
- label: string;
58
- value: string;
59
- noValue: boolean;
60
- selected?: undefined;
61
- })[];
46
+ operators: string;
62
47
  };
63
48
  titleUsable: boolean;
64
49
  }
@@ -7,6 +7,7 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
  import { ISchema } from '@formily/react';
10
+ import type { FieldFilterable, FieldFilterOperator } from '../filter-operators';
10
11
  interface IDefault {
11
12
  type: string;
12
13
  uiSchema?: ISchema;
@@ -16,22 +17,12 @@ export interface IField extends ISchema {
16
17
  group?: string;
17
18
  order?: number;
18
19
  default?: IDefault;
19
- operators?: any[];
20
+ operators?: FieldFilterOperator[];
20
21
  /**
21
22
  * - 如果该值为空,则在 Filter 组件中该字段会被过滤掉
22
23
  * - 如果该值为空,则不会在变量列表中看到该字段
23
24
  */
24
- filterable?: {
25
- /**
26
- * 字段所支持的操作符,会在 Filter 组件中显示,比如设置 `数据范围` 的时候可以看见
27
- */
28
- operators?: any[];
29
- /**
30
- * 为当前字段添加子选项,这个子选项会在 Filter 组件中显示,比如设置 `数据范围` 的时候可以看见
31
- */
32
- children?: any[];
33
- [key: string]: any;
34
- };
25
+ filterable?: FieldFilterable;
35
26
  titleUsable?: boolean;
36
27
  [key: string]: any;
37
28
  }
@@ -75,50 +75,7 @@ export declare class UnixTimestampFieldInterface extends CollectionFieldInterfac
75
75
  };
76
76
  };
77
77
  filterable: {
78
- operators: ({
79
- label: string;
80
- value: string;
81
- selected: boolean;
82
- schema: {
83
- 'x-component': string;
84
- 'x-component-props': {
85
- isRange: boolean;
86
- };
87
- };
88
- onlyFilterAction: boolean;
89
- noValue?: undefined;
90
- } | {
91
- label: string;
92
- value: string;
93
- schema: {
94
- 'x-component': string;
95
- 'x-component-props': {
96
- isRange: boolean;
97
- };
98
- };
99
- onlyFilterAction: boolean;
100
- selected?: undefined;
101
- noValue?: undefined;
102
- } | {
103
- label: string;
104
- value: string;
105
- schema: {
106
- 'x-component': string;
107
- 'x-component-props': {
108
- isRange: boolean;
109
- };
110
- };
111
- selected?: undefined;
112
- onlyFilterAction?: undefined;
113
- noValue?: undefined;
114
- } | {
115
- label: string;
116
- value: string;
117
- noValue: boolean;
118
- selected?: undefined;
119
- schema?: undefined;
120
- onlyFilterAction?: undefined;
121
- })[];
78
+ operators: string;
122
79
  };
123
80
  titleUsable: boolean;
124
81
  }