@tachybase/client 0.23.22 → 0.23.40

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 (203) hide show
  1. package/es/application/schema-initializer/components/SchemaInitializerButton.mjs +1 -1
  2. package/es/application/schema-initializer/components/SchemaInitializerChildren.mjs +1 -1
  3. package/es/built-in/admin-layout/AdminLayout.mjs +15 -1
  4. package/es/built-in/admin-layout/InternalAdminLayout.mjs +4 -2
  5. package/es/built-in/admin-layout/MenuEditor.mjs +2 -2
  6. package/es/built-in/admin-layout/style.d.ts +1 -1
  7. package/es/built-in/admin-layout/style.mjs +4 -4
  8. package/es/built-in/attachment-preview/previewers/file-pdf.mjs +4 -2
  9. package/es/built-in/context-menu/ContextMenu.provider.d.ts +1 -0
  10. package/es/built-in/context-menu/ContextMenu.provider.mjs +29 -1
  11. package/es/built-in/context-menu/index.mjs +1 -0
  12. package/es/built-in/index.mjs +44 -10
  13. package/es/built-in/page-style/TabHeader.d.ts +1 -1
  14. package/es/built-in/page-style/TabHeader.mjs +26 -33
  15. package/es/built-in/page-style/TabHeader.style.d.ts +4 -0
  16. package/es/built-in/page-style/TabHeader.style.mjs +35 -0
  17. package/es/built-in/pinned-list/PinnedPluginListProvider.d.ts +3 -1
  18. package/es/built-in/pinned-list/PinnedPluginListProvider.mjs +5 -4
  19. package/es/built-in/scroll-assistant/useJoystick.mjs +3 -1
  20. package/es/built-in/setting-layout/SettingLayout.mjs +10 -1
  21. package/es/built-in/{assistant/calculator → setting-layout}/style.d.ts +1 -1
  22. package/es/built-in/setting-layout/style.mjs +25 -0
  23. package/es/collection-manager/action-hooks.d.ts +1 -4
  24. package/es/collection-manager/action-hooks.mjs +39 -11
  25. package/es/icon/preloaded.mjs +4 -4
  26. package/es/index.d.ts +0 -1
  27. package/es/index.mjs +0 -1
  28. package/es/modules/actions/associate/AssociateActionInitializer.d.ts +1 -0
  29. package/es/modules/actions/associate/AssociateActionInitializer.mjs +71 -0
  30. package/es/modules/actions/associate/AssociateActionProvider.d.ts +7 -0
  31. package/es/modules/actions/associate/AssociateActionProvider.mjs +82 -0
  32. package/es/modules/actions/associate/AssociateActionSettings.d.ts +2 -0
  33. package/es/modules/actions/associate/AssociateActionSettings.mjs +57 -0
  34. package/es/modules/blocks/data-blocks/details-multi/detailsWithPaginationSettings.mjs +2 -1
  35. package/es/modules/blocks/data-blocks/form/RecordFormBlockInitializer.mjs +21 -14
  36. package/es/modules/blocks/data-blocks/form/createEditFormBlockUISchema.d.ts +1 -2
  37. package/es/modules/blocks/data-blocks/grid-card/gridCardBlockSettings.mjs +2 -1
  38. package/es/modules/blocks/data-blocks/list/listBlockSettings.mjs +2 -1
  39. package/es/modules/blocks/data-blocks/table/TableActionInitializers.mjs +15 -0
  40. package/es/modules/blocks/data-blocks/table/tableBlockSettings.mjs +2 -1
  41. package/es/modules/blocks/data-blocks/table/tableColumnSettings.mjs +2 -2
  42. package/es/modules/blocks/data-blocks/table-selector/tableSelectorBlockSettings.mjs +2 -1
  43. package/es/modules/fields/component/Cascader/cascaderComponentFieldSettings.mjs +2 -1
  44. package/es/modules/fields/component/Radio/radioComponentFieldSettings.mjs +4 -0
  45. package/es/modules/fields/component/Select/selectComponentFieldSettings.mjs +16 -2
  46. package/es/modules/fields/component/SubTable/subTablePopoverComponentFieldSettings.mjs +2 -1
  47. package/es/modules/menu/GroupItem.mjs +5 -1
  48. package/es/modules/menu/LinkMenuItem.mjs +7 -3
  49. package/es/modules/menu/PageMenuItem.mjs +5 -1
  50. package/es/modules/menu/UploadMenuItem.d.ts +1 -0
  51. package/es/modules/menu/UploadMenuItem.mjs +81 -0
  52. package/es/modules/menu/menuItemInitializer.d.ts +0 -4
  53. package/es/modules/menu/menuItemInitializer.mjs +3 -23
  54. package/es/schema-component/antd/action/Action.Designer.mjs +4 -1
  55. package/es/schema-component/antd/association-select/AssociationSelect.mjs +4 -2
  56. package/es/schema-component/antd/checkbox/Checkbox.mjs +11 -6
  57. package/es/schema-component/antd/date-picker/DatePicker.mjs +4 -0
  58. package/es/schema-component/antd/form-item/FormItem.Settings.d.ts +2 -0
  59. package/es/schema-component/antd/form-item/FormItem.Settings.mjs +14 -1
  60. package/es/schema-component/antd/form-v2/Form.Settings.mjs +2 -1
  61. package/es/schema-component/antd/grid-card/GridCard.Designer.mjs +2 -1
  62. package/es/schema-component/antd/list/List.Designer.mjs +2 -1
  63. package/es/schema-component/antd/menu/AdminMenu.d.ts +1 -0
  64. package/es/schema-component/antd/menu/AdminMenu.mjs +75 -0
  65. package/es/schema-component/antd/menu/AdminMenu.style.d.ts +4 -0
  66. package/es/schema-component/antd/menu/AdminMenu.style.mjs +36 -0
  67. package/es/schema-component/antd/menu/Menu.Designer.d.ts +2 -1
  68. package/es/schema-component/antd/menu/Menu.Designer.mjs +62 -42
  69. package/es/schema-component/antd/menu/Menu.mjs +124 -163
  70. package/es/schema-component/antd/menu/Menu.styles.d.ts +1 -2
  71. package/es/schema-component/antd/menu/Menu.styles.mjs +8 -20
  72. package/es/schema-component/antd/menu/MenuAdd.d.ts +1 -0
  73. package/es/schema-component/antd/menu/MenuAdd.mjs +18 -0
  74. package/es/schema-component/antd/menu/MenuSearchAdd.d.ts +7 -0
  75. package/es/schema-component/antd/menu/MenuSearchAdd.mjs +41 -0
  76. package/es/schema-component/antd/menu/MenuSearchAdd.style.d.ts +3 -0
  77. package/es/schema-component/antd/menu/MenuSearchAdd.style.mjs +25 -0
  78. package/es/schema-component/antd/menu/tools.d.ts +9 -0
  79. package/es/schema-component/antd/menu/tools.mjs +36 -0
  80. package/es/schema-component/antd/scroll-area/ScrollArea.mjs +0 -17
  81. package/es/schema-component/antd/select/Select.d.ts +3 -13
  82. package/es/schema-component/antd/select/Select.mjs +33 -2
  83. package/es/schema-component/antd/table/Table.Void.Designer.mjs +2 -1
  84. package/es/schema-component/antd/table-v2/TableBlockDesigner.mjs +2 -1
  85. package/es/schema-component/antd/table-v2/TableSelectorDesigner.mjs +2 -1
  86. package/es/schema-component/common/dnd-context/index.d.ts +1 -2
  87. package/es/schema-component/common/sortable-item/DragHandleMenu.d.ts +1 -0
  88. package/es/schema-component/common/sortable-item/DragHandleMenu.mjs +78 -0
  89. package/es/schema-component/common/sortable-item/DragHandleMenu.style.d.ts +3 -0
  90. package/es/schema-component/common/sortable-item/DragHandleMenu.style.mjs +25 -0
  91. package/es/schema-component/common/sortable-item/SortableItem.d.ts +1 -0
  92. package/es/schema-initializer/SchemaInitializerPlugin.mjs +5 -2
  93. package/es/schema-initializer/utils.mjs +9 -7
  94. package/es/schema-settings/GeneralSchemaDesigner.d.ts +2 -1
  95. package/es/schema-settings/GeneralSchemaDesigner.mjs +9 -1
  96. package/es/schema-settings/SchemaSettings.d.ts +3 -1
  97. package/es/schema-settings/SchemaSettings.mjs +16 -4
  98. package/es/schema-settings/SchemaSettingsPlugin.mjs +2 -0
  99. package/es/schema-settings/SchemaSettingsSortingRule.mjs +2 -1
  100. package/es/schema-settings/styles.mjs +2 -2
  101. package/lib/application/schema-initializer/components/SchemaInitializerButton.js +1 -1
  102. package/lib/application/schema-initializer/components/SchemaInitializerChildren.js +1 -1
  103. package/lib/built-in/admin-layout/AdminLayout.js +15 -1
  104. package/lib/built-in/admin-layout/InternalAdminLayout.js +4 -2
  105. package/lib/built-in/admin-layout/MenuEditor.js +2 -2
  106. package/lib/built-in/admin-layout/style.js +4 -4
  107. package/lib/built-in/attachment-preview/previewers/file-pdf.js +4 -2
  108. package/lib/built-in/context-menu/ContextMenu.provider.js +29 -0
  109. package/lib/built-in/context-menu/index.js +1 -0
  110. package/lib/built-in/index.js +142 -114
  111. package/lib/built-in/page-style/TabHeader.js +26 -33
  112. package/lib/built-in/page-style/TabHeader.style.js +69 -0
  113. package/lib/built-in/pinned-list/PinnedPluginListProvider.js +5 -4
  114. package/lib/built-in/scroll-assistant/useJoystick.js +17 -1
  115. package/lib/built-in/setting-layout/SettingLayout.js +10 -1
  116. package/lib/built-in/{assistant/context.js → setting-layout/style.js} +24 -5
  117. package/lib/collection-manager/action-hooks.js +39 -11
  118. package/lib/icon/preloaded.js +4 -4
  119. package/lib/index.js +71 -86
  120. package/lib/locale/en_US.js +8 -0
  121. package/lib/locale/zh-CN.js +8 -0
  122. package/lib/modules/actions/associate/AssociateActionInitializer.js +105 -0
  123. package/lib/modules/actions/associate/AssociateActionProvider.js +116 -0
  124. package/lib/modules/actions/associate/AssociateActionSettings.js +91 -0
  125. package/lib/modules/blocks/data-blocks/details-multi/detailsWithPaginationSettings.js +2 -1
  126. package/lib/modules/blocks/data-blocks/form/RecordFormBlockInitializer.js +21 -14
  127. package/lib/modules/blocks/data-blocks/grid-card/gridCardBlockSettings.js +2 -1
  128. package/lib/modules/blocks/data-blocks/list/listBlockSettings.js +2 -1
  129. package/lib/modules/blocks/data-blocks/table/TableActionInitializers.js +15 -0
  130. package/lib/modules/blocks/data-blocks/table/tableBlockSettings.js +2 -1
  131. package/lib/modules/blocks/data-blocks/table/tableColumnSettings.js +2 -2
  132. package/lib/modules/blocks/data-blocks/table-selector/tableSelectorBlockSettings.js +2 -1
  133. package/lib/modules/fields/component/Cascader/cascaderComponentFieldSettings.js +2 -1
  134. package/lib/modules/fields/component/Radio/radioComponentFieldSettings.js +4 -0
  135. package/lib/modules/fields/component/Select/selectComponentFieldSettings.js +16 -2
  136. package/lib/modules/fields/component/SubTable/subTablePopoverComponentFieldSettings.js +2 -1
  137. package/lib/modules/menu/GroupItem.js +5 -1
  138. package/lib/modules/menu/LinkMenuItem.js +7 -3
  139. package/lib/modules/menu/PageMenuItem.js +5 -1
  140. package/lib/modules/menu/UploadMenuItem.js +115 -0
  141. package/lib/modules/menu/menuItemInitializer.js +2 -23
  142. package/lib/schema-component/antd/action/Action.Designer.js +4 -1
  143. package/lib/schema-component/antd/association-select/AssociationSelect.js +4 -2
  144. package/lib/schema-component/antd/checkbox/Checkbox.js +11 -6
  145. package/lib/schema-component/antd/date-picker/DatePicker.js +4 -0
  146. package/lib/schema-component/antd/form-item/FormItem.Settings.js +16 -1
  147. package/lib/schema-component/antd/form-v2/Form.Settings.js +2 -1
  148. package/lib/schema-component/antd/grid-card/GridCard.Designer.js +2 -1
  149. package/lib/schema-component/antd/list/List.Designer.js +2 -1
  150. package/lib/schema-component/antd/menu/AdminMenu.js +109 -0
  151. package/lib/schema-component/antd/menu/AdminMenu.style.js +70 -0
  152. package/lib/schema-component/antd/menu/Menu.Designer.js +62 -41
  153. package/lib/schema-component/antd/menu/Menu.js +124 -163
  154. package/lib/schema-component/antd/menu/Menu.styles.js +8 -20
  155. package/lib/{built-in/assistant/calculator/CalculatorDisplay.js → schema-component/antd/menu/MenuAdd.js} +14 -17
  156. package/lib/schema-component/antd/menu/MenuSearchAdd.js +89 -0
  157. package/lib/schema-component/antd/menu/MenuSearchAdd.style.js +59 -0
  158. package/lib/schema-component/antd/menu/tools.js +72 -0
  159. package/lib/schema-component/antd/scroll-area/ScrollArea.js +0 -17
  160. package/lib/schema-component/antd/select/Select.js +33 -2
  161. package/lib/schema-component/antd/table/Table.Void.Designer.js +2 -1
  162. package/lib/schema-component/antd/table-v2/TableBlockDesigner.js +2 -1
  163. package/lib/schema-component/antd/table-v2/TableSelectorDesigner.js +2 -1
  164. package/lib/schema-component/common/sortable-item/DragHandleMenu.js +112 -0
  165. package/lib/schema-component/common/sortable-item/DragHandleMenu.style.js +59 -0
  166. package/lib/schema-initializer/SchemaInitializerPlugin.js +5 -2
  167. package/lib/schema-initializer/utils.js +9 -7
  168. package/lib/schema-settings/GeneralSchemaDesigner.js +9 -1
  169. package/lib/schema-settings/SchemaSettings.js +16 -4
  170. package/lib/schema-settings/SchemaSettingsPlugin.js +2 -0
  171. package/lib/schema-settings/SchemaSettingsSortingRule.js +2 -1
  172. package/lib/schema-settings/styles.js +2 -2
  173. package/package.json +8 -7
  174. package/es/built-in/assistant/Assistant.provider.d.ts +0 -9
  175. package/es/built-in/assistant/Assistant.provider.mjs +0 -125
  176. package/es/built-in/assistant/calculator/AutoScalingText.d.ts +0 -3
  177. package/es/built-in/assistant/calculator/AutoScalingText.mjs +0 -33
  178. package/es/built-in/assistant/calculator/Calculator.d.ts +0 -2
  179. package/es/built-in/assistant/calculator/Calculator.mjs +0 -235
  180. package/es/built-in/assistant/calculator/CalculatorDisplay.d.ts +0 -4
  181. package/es/built-in/assistant/calculator/CalculatorDisplay.mjs +0 -21
  182. package/es/built-in/assistant/calculator/CalculatorKey.d.ts +0 -5
  183. package/es/built-in/assistant/calculator/CalculatorKey.mjs +0 -11
  184. package/es/built-in/assistant/calculator/CalculatorProvider.d.ts +0 -10
  185. package/es/built-in/assistant/calculator/CalculatorProvider.mjs +0 -29
  186. package/es/built-in/assistant/calculator/Draggable.d.ts +0 -8
  187. package/es/built-in/assistant/calculator/Draggable.mjs +0 -54
  188. package/es/built-in/assistant/calculator/style.mjs +0 -25
  189. package/es/built-in/assistant/context.d.ts +0 -3
  190. package/es/built-in/assistant/context.mjs +0 -6
  191. package/es/built-in/assistant/index.d.ts +0 -7
  192. package/es/built-in/assistant/index.mjs +0 -16
  193. package/es/built-in/assistant/search-and-jump/index.d.ts +0 -16
  194. package/es/built-in/assistant/search-and-jump/index.mjs +0 -59
  195. package/lib/built-in/assistant/Assistant.provider.js +0 -161
  196. package/lib/built-in/assistant/calculator/AutoScalingText.js +0 -67
  197. package/lib/built-in/assistant/calculator/Calculator.js +0 -283
  198. package/lib/built-in/assistant/calculator/CalculatorKey.js +0 -45
  199. package/lib/built-in/assistant/calculator/CalculatorProvider.js +0 -65
  200. package/lib/built-in/assistant/calculator/Draggable.js +0 -102
  201. package/lib/built-in/assistant/calculator/style.js +0 -59
  202. package/lib/built-in/assistant/index.js +0 -107
  203. package/lib/built-in/assistant/search-and-jump/index.js +0 -96
@@ -1,5 +1,4 @@
1
1
  import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__ from "react/jsx-runtime";
2
- import "react";
3
2
  import * as __WEBPACK_EXTERNAL_MODULE__tachybase_components__ from "@tachybase/components";
4
3
  import * as __WEBPACK_EXTERNAL_MODULE__tachybase_schema__ from "@tachybase/schema";
5
4
  import * as __WEBPACK_EXTERNAL_MODULE_antd__ from "antd";
@@ -32,14 +31,10 @@ const findMenuSchema = (fieldSchema)=>{
32
31
  parent = parent.parent;
33
32
  }
34
33
  };
35
- const InsertMenuItems = (props)=>{
36
- const { eventKey, title, insertPosition } = props;
34
+ const InsertMenuItemsGroup = (props)=>{
37
35
  const { t } = (0, __WEBPACK_EXTERNAL_MODULE_react_i18next__.useTranslation)();
38
- const { dn } = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useDesignable)();
39
- const fieldSchema = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.useFieldSchema)();
40
- const isSubMenu = 'Menu.SubMenu' === fieldSchema['x-component'];
36
+ const designable = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useDesignable)();
41
37
  const api = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useAPIClient)();
42
- if (!isSubMenu && 'beforeEnd' === insertPosition) return null;
43
38
  const serverHooks = [
44
39
  {
45
40
  type: 'onSelfCreate',
@@ -50,23 +45,26 @@ const InsertMenuItems = (props)=>{
50
45
  method: 'extractTextToLocale'
51
46
  }
52
47
  ];
53
- return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsSubMenu, {
54
- eventKey: eventKey,
55
- title: title,
48
+ const insertPosition = 'beforeEnd';
49
+ const dn = props.dn || designable.dn;
50
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsItemGroup, {
56
51
  children: [
57
52
  /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsModalItem, {
58
53
  eventKey: "".concat(insertPosition, "group"),
59
- title: t('Submenu'),
54
+ icon: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
55
+ type: 'FolderAddOutlined'
56
+ }),
57
+ title: t('Create group'),
60
58
  schema: {
61
59
  type: 'object',
62
- title: t('Add group'),
60
+ title: t('Create group'),
63
61
  properties: {
64
62
  title: {
65
63
  'x-decorator': 'FormItem',
66
64
  'x-component': 'Input',
65
+ 'x-component-props': {},
67
66
  title: t('Menu item title'),
68
- required: true,
69
- 'x-component-props': {}
67
+ required: true
70
68
  },
71
69
  icon: {
72
70
  title: t('Icon'),
@@ -91,10 +89,13 @@ const InsertMenuItems = (props)=>{
91
89
  }),
92
90
  /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsModalItem, {
93
91
  eventKey: "".concat(insertPosition, "page"),
94
- title: t('Page'),
92
+ icon: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
93
+ type: 'FileOutlined'
94
+ }),
95
+ title: t('Create page'),
95
96
  schema: {
96
97
  type: 'object',
97
- title: t('Add page'),
98
+ title: t('Create page'),
98
99
  properties: {
99
100
  title: {
100
101
  'x-decorator': 'FormItem',
@@ -141,10 +142,13 @@ const InsertMenuItems = (props)=>{
141
142
  }),
142
143
  /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsModalItem, {
143
144
  eventKey: "".concat(insertPosition, "link"),
144
- title: t('Link'),
145
+ icon: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
146
+ type: 'GlobalOutlined'
147
+ }),
148
+ title: t('Create link'),
145
149
  schema: {
146
150
  type: 'object',
147
- title: t('Add link'),
151
+ title: t('Create link'),
148
152
  properties: {
149
153
  title: {
150
154
  title: t('Menu item title'),
@@ -182,10 +186,13 @@ const InsertMenuItems = (props)=>{
182
186
  /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsDivider, {}),
183
187
  /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsModalItem, {
184
188
  eventKey: "".concat(insertPosition, "restore"),
185
- title: t('Load'),
189
+ icon: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
190
+ type: 'UploadOutlined'
191
+ }),
192
+ title: t('Load menu config'),
186
193
  schema: {
187
194
  type: 'object',
188
- title: t('Load'),
195
+ title: t('Load menu config'),
189
196
  properties: {
190
197
  title: {
191
198
  'x-decorator': 'FormItem',
@@ -194,6 +201,13 @@ const InsertMenuItems = (props)=>{
194
201
  required: true,
195
202
  'x-component-props': {}
196
203
  },
204
+ bindMenuToRole: {
205
+ type: 'boolean',
206
+ title: '{{ t("Automatically assign permissions to all matching roles") }}',
207
+ 'x-decorator': 'FormItem',
208
+ 'x-component': 'Checkbox',
209
+ default: true
210
+ },
197
211
  file: {
198
212
  type: 'object',
199
213
  title: '{{ t("File") }}',
@@ -208,12 +222,19 @@ const InsertMenuItems = (props)=>{
208
222
  }
209
223
  },
210
224
  onSubmit: async (param)=>{
211
- let { title, file } = param;
225
+ let { title, file, bindMenuToRole } = param;
212
226
  const { data } = await api.request({
213
227
  url: file.url,
214
228
  baseURL: '/'
215
229
  });
216
230
  const s = null != data ? data : {};
231
+ if (bindMenuToRole) {
232
+ const hooks = data['x-server-hooks'];
233
+ if (!hooks.some((v)=>'onSelfCreate' === v.type && 'bindMenuToRole' === v.method)) hooks.push({
234
+ type: 'onSelfCreate',
235
+ method: 'bindMenuToRole'
236
+ });
237
+ }
217
238
  s.title = title;
218
239
  dn.insertAdjacent(insertPosition, s);
219
240
  }
@@ -221,7 +242,8 @@ const InsertMenuItems = (props)=>{
221
242
  ]
222
243
  });
223
244
  };
224
- const MenuDesigner = ()=>{
245
+ const MenuDesigner = (props)=>{
246
+ const { isAdminMenu } = props;
225
247
  const field = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.useField)();
226
248
  const fieldSchema = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.useFieldSchema)();
227
249
  const api = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useAPIClient)();
@@ -274,8 +296,8 @@ const MenuDesigner = ()=>{
274
296
  },
275
297
  icon: {
276
298
  title: t('Menu item icon'),
277
- 'x-component': 'IconPicker',
278
- 'x-decorator': 'FormItem'
299
+ 'x-decorator': 'FormItem',
300
+ 'x-component': 'IconPicker'
279
301
  }
280
302
  }
281
303
  };
@@ -283,6 +305,8 @@ const MenuDesigner = ()=>{
283
305
  title: field.title,
284
306
  icon: field.componentProps.icon
285
307
  };
308
+ const isSubMenu = 'Menu.SubMenu' === fieldSchema['x-component'];
309
+ const hiddenAddMenu = isAdminMenu || !isSubMenu;
286
310
  if ('Menu.URL' === fieldSchema['x-component']) {
287
311
  schema.properties['href'] = {
288
312
  title: t('Link'),
@@ -292,10 +316,15 @@ const MenuDesigner = ()=>{
292
316
  initialValues['href'] = field.componentProps.href;
293
317
  }
294
318
  return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.GeneralSchemaDesigner, {
319
+ draggable: false,
320
+ AddMenuModalComponent: !hiddenAddMenu && /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(InsertMenuItemsGroup, {}),
295
321
  children: [
296
322
  /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsModalItem, {
297
- title: t('Edit'),
323
+ title: t('Modify the name and icon'),
298
324
  eventKey: "edit",
325
+ icon: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
326
+ type: 'FormOutlined'
327
+ }),
299
328
  schema: schema,
300
329
  initialValues: initialValues,
301
330
  onSubmit: (param)=>{
@@ -336,6 +365,9 @@ const MenuDesigner = ()=>{
336
365
  TreeSelect: __WEBPACK_EXTERNAL_MODULE__tachybase_components__.TreeSelect
337
366
  },
338
367
  effects: effects,
368
+ icon: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
369
+ type: 'DragOutlined'
370
+ }),
339
371
  schema: {
340
372
  type: 'object',
341
373
  title: t('Move to'),
@@ -384,24 +416,11 @@ const MenuDesigner = ()=>{
384
416
  }
385
417
  }),
386
418
  /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsDivider, {}),
387
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(InsertMenuItems, {
388
- eventKey: 'insertbeforeBegin',
389
- title: t('Insert before'),
390
- insertPosition: 'beforeBegin'
391
- }),
392
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(InsertMenuItems, {
393
- eventKey: 'insertafterEnd',
394
- title: t('Insert after'),
395
- insertPosition: 'afterEnd'
396
- }),
397
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(InsertMenuItems, {
398
- eventKey: 'insertbeforeEnd',
399
- title: t('Insert inner'),
400
- insertPosition: 'beforeEnd'
401
- }),
402
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsDivider, {}),
403
419
  /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsItem, {
404
420
  title: t('Dump'),
421
+ icon: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
422
+ type: 'DownloadOutlined'
423
+ }),
405
424
  onClick: async ()=>{
406
425
  const deleteUid = (s)=>{
407
426
  delete s['name'];
@@ -425,6 +444,7 @@ const MenuDesigner = ()=>{
425
444
  }
426
445
  }),
427
446
  /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SchemaSettingsRemove, {
447
+ icon: "DeleteOutlined",
428
448
  confirm: {
429
449
  title: t('Delete menu item')
430
450
  }
@@ -432,4 +452,4 @@ const MenuDesigner = ()=>{
432
452
  ]
433
453
  });
434
454
  };
435
- export { MenuDesigner };
455
+ export { InsertMenuItemsGroup, MenuDesigner };
@@ -2,16 +2,20 @@ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__ from "react/jsx-runtim
2
2
  import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
3
3
  import * as __WEBPACK_EXTERNAL_MODULE__tachybase_schema__ from "@tachybase/schema";
4
4
  import * as __WEBPACK_EXTERNAL_MODULE__tachybase_utils_client__ from "@tachybase/utils/client";
5
+ import * as __WEBPACK_EXTERNAL_MODULE__dnd_kit_core__ from "@dnd-kit/core";
5
6
  import * as __WEBPACK_EXTERNAL_MODULE_antd__ from "antd";
6
7
  import * as __WEBPACK_EXTERNAL_MODULE_react_dom__ from "react-dom";
7
- import * as __WEBPACK_EXTERNAL_MODULE_react_i18next__ from "react-i18next";
8
8
  import * as __WEBPACK_EXTERNAL_MODULE__index_mjs__ from "../../index.mjs";
9
9
  import * as __WEBPACK_EXTERNAL_MODULE__index_mjs__ from "../../../index.mjs";
10
10
  import * as __WEBPACK_EXTERNAL_MODULE__hooks_useMenuItem_mjs__ from "../../../hooks/useMenuItem.mjs";
11
+ import * as __WEBPACK_EXTERNAL_MODULE__common_sortable_item_DragHandleMenu_mjs__ from "../../common/sortable-item/DragHandleMenu.mjs";
11
12
  import * as __WEBPACK_EXTERNAL_MODULE__hooks_useProps_mjs__ from "../../hooks/useProps.mjs";
13
+ import * as __WEBPACK_EXTERNAL_MODULE__AdminMenu_mjs__ from "./AdminMenu.mjs";
12
14
  import * as __WEBPACK_EXTERNAL_MODULE__locale_mjs__ from "./locale.mjs";
13
15
  import * as __WEBPACK_EXTERNAL_MODULE__Menu_Designer_mjs__ from "./Menu.Designer.mjs";
14
16
  import * as __WEBPACK_EXTERNAL_MODULE__Menu_styles_mjs__ from "./Menu.styles.mjs";
17
+ import * as __WEBPACK_EXTERNAL_MODULE__MenuSearchAdd_mjs__ from "./MenuSearchAdd.mjs";
18
+ import * as __WEBPACK_EXTERNAL_MODULE__tools_mjs__ from "./tools.mjs";
15
19
  import * as __WEBPACK_EXTERNAL_MODULE__util_mjs__ from "./util.mjs";
16
20
  function _tagged_template_literal(strings, raw) {
17
21
  if (!raw) raw = strings.slice(0);
@@ -30,31 +34,12 @@ function _templateObject() {
30
34
  };
31
35
  return data;
32
36
  }
33
- function _templateObject1() {
34
- const data = _tagged_template_literal([
35
- "\n border: none;\n max-width: 21rem;\n "
36
- ]);
37
- _templateObject1 = function() {
38
- return data;
39
- };
40
- return data;
41
- }
42
- function _templateObject2() {
43
- const data = _tagged_template_literal([
44
- "\n display: block;\n color: inherit;\n &:hover {\n color: inherit;\n }\n "
45
- ]);
46
- _templateObject2 = function() {
47
- return data;
48
- };
49
- return data;
50
- }
51
37
  const HeaderMenu = (param)=>{
52
- let { others, schema, mode, onSelect, setLoading, setDefaultSelectedKeys, defaultSelectedKeys, defaultOpenKeys, selectedKeys, designable, render, children } = param;
38
+ let { others, schema, mode, onSelect, setLoading, setDefaultSelectedKeys, designable, render, children } = param;
53
39
  const { Component, getMenuItems } = (0, __WEBPACK_EXTERNAL_MODULE__hooks_useMenuItem_mjs__.useMenuItem)();
54
40
  const { token } = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useToken)();
41
+ const { styles } = (0, __WEBPACK_EXTERNAL_MODULE__Menu_styles_mjs__.useStyles)();
55
42
  const [items, setItems] = (0, __WEBPACK_EXTERNAL_MODULE_react__.useState)([]);
56
- const { t } = (0, __WEBPACK_EXTERNAL_MODULE_react_i18next__.useTranslation)();
57
- const { styles: itemStyle } = (0, __WEBPACK_EXTERNAL_MODULE__Menu_styles_mjs__.useStyles)();
58
43
  const result = getMenuItems(()=>children);
59
44
  (0, __WEBPACK_EXTERNAL_MODULE_react__.useEffect)(()=>{
60
45
  setItems(getItem());
@@ -118,9 +103,7 @@ const HeaderMenu = (param)=>{
118
103
  });
119
104
  };
120
105
  return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)("div", {
121
- style: {
122
- display: 'flex'
123
- },
106
+ className: styles.headerMenuClass,
124
107
  children: [
125
108
  /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)("div", {
126
109
  style: {
@@ -133,74 +116,13 @@ const HeaderMenu = (param)=>{
133
116
  /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE_antd__.Popover, {
134
117
  placement: "bottomRight",
135
118
  arrow: false,
136
- content: ()=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE_antd__.Card, {
137
- className: (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.css)(_templateObject1()),
138
- children: null == items ? void 0 : items.map((item)=>{
139
- const { icon, field, Designer, schema, styles } = (null == item ? void 0 : item.menu) || {};
140
- return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE_antd__.Card.Grid, {
141
- style: {
142
- display: 'block',
143
- color: 'inherit',
144
- padding: token.marginSM,
145
- boxShadow: 'none',
146
- width: '7rem',
147
- height: '5rem'
148
- },
149
- className: itemStyle.menuItem,
150
- onClick: ()=>{
151
- onClick(item);
152
- },
153
- children: item.menu ? /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__tachybase_schema__.SchemaContext.Provider, {
154
- value: schema,
155
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__tachybase_schema__.FieldContext.Provider, {
156
- value: field,
157
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SortableItem, {
158
- role: "button",
159
- "aria-label": t(field.title),
160
- className: styles.designerCss,
161
- removeParentsIfNoChildren: false,
162
- style: {
163
- position: 'revert'
164
- },
165
- children: [
166
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)("a", {
167
- role: "button",
168
- "aria-label": t(field.title),
169
- title: t(field.title),
170
- className: (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.css)(_templateObject2()),
171
- children: [
172
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)("div", {
173
- style: {
174
- fontSize: '1.2rem',
175
- textAlign: 'center',
176
- marginBottom: '0.3rem'
177
- },
178
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
179
- type: icon || 'QuestionCircleOutlined'
180
- })
181
- }),
182
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)("div", {
183
- style: {
184
- textAlign: 'center',
185
- whiteSpace: 'nowrap',
186
- overflow: 'hidden',
187
- textOverflow: 'ellipsis',
188
- fontSize: token.fontSizeSM
189
- },
190
- children: t(field.title)
191
- })
192
- ]
193
- }),
194
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(Designer, {})
195
- ]
196
- })
197
- })
198
- }) : /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.Fragment, {
199
- children: item.label
200
- })
201
- }, item.key);
202
- })
203
- }),
119
+ overlayInnerStyle: {
120
+ padding: 0
121
+ },
122
+ content: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__AdminMenu_mjs__.AdminMenu, {
123
+ items: items,
124
+ onClick: onClick
125
+ }),
204
126
  children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE_antd__.Button, {
205
127
  className: "iconButton",
206
128
  icon: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
@@ -224,30 +146,35 @@ const SideMenu = (param)=>{
224
146
  const { styles } = (0, __WEBPACK_EXTERNAL_MODULE__Menu_styles_mjs__.useStyles)();
225
147
  const sideMenuSchemaRef = (0, __WEBPACK_EXTERNAL_MODULE_react__.useRef)(sideMenuSchema);
226
148
  sideMenuSchemaRef.current = sideMenuSchema;
149
+ const [searchMenuTitle, setSearchMenuTitle] = (0, __WEBPACK_EXTERNAL_MODULE_react__.useState)('');
227
150
  const items = (0, __WEBPACK_EXTERNAL_MODULE_react__.useMemo)(()=>{
151
+ let newSideMenuSchema = sideMenuSchema;
152
+ if (searchMenuTitle) newSideMenuSchema = (0, __WEBPACK_EXTERNAL_MODULE__tools_mjs__.getNewSideMenuSchema)(sideMenuSchema, searchMenuTitle);
228
153
  const result = getMenuItems(()=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__tachybase_schema__.RecursionField, {
229
- schema: sideMenuSchema,
154
+ schema: newSideMenuSchema,
230
155
  onlyRenderProperties: true
231
156
  }, (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.uid)()));
232
- if (designable) result.push({
233
- key: 'x-designer-button',
234
- disabled: true,
235
- label: render({
236
- 'data-testid': 'schema-initializer-Menu-side',
237
- insert: (s)=>{
238
- const dn = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.createDesignable)({
239
- t,
240
- api,
241
- refresh,
242
- current: sideMenuSchemaRef.current
243
- });
244
- dn.loadAPIClientEvents();
245
- dn.insertAdjacent('beforeEnd', s);
246
- }
247
- }),
248
- order: 1,
249
- notdelete: true
250
- });
157
+ {
158
+ const dn = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.createDesignable)({
159
+ t,
160
+ api,
161
+ refresh,
162
+ current: sideMenuSchemaRef.current
163
+ });
164
+ dn.loadAPIClientEvents();
165
+ const searchMenu = {
166
+ key: 'x-menu-search',
167
+ disabled: true,
168
+ label: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__MenuSearchAdd_mjs__.MenuSearchAdd, {
169
+ designable: designable,
170
+ setSearchMenuTitle: setSearchMenuTitle,
171
+ dn: dn
172
+ }),
173
+ order: -10,
174
+ notdelete: true
175
+ };
176
+ result.push(searchMenu);
177
+ }
251
178
  return result;
252
179
  }, [
253
180
  getMenuItems,
@@ -256,7 +183,8 @@ const SideMenu = (param)=>{
256
183
  render,
257
184
  t,
258
185
  api,
259
- refresh
186
+ refresh,
187
+ searchMenuTitle
260
188
  ]);
261
189
  if (loading) return null;
262
190
  return 'mix' === mode && (null == sideMenuSchema ? void 0 : sideMenuSchema['x-component']) === 'Menu.SubMenu' && (null == sideMenuRef ? void 0 : null === (_sideMenuRef_current = sideMenuRef.current) || void 0 === _sideMenuRef_current ? void 0 : _sideMenuRef_current.firstChild) && /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_dom__.createPortal)(/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(MenuModeContext.Provider, {
@@ -271,7 +199,8 @@ const SideMenu = (param)=>{
271
199
  null == onSelect || onSelect(info);
272
200
  },
273
201
  className: styles.sideMenuClass,
274
- items: items
202
+ items: items,
203
+ expandIcon: null
275
204
  })
276
205
  ]
277
206
  }), sideMenuRef.current.firstChild);
@@ -290,11 +219,11 @@ const MenuItemDesignerContext = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_reac
290
219
  MenuItemDesignerContext.displayName = 'MenuItemDesignerContext';
291
220
  const Menu = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.observer)((props)=>{
292
221
  const { onSelect, mode, selectedUid, defaultSelectedUid, sideMenuRefScopeKey, defaultSelectedKeys: dSelectedKeys, defaultOpenKeys: dOpenKeys, children, ...others } = (0, __WEBPACK_EXTERNAL_MODULE__hooks_useProps_mjs__.useProps)(props);
293
- const { t } = (0, __WEBPACK_EXTERNAL_MODULE_react_i18next__.useTranslation)();
294
- const Designer = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useDesigner)();
295
- const schema = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.useFieldSchema)();
222
+ const { t } = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useTranslation)();
296
223
  const { refresh } = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useDesignable)();
297
224
  const api = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useAPIClient)();
225
+ const Designer = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useDesigner)();
226
+ const schema = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.useFieldSchema)();
298
227
  const { render } = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useSchemaInitializerRender)(schema['x-initializer'], schema['x-initializer-props']);
299
228
  const sideMenuRef = useSideMenuRef();
300
229
  const [selectedKeys, setSelectedKeys] = (0, __WEBPACK_EXTERNAL_MODULE_react__.useState)();
@@ -311,6 +240,11 @@ const Menu = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.observer)((props)
311
240
  ].includes(mode)) return dOpenKeys || defaultSelectedKeys;
312
241
  return dOpenKeys;
313
242
  });
243
+ const sensors = (0, __WEBPACK_EXTERNAL_MODULE__dnd_kit_core__.useSensors)((0, __WEBPACK_EXTERNAL_MODULE__dnd_kit_core__.useSensor)(__WEBPACK_EXTERNAL_MODULE__dnd_kit_core__.PointerSensor, {
244
+ activationConstraint: {
245
+ distance: 5
246
+ }
247
+ }));
314
248
  const sideMenuSchema = (0, __WEBPACK_EXTERNAL_MODULE_react__.useMemo)(()=>{
315
249
  let key;
316
250
  if (selectedUid) {
@@ -353,6 +287,7 @@ const Menu = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.observer)((props)
353
287
  ]);
354
288
  const { designable } = (0, __WEBPACK_EXTERNAL_MODULE__index_mjs__.useDesignable)();
355
289
  return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.DndContext, {
290
+ sensors: sensors,
356
291
  children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(MenuItemDesignerContext.Provider, {
357
292
  value: Designer,
358
293
  children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(MenuModeContext.Provider, {
@@ -365,9 +300,6 @@ const Menu = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.observer)((props)
365
300
  onSelect: onSelect,
366
301
  setLoading: setLoading,
367
302
  setDefaultSelectedKeys: setDefaultSelectedKeys,
368
- defaultSelectedKeys: defaultSelectedKeys,
369
- defaultOpenKeys: defaultOpenKeys,
370
- selectedKeys: selectedKeys,
371
303
  designable: designable,
372
304
  render: render,
373
305
  children: children
@@ -418,27 +350,31 @@ Menu.Item = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.observer)((props)=
418
350
  value: schema,
419
351
  children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__tachybase_schema__.FieldContext.Provider, {
420
352
  value: field,
421
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SortableItem, {
353
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SortableItem, {
422
354
  role: "button",
423
355
  "aria-label": t(field.title),
424
356
  className: styles.designerCss,
425
357
  removeParentsIfNoChildren: false,
426
- children: [
427
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
428
- type: icon
429
- }),
430
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)("span", {
431
- style: {
432
- overflow: 'hidden',
433
- textOverflow: 'ellipsis',
434
- display: 'inline-block',
435
- width: '100%',
436
- verticalAlign: 'middle'
437
- },
438
- children: t(field.title)
439
- }),
440
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(Designer, {})
441
- ]
358
+ overStyle: {
359
+ background: 'transparent'
360
+ },
361
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(__WEBPACK_EXTERNAL_MODULE__common_sortable_item_DragHandleMenu_mjs__.DragHandleMenu, {
362
+ children: [
363
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)("span", {
364
+ className: 'menuitem-title-wrapper',
365
+ children: [
366
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
367
+ type: icon
368
+ }),
369
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)("span", {
370
+ className: 'menuitem-title',
371
+ children: t(field.title)
372
+ })
373
+ ]
374
+ }),
375
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(Designer, {})
376
+ ]
377
+ })
442
378
  })
443
379
  })
444
380
  })
@@ -489,26 +425,36 @@ Menu.URL = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.observer)((props)=>
489
425
  value: schema,
490
426
  children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__tachybase_schema__.FieldContext.Provider, {
491
427
  value: field,
492
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SortableItem, {
428
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SortableItem, {
493
429
  className: styles.designerCss,
494
430
  removeParentsIfNoChildren: false,
495
431
  "aria-label": t(field.title),
496
- children: [
497
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
498
- type: icon
499
- }),
500
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)("span", {
501
- style: {
502
- overflow: 'hidden',
503
- textOverflow: 'ellipsis',
504
- display: 'inline-block',
505
- width: '100%',
506
- verticalAlign: 'middle'
507
- },
508
- children: t(field.title)
509
- }),
510
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(Designer, {})
511
- ]
432
+ overStyle: {
433
+ background: 'transparent'
434
+ },
435
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(__WEBPACK_EXTERNAL_MODULE__common_sortable_item_DragHandleMenu_mjs__.DragHandleMenu, {
436
+ children: [
437
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)("span", {
438
+ className: 'menuitem-title-wrapper',
439
+ children: [
440
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
441
+ type: icon
442
+ }),
443
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)("span", {
444
+ style: {
445
+ overflow: 'hidden',
446
+ textOverflow: 'ellipsis',
447
+ display: 'inline-block',
448
+ width: '100%',
449
+ verticalAlign: 'middle'
450
+ },
451
+ children: t(field.title)
452
+ })
453
+ ]
454
+ }),
455
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(Designer, {})
456
+ ]
457
+ })
512
458
  })
513
459
  })
514
460
  })
@@ -550,17 +496,32 @@ Menu.SubMenu = (0, __WEBPACK_EXTERNAL_MODULE__tachybase_schema__.observer)((prop
550
496
  value: schema,
551
497
  children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__tachybase_schema__.FieldContext.Provider, {
552
498
  value: field,
553
- children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SortableItem, {
499
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.SortableItem, {
554
500
  className: styles.subMenuDesignerCss,
555
501
  removeParentsIfNoChildren: false,
556
502
  "aria-label": t(field.title),
557
- children: [
558
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
559
- type: icon
560
- }),
561
- t(field.title),
562
- /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(Designer, {})
563
- ]
503
+ overStyle: {
504
+ background: 'transparent'
505
+ },
506
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)(__WEBPACK_EXTERNAL_MODULE__common_sortable_item_DragHandleMenu_mjs__.DragHandleMenu, {
507
+ name: schema.name,
508
+ isSubMenu: true,
509
+ children: [
510
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsxs)("span", {
511
+ className: 'submenu-title',
512
+ children: [
513
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(__WEBPACK_EXTERNAL_MODULE__index_mjs__.Icon, {
514
+ type: icon
515
+ }),
516
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)("span", {
517
+ className: 'menuitem-title',
518
+ children: t(field.title)
519
+ })
520
+ ]
521
+ }),
522
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime__.jsx)(Designer, {})
523
+ ]
524
+ })
564
525
  })
565
526
  })
566
527
  }),