@ibiz-template/vue3-components 0.7.41-alpha.16 → 0.7.41-alpha.18

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 (262) hide show
  1. package/dist/chart-q7pMKjYo.js +1 -0
  2. package/dist/ibiz-markdown-editor-e33m6ees.js +1 -0
  3. package/dist/{index-U4v1OOOD.js → index-AOFxMmyX.js} +1 -1
  4. package/dist/index-dXwgWAM8.js +11 -0
  5. package/dist/{index-lFGFvnYE.js → index-swminiXb.js} +1 -1
  6. package/dist/index.min.css +1 -1
  7. package/dist/index.system.min.js +1 -1
  8. package/dist/map-chart-user-NYROZ-6g.js +1 -0
  9. package/dist/wang-editor-4OlaBV3P.js +1 -0
  10. package/dist/{xlsx-util-FNiwKrqm.js → xlsx-util-Rg-AbK_G.js} +1 -1
  11. package/es/common/control-navigation/provider/calendar-navigation.provider.mjs +3 -1
  12. package/es/common/control-navigation/provider/index.mjs +1 -1
  13. package/es/common/control-navigation/provider/map-navigation.provider.d.ts +8 -2
  14. package/es/common/control-navigation/provider/map-navigation.provider.mjs +20 -1
  15. package/es/common/map-chart-user/map-chart-user.css +1 -1
  16. package/es/common/map-chart-user/map-chart-user.d.ts +11 -1
  17. package/es/common/map-chart-user/map-chart-user.mjs +82 -6
  18. package/es/common/map-chart-user/map-chart-user.util.d.ts +2 -0
  19. package/es/common/map-chart-user/map-chart-user.util.mjs +54 -3
  20. package/es/common/map-chart-user/map-user-manager.d.ts +2 -0
  21. package/es/common/map-chart-user/map-user-manager.mjs +46 -10
  22. package/es/control/calendar/components/calendar-daily/calendar-daily.css +1 -1
  23. package/es/control/calendar/components/calendar-daily/calendar-daily.mjs +30 -43
  24. package/es/control/calendar/components/calendar-daily/use-calendar-daily.d.ts +6 -2
  25. package/es/control/calendar/components/calendar-daily/use-calendar-daily.mjs +37 -4
  26. package/es/control/calendar/components/calendar-user/calendar-user.css +1 -1
  27. package/es/control/calendar/components/calendar-user/calendar-user.mjs +1 -0
  28. package/es/control/calendar/components/calendar-week/calendar-week.css +1 -1
  29. package/es/control/calendar/components/calendar-week/calendar-week.mjs +30 -45
  30. package/es/control/calendar/components/calendar-week/use-calendar-week.d.ts +6 -2
  31. package/es/control/calendar/components/calendar-week/use-calendar-week.mjs +37 -4
  32. package/es/control/calendar/components/custom-calendar/custom-calendar.css +1 -1
  33. package/es/control/calendar/components/custom-calendar/custom-calendar.mjs +25 -8
  34. package/es/control/calendar/components/custom-calendar/use-custom-calendar.d.ts +8 -0
  35. package/es/control/calendar/components/custom-calendar/use-custom-calendar.mjs +20 -1
  36. package/es/control/calendar/components/util/index.mjs +1 -1
  37. package/es/control/calendar/components/util/util.d.ts +30 -2
  38. package/es/control/calendar/components/util/util.mjs +32 -2
  39. package/es/control/chart/chart.mjs +1 -0
  40. package/es/control/data-view/data-view.css +1 -1
  41. package/es/control/data-view/data-view.d.ts +1 -1
  42. package/es/control/data-view/data-view.mjs +95 -29
  43. package/es/control/data-view/index.d.ts +1 -1
  44. package/es/control/drbar/drbar.css +1 -1
  45. package/es/control/drtab/drtab-control.util.mjs +1 -1
  46. package/es/control/drtab/drtab.controller.d.ts +29 -0
  47. package/es/control/drtab/drtab.controller.mjs +53 -0
  48. package/es/control/drtab/drtab.css +1 -1
  49. package/es/control/drtab/drtab.d.ts +2 -0
  50. package/es/control/drtab/drtab.mjs +5 -2
  51. package/es/control/drtab/flow-drtab.css +1 -1
  52. package/es/control/drtab/flow-drtab.d.ts +17 -2
  53. package/es/control/drtab/flow-drtab.mjs +194 -11
  54. package/es/control/drtab/index.d.ts +2 -0
  55. package/es/control/exp-bar/render-util.mjs +1 -12
  56. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.css +1 -1
  57. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.mjs +59 -4
  58. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
  59. package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs +11 -11
  60. package/es/control/form/form-detail/form-tab-panel/form-tab-panel.css +1 -1
  61. package/es/control/form/form-detail/form-tab-panel/form-tab-panel.mjs +2 -1
  62. package/es/control/gantt/gantt.css +1 -1
  63. package/es/control/gantt/gantt.d.ts +4 -2
  64. package/es/control/gantt/gantt.mjs +131 -5
  65. package/es/control/gantt/index.d.ts +4 -2
  66. package/es/control/grid/grid/grid-control.util.mjs +36 -14
  67. package/es/control/grid/grid/grid.css +1 -1
  68. package/es/control/grid/grid/grid.d.ts +1 -1
  69. package/es/control/grid/grid/grid.mjs +8 -3
  70. package/es/control/grid/grid/index.d.ts +1 -1
  71. package/es/control/grid/grid-column/grid-field-column/attachment-column/attachment-column.mjs +11 -2
  72. package/es/control/grid/grid-column/grid-field-column/attachment-column/file-util.d.ts +1 -1
  73. package/es/control/grid/grid-column/grid-field-column/attachment-column/file-util.mjs +39 -24
  74. package/es/control/grid/grid-column/grid-field-column/grid-field-column.css +1 -1
  75. package/es/control/grid/virtualized-table/index.d.ts +1 -1
  76. package/es/control/grid/virtualized-table/virtualized-table.d.ts +1 -1
  77. package/es/control/kanban/index.d.ts +5 -2
  78. package/es/control/kanban/kanban.css +1 -1
  79. package/es/control/kanban/kanban.d.ts +5 -2
  80. package/es/control/kanban/kanban.mjs +51 -15
  81. package/es/control/kanban/swimlane-kanban/swimlane-kanban.css +1 -1
  82. package/es/control/kanban/swimlane-kanban/swimlane-kanban.d.ts +2 -1
  83. package/es/control/kanban/swimlane-kanban/swimlane-kanban.mjs +52 -6
  84. package/es/control/list/index.d.ts +1 -1
  85. package/es/control/list/list.css +1 -1
  86. package/es/control/list/list.d.ts +2 -2
  87. package/es/control/list/list.mjs +84 -12
  88. package/es/control/map/map.mjs +1 -1
  89. package/es/control/medit-view-panel/medit-view-panel.css +1 -1
  90. package/es/control/medit-view-panel/medit-view-panel.mjs +37 -30
  91. package/es/control/tree/index.d.ts +1 -1
  92. package/es/control/tree/tree.d.ts +5 -5
  93. package/es/control/tree/tree.mjs +5 -13
  94. package/es/control/tree-grid/index.d.ts +7 -1
  95. package/es/control/tree-grid/tree-grid.d.ts +7 -1
  96. package/es/control/tree-grid/tree-grid.mjs +62 -55
  97. package/es/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-edit-column/all-edit.mjs +3 -1
  98. package/es/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-ua-column/tree-grid-ex-ua-column.css +1 -1
  99. package/es/control/tree-grid-ex/tree-grid-ex.css +1 -1
  100. package/es/control/tree-grid-ex/tree-grid-ex.mjs +32 -28
  101. package/es/editor/carousel/ibiz-carousel/ibiz-carousel.d.ts +2 -75
  102. package/es/editor/carousel/ibiz-carousel/ibiz-carousel.mjs +24 -12
  103. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.d.ts +1 -1
  104. package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.mjs +47 -8
  105. package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +17 -1
  106. package/es/editor/dropdown-list/ibiz-virtualized-list/ibiz-virtualized-list.mjs +4 -2
  107. package/es/editor/html/wang-editor/wang-editor.mjs +29 -7
  108. package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.mjs +36 -5
  109. package/es/editor/upload/ibiz-file-upload/ibiz-file-upload.d.ts +1 -0
  110. package/es/editor/upload/ibiz-image-cropping/ibiz-image-cropping.d.ts +1 -0
  111. package/es/editor/upload/ibiz-image-upload/ibiz-image-upload.d.ts +1 -0
  112. package/es/editor/upload/upload-editor.controller.d.ts +25 -0
  113. package/es/editor/upload/upload-editor.controller.mjs +43 -1
  114. package/es/editor/upload/use/use-iview-upload.d.ts +0 -1
  115. package/es/editor/upload/use/use-iview-upload.mjs +59 -27
  116. package/es/locale/en/index.d.ts +14 -5
  117. package/es/locale/en/index.mjs +5 -2
  118. package/es/locale/zh-CN/index.d.ts +14 -5
  119. package/es/locale/zh-CN/index.mjs +5 -2
  120. package/es/node_modules/.pnpm/sortablejs@1.15.6/node_modules/sortablejs/modular/sortable.esm.mjs +3377 -0
  121. package/es/panel-component/app-extend-menu/bottom-side-menu/bottom-side-menu.d.ts +1 -1
  122. package/es/panel-component/app-extend-menu/left-side-menu/left-side-menu.d.ts +1 -1
  123. package/es/panel-component/app-extend-menu/right-side-menu/right-side-menu.d.ts +1 -1
  124. package/es/panel-component/app-extend-menu/top-side-menu/top-side-menu.d.ts +1 -1
  125. package/es/panel-component/nav-breadcrumb/index.d.ts +1 -0
  126. package/es/panel-component/nav-breadcrumb/nav-breadcrumb.controller.d.ts +8 -1
  127. package/es/panel-component/nav-breadcrumb/nav-breadcrumb.controller.mjs +64 -18
  128. package/es/panel-component/nav-breadcrumb/nav-breadcrumb.css +1 -1
  129. package/es/panel-component/nav-breadcrumb/nav-breadcrumb.d.ts +3 -1
  130. package/es/panel-component/nav-breadcrumb/nav-breadcrumb.mjs +14 -3
  131. package/es/panel-component/nav-breadcrumb/nav-breadcrumb.service.d.ts +1 -1
  132. package/es/panel-component/nav-breadcrumb/nav-breadcrumb.service.mjs +5 -6
  133. package/es/panel-component/nav-breadcrumb/nav-breadcrumb.state.d.ts +8 -0
  134. package/es/panel-component/nav-breadcrumb/nav-breadcrumb.state.mjs +6 -0
  135. package/es/panel-component/nav-breadcrumb/nav-breadcrumb.util.d.ts +26 -1
  136. package/es/panel-component/nav-breadcrumb/nav-breadcrumb.util.mjs +50 -6
  137. package/es/panel-component/panel-button/panel-button.mjs +1 -0
  138. package/es/panel-component/user-message/async-action/async-data-export/async-data-export.d.ts +1 -0
  139. package/es/panel-component/user-message/async-action/async-data-export/async-data-export.mjs +3 -1
  140. package/es/util/fullscreen/fullscreen-util.mjs +1 -1
  141. package/es/view-engine/calendar-exp-view.engine.d.ts +6 -7
  142. package/es/view-engine/calendar-exp-view.engine.mjs +6 -24
  143. package/es/view-engine/calendar-view.engine.d.ts +11 -1
  144. package/es/view-engine/calendar-view.engine.mjs +10 -0
  145. package/es/view-engine/chart-exp-view.engine.d.ts +6 -6
  146. package/es/view-engine/chart-exp-view.engine.mjs +6 -15
  147. package/es/view-engine/edit-view.engine.d.ts +11 -0
  148. package/es/view-engine/edit-view.engine.mjs +12 -0
  149. package/es/view-engine/gantt-view.engine.d.ts +3 -3
  150. package/es/view-engine/gantt-view.engine.mjs +3 -46
  151. package/es/view-engine/login-view.engine.d.ts +11 -1
  152. package/es/view-engine/login-view.engine.mjs +16 -5
  153. package/es/view-engine/mpickup-view-engine.d.ts +8 -1
  154. package/es/view-engine/mpickup-view-engine.mjs +14 -8
  155. package/es/view-engine/pickup-view.engine.d.ts +8 -1
  156. package/es/view-engine/pickup-view.engine.mjs +15 -0
  157. package/es/view-engine/tab-exp-view.engine.mjs +1 -1
  158. package/es/view-engine/tab-search-view.engine.mjs +4 -2
  159. package/es/view-engine/tree-view.engine.d.ts +12 -2
  160. package/es/view-engine/tree-view.engine.mjs +39 -11
  161. package/lib/common/control-navigation/provider/calendar-navigation.provider.cjs +3 -1
  162. package/lib/common/control-navigation/provider/index.cjs +1 -1
  163. package/lib/common/control-navigation/provider/map-navigation.provider.cjs +20 -1
  164. package/lib/common/map-chart-user/map-chart-user.cjs +81 -5
  165. package/lib/common/map-chart-user/map-chart-user.css +1 -1
  166. package/lib/common/map-chart-user/map-chart-user.util.cjs +54 -3
  167. package/lib/common/map-chart-user/map-user-manager.cjs +46 -10
  168. package/lib/control/calendar/components/calendar-daily/calendar-daily.cjs +29 -42
  169. package/lib/control/calendar/components/calendar-daily/calendar-daily.css +1 -1
  170. package/lib/control/calendar/components/calendar-daily/use-calendar-daily.cjs +35 -2
  171. package/lib/control/calendar/components/calendar-user/calendar-user.cjs +1 -0
  172. package/lib/control/calendar/components/calendar-user/calendar-user.css +1 -1
  173. package/lib/control/calendar/components/calendar-week/calendar-week.cjs +29 -44
  174. package/lib/control/calendar/components/calendar-week/calendar-week.css +1 -1
  175. package/lib/control/calendar/components/calendar-week/use-calendar-week.cjs +35 -2
  176. package/lib/control/calendar/components/custom-calendar/custom-calendar.cjs +23 -6
  177. package/lib/control/calendar/components/custom-calendar/custom-calendar.css +1 -1
  178. package/lib/control/calendar/components/custom-calendar/use-custom-calendar.cjs +20 -0
  179. package/lib/control/calendar/components/util/index.cjs +4 -0
  180. package/lib/control/calendar/components/util/util.cjs +34 -0
  181. package/lib/control/chart/chart.cjs +1 -0
  182. package/lib/control/data-view/data-view.cjs +95 -29
  183. package/lib/control/data-view/data-view.css +1 -1
  184. package/lib/control/drbar/drbar.css +1 -1
  185. package/lib/control/drtab/drtab-control.util.cjs +1 -1
  186. package/lib/control/drtab/drtab.cjs +5 -2
  187. package/lib/control/drtab/drtab.controller.cjs +53 -0
  188. package/lib/control/drtab/drtab.css +1 -1
  189. package/lib/control/drtab/flow-drtab.cjs +193 -10
  190. package/lib/control/drtab/flow-drtab.css +1 -1
  191. package/lib/control/exp-bar/render-util.cjs +1 -12
  192. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.cjs +58 -3
  193. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-grid/repeater-grid.css +1 -1
  194. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.cjs +11 -11
  195. package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
  196. package/lib/control/form/form-detail/form-tab-panel/form-tab-panel.cjs +2 -1
  197. package/lib/control/form/form-detail/form-tab-panel/form-tab-panel.css +1 -1
  198. package/lib/control/gantt/gantt.cjs +130 -4
  199. package/lib/control/gantt/gantt.css +1 -1
  200. package/lib/control/grid/grid/grid-control.util.cjs +36 -14
  201. package/lib/control/grid/grid/grid.cjs +8 -3
  202. package/lib/control/grid/grid/grid.css +1 -1
  203. package/lib/control/grid/grid-column/grid-field-column/attachment-column/attachment-column.cjs +11 -2
  204. package/lib/control/grid/grid-column/grid-field-column/attachment-column/file-util.cjs +39 -24
  205. package/lib/control/grid/grid-column/grid-field-column/grid-field-column.css +1 -1
  206. package/lib/control/kanban/kanban.cjs +50 -14
  207. package/lib/control/kanban/kanban.css +1 -1
  208. package/lib/control/kanban/swimlane-kanban/swimlane-kanban.cjs +50 -4
  209. package/lib/control/kanban/swimlane-kanban/swimlane-kanban.css +1 -1
  210. package/lib/control/list/list.cjs +84 -12
  211. package/lib/control/list/list.css +1 -1
  212. package/lib/control/map/map.cjs +1 -1
  213. package/lib/control/medit-view-panel/medit-view-panel.cjs +36 -29
  214. package/lib/control/medit-view-panel/medit-view-panel.css +1 -1
  215. package/lib/control/tree/tree.cjs +5 -13
  216. package/lib/control/tree-grid/tree-grid.cjs +62 -55
  217. package/lib/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-edit-column/all-edit.cjs +3 -1
  218. package/lib/control/tree-grid-ex/tree-grid-ex-column/tree-grid-ex-ua-column/tree-grid-ex-ua-column.css +1 -1
  219. package/lib/control/tree-grid-ex/tree-grid-ex.cjs +32 -28
  220. package/lib/control/tree-grid-ex/tree-grid-ex.css +1 -1
  221. package/lib/editor/carousel/ibiz-carousel/ibiz-carousel.cjs +24 -12
  222. package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.cjs +47 -8
  223. package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +17 -1
  224. package/lib/editor/dropdown-list/ibiz-virtualized-list/ibiz-virtualized-list.cjs +4 -2
  225. package/lib/editor/html/wang-editor/wang-editor.cjs +29 -7
  226. package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.cjs +36 -5
  227. package/lib/editor/upload/upload-editor.controller.cjs +43 -1
  228. package/lib/editor/upload/use/use-iview-upload.cjs +59 -27
  229. package/lib/locale/en/index.cjs +5 -2
  230. package/lib/locale/zh-CN/index.cjs +5 -2
  231. package/lib/node_modules/.pnpm/sortablejs@1.15.6/node_modules/sortablejs/modular/sortable.esm.cjs +3384 -0
  232. package/lib/panel-component/nav-breadcrumb/nav-breadcrumb.cjs +14 -3
  233. package/lib/panel-component/nav-breadcrumb/nav-breadcrumb.controller.cjs +63 -17
  234. package/lib/panel-component/nav-breadcrumb/nav-breadcrumb.css +1 -1
  235. package/lib/panel-component/nav-breadcrumb/nav-breadcrumb.service.cjs +4 -5
  236. package/lib/panel-component/nav-breadcrumb/nav-breadcrumb.state.cjs +6 -0
  237. package/lib/panel-component/nav-breadcrumb/nav-breadcrumb.util.cjs +52 -5
  238. package/lib/panel-component/panel-button/panel-button.cjs +1 -0
  239. package/lib/panel-component/user-message/async-action/async-data-export/async-data-export.cjs +3 -1
  240. package/lib/util/fullscreen/fullscreen-util.cjs +1 -1
  241. package/lib/view-engine/calendar-exp-view.engine.cjs +6 -24
  242. package/lib/view-engine/calendar-view.engine.cjs +10 -0
  243. package/lib/view-engine/chart-exp-view.engine.cjs +6 -15
  244. package/lib/view-engine/edit-view.engine.cjs +12 -0
  245. package/lib/view-engine/gantt-view.engine.cjs +2 -45
  246. package/lib/view-engine/login-view.engine.cjs +16 -5
  247. package/lib/view-engine/mpickup-view-engine.cjs +14 -8
  248. package/lib/view-engine/pickup-view.engine.cjs +15 -0
  249. package/lib/view-engine/tab-exp-view.engine.cjs +1 -1
  250. package/lib/view-engine/tab-search-view.engine.cjs +4 -2
  251. package/lib/view-engine/tree-view.engine.cjs +39 -11
  252. package/package.json +10 -8
  253. package/dist/chart-8QfxarWf.js +0 -1
  254. package/dist/ibiz-markdown-editor-0VHzFa2l.js +0 -1
  255. package/dist/index-m8q8r8br.js +0 -4
  256. package/dist/map-chart-user-xOSZGbF2.js +0 -1
  257. package/dist/wang-editor-_06OYPpu.js +0 -1
  258. package/es/editor/upload/use/use-ibiz-upload.d.ts +0 -95
  259. package/es/editor/upload/use/use-ibiz-upload.mjs +0 -170
  260. package/lib/editor/upload/use/use-ibiz-upload.cjs +0 -175
  261. /package/es/node_modules/.pnpm/{@ibiz-template_core@0.7.41-alpha.14_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.41-alpha.18_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.mjs +0 -0
  262. /package/lib/node_modules/.pnpm/{@ibiz-template_core@0.7.41-alpha.14_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1 → @ibiz-template_core@0.7.41-alpha.18_axios@1.6.8_lodash-es@4.17.21_qs@6.11.2_qx-util@0.4.8_ramda@0.29.1}/node_modules/@ibiz-template/core/out/utils/namespace/namespace.cjs +0 -0
@@ -6,6 +6,8 @@ var vue = require('vue');
6
6
  var ramda = require('ramda');
7
7
  var vue3Util = require('@ibiz-template/vue3-util');
8
8
  var runtime = require('@ibiz-template/runtime');
9
+ var core = require('@ibiz-template/core');
10
+ var lodashEs = require('lodash-es');
9
11
  var mapChartUser_util = require('./map-chart-user.util.cjs');
10
12
  var mapUserManager = require('./map-user-manager.cjs');
11
13
  require('./map-chart-user.css');
@@ -33,6 +35,8 @@ const IBizMapChartUser = /* @__PURE__ */ vue.defineComponent({
33
35
  const ns = vue3Util.useNamespace("map-chart-user");
34
36
  const c = props.controller;
35
37
  let option = mapChartUser_util.defaultOpts;
38
+ const mapRef = vue.ref();
39
+ const isFull = vue.ref(false);
36
40
  if (c.controlParams.defaultopts) {
37
41
  const data = JSON.parse(c.controlParams.defaultopts);
38
42
  option = ramda.mergeDeepLeft(data, option);
@@ -42,9 +46,12 @@ const IBizMapChartUser = /* @__PURE__ */ vue.defineComponent({
42
46
  return ramda.isNil(z) ? x : z;
43
47
  }, option, props.options);
44
48
  });
49
+ let cleanup = core.NOOP;
45
50
  const {
46
51
  chartRef,
47
52
  historyNames,
53
+ processing,
54
+ areaLevelMap,
48
55
  changeMap,
49
56
  getCityInfo,
50
57
  goBack
@@ -58,13 +65,21 @@ const IBizMapChartUser = /* @__PURE__ */ vue.defineComponent({
58
65
  ...mapChartUser_util.getPointStaticOption(options.value),
59
66
  ...mapChartUser_util.getPointOption(pointData, areaData)
60
67
  };
68
+ const {
69
+ top,
70
+ bottom
71
+ } = options.value;
61
72
  const areaOption = {
73
+ top,
74
+ bottom,
62
75
  ...mapChartUser_util.getAreaStaticOption(options.value),
63
76
  ...mapChartUser_util.getAreaOption(mapName, pointData, areaData, cityInfo)
64
77
  };
65
78
  const result = {
66
79
  geo: {
67
- map: mapName
80
+ map: mapName,
81
+ top,
82
+ bottom
68
83
  },
69
84
  tooltip,
70
85
  visualMap,
@@ -82,24 +97,85 @@ const IBizMapChartUser = /* @__PURE__ */ vue.defineComponent({
82
97
  const areaCode = c.state.strAreaCode ? "".concat(name) : Number(name);
83
98
  c.state.areaCode = areaCode;
84
99
  changeMap(name, areaCode, true);
100
+ c.evt.on("onDrillDown", async (args) => {
101
+ if (!processing.value) {
102
+ const {
103
+ data
104
+ } = args;
105
+ const code = data.areaCode;
106
+ const curAreaCode = c.state.strAreaCode ? "".concat(code) : Number(code);
107
+ const areaLevel = areaLevelMap.get(lodashEs.toNumber(curAreaCode)) || "";
108
+ c.state.areaCode = curAreaCode;
109
+ c.state.areaLevel = areaLevel;
110
+ await changeMap(code, code);
111
+ }
112
+ });
113
+ c.evt.on("onBackClick", () => {
114
+ if (!processing.value) {
115
+ goBack();
116
+ }
117
+ });
118
+ cleanup = core.listenJSEvent(window, "resize", () => {
119
+ if (isFull.value) {
120
+ isFull.value = ibiz.fullscreenUtil.isFullScreen;
121
+ }
122
+ });
85
123
  });
124
+ vue.onBeforeUnmount(() => {
125
+ if (cleanup !== core.NOOP) {
126
+ cleanup();
127
+ }
128
+ });
129
+ const onBack = async () => {
130
+ processing.value = true;
131
+ await c.evt.emit("onBackClick", void 0);
132
+ goBack();
133
+ processing.value = false;
134
+ };
135
+ const toggleFullScreen = () => {
136
+ if (mapRef.value) {
137
+ if (isFull.value) {
138
+ ibiz.fullscreenUtil.closeElementFullscreen();
139
+ } else {
140
+ ibiz.fullscreenUtil.openElementFullscreen(mapRef.value);
141
+ }
142
+ isFull.value = !isFull.value;
143
+ }
144
+ };
86
145
  return {
87
146
  ns,
147
+ c,
148
+ mapRef,
88
149
  chartRef,
89
150
  historyNames,
90
- goBack
151
+ isFull,
152
+ onBack,
153
+ toggleFullScreen
91
154
  };
92
155
  },
93
156
  render() {
157
+ const {
158
+ enabledFullScreen
159
+ } = this.c.state;
94
160
  return vue.createVNode("div", {
95
- "class": this.ns.b()
96
- }, [vue.createVNode("div", {
161
+ "class": this.ns.b(),
162
+ "ref": "mapRef"
163
+ }, [enabledFullScreen ? vue.createVNode(vue.resolveComponent("el-button"), {
164
+ "type": "info",
165
+ "class": this.ns.e("fullscreen"),
166
+ "onClick": this.toggleFullScreen,
167
+ "title": this.isFull ? ibiz.i18n.t("app.cancelFullscreen") : ibiz.i18n.t("app.fullscreen")
168
+ }, {
169
+ default: () => [vue.createVNode("ion-icon", {
170
+ "name": this.isFull ? "contract-outline" : "expand-outline"
171
+ }, null)]
172
+ }) : null, vue.createVNode("div", {
97
173
  "class": this.ns.e("chart"),
98
174
  "ref": "chartRef"
99
175
  }, null), this.historyNames.length > 1 && vue.createVNode("div", {
100
176
  "class": this.ns.e("goback"),
101
177
  "onClick": () => {
102
- this.goBack();
178
+ this.onBack();
103
179
  }
104
180
  }, [ibiz.i18n.t("app.return")])]);
105
181
  }
@@ -1 +1 @@
1
- .ibiz-map-chart-user{position:relative;min-width:300px;min-height:300px}.ibiz-map-chart-user__chart{width:100%;height:100%}.ibiz-map-chart-user__goback{position:absolute;top:60px;right:0;width:100px;height:100px;font-size:var(--ibiz-font-size-header-4);color:var(--ibiz-color-link);text-decoration:underline;letter-spacing:6px;cursor:pointer}.ibiz-map-chart-user__popper{padding:var(--ibiz-spacing-base)}
1
+ .ibiz-map-chart-user{position:relative;min-width:300px;min-height:300px}.ibiz-map-chart-user__chart{width:100%;height:100%}.ibiz-map-chart-user__goback{position:absolute;top:60px;right:0;width:100px;height:100px;font-size:var(--ibiz-font-size-header-4);color:var(--ibiz-color-link);text-decoration:underline;letter-spacing:6px;cursor:pointer}.ibiz-map-chart-user__fullscreen{position:absolute;top:var(--ibiz-spacing-tight);right:var(--ibiz-spacing-tight);z-index:9}.ibiz-map-chart-user__popper{padding:var(--ibiz-spacing-tight)}
@@ -38,7 +38,30 @@ const defaultOpts = {
38
38
  /** 地图json数据基础路径 */
39
39
  jsonBaseUrl: "".concat(ibiz.env.assetsUrl, "/json/map"),
40
40
  /** 默认打开的区域编码 */
41
- defaultAreaCode: 1e5
41
+ defaultAreaCode: 1e5,
42
+ // 距离底部距离
43
+ bottom: 20,
44
+ // 距离顶部距离
45
+ top: 20
46
+ };
47
+ const getItemStyle = (item) => {
48
+ const itemStyle = [];
49
+ if (item._color) {
50
+ itemStyle.push("color:".concat(item._color));
51
+ }
52
+ if (item._bgcolor) {
53
+ itemStyle.push("background:".concat(item._bgcolor));
54
+ }
55
+ if (item._borderColor) {
56
+ itemStyle.push("border-color:".concat(item._borderColor));
57
+ }
58
+ if (item._borderWidth) {
59
+ itemStyle.push("border-width:".concat(item._borderWidth, "px"));
60
+ }
61
+ if (item._borderWidth && item._borderColor) {
62
+ itemStyle.push("border-style:solid");
63
+ }
64
+ return itemStyle.join(";");
42
65
  };
43
66
  const findData = (id, type, pointData = [], areaData = []) => {
44
67
  if (type === "area") {
@@ -100,7 +123,21 @@ const getPointOption = (pointData, areaData) => {
100
123
  return;
101
124
  }
102
125
  const find = findData(params.data._id, "point", pointData, areaData);
103
- return '<div style="color:'.concat(find._color, ";background: ").concat(find._bgcolor, '" class="').concat(find._className, " ").concat(ns.e("popper"), '">').concat(find == null ? void 0 : find._tooltip, "</div>");
126
+ if (!find) {
127
+ return;
128
+ }
129
+ const { _deData: data } = find;
130
+ let text = data.srfmajortext;
131
+ if (find._value) {
132
+ text = "".concat(data.srfmajortext, ": ").concat(find._value);
133
+ }
134
+ if (find._tooltip) {
135
+ text = find._tooltip;
136
+ }
137
+ const style = getItemStyle(find);
138
+ return '<div style="'.concat(style, '" class="').concat(find._className, " ").concat(ns.e(
139
+ "popper"
140
+ ), '">').concat(text, "</div>");
104
141
  },
105
142
  padding: 0
106
143
  };
@@ -159,7 +196,21 @@ const getAreaOption = (mapName, pointData, areaData, cityInfo = []) => {
159
196
  return;
160
197
  }
161
198
  const find = findData(params.data._id, "area", pointData, areaData);
162
- return '<div style="color:'.concat(find._color, ";background: ").concat(find._bgcolor, '" class="').concat(find._className, " ").concat(ns.e("popper"), '">').concat(find == null ? void 0 : find._tooltip, "</div>");
199
+ if (!find || !find._tooltip && !find._value) {
200
+ return;
201
+ }
202
+ const { _deData: data } = find;
203
+ let text = data.srfmajortext;
204
+ if (find._value) {
205
+ text = "".concat(data.srfmajortext, ": ").concat(find._value);
206
+ }
207
+ if (find._tooltip) {
208
+ text = find._tooltip;
209
+ }
210
+ const style = getItemStyle(find);
211
+ return '<div style="'.concat(style, '" class="').concat(find._className, " ").concat(ns.e(
212
+ "popper"
213
+ ), '">').concat(text, "</div>");
163
214
  },
164
215
  padding: 0
165
216
  };
@@ -3,6 +3,7 @@
3
3
  var echarts = require('echarts');
4
4
  var vue = require('vue');
5
5
  var core = require('@ibiz-template/core');
6
+ var lodashEs = require('lodash-es');
6
7
  var mapChartUser_util = require('./map-chart-user.util.cjs');
7
8
 
8
9
  "use strict";
@@ -10,6 +11,8 @@ function useMapManager(controller, opts, calcEchartsOpts) {
10
11
  const mapInfos = /* @__PURE__ */ new Map();
11
12
  const currentName = vue.ref("");
12
13
  const historyNames = vue.ref([]);
14
+ const areaLevelMap = /* @__PURE__ */ new Map();
15
+ const processing = vue.ref(false);
13
16
  let chart;
14
17
  const chartRef = vue.ref();
15
18
  let resizeObserver;
@@ -19,8 +22,9 @@ function useMapManager(controller, opts, calcEchartsOpts) {
19
22
  noChild: json.features.length === 1
20
23
  };
21
24
  json.features.forEach((item) => {
22
- const { adcode, name } = item.properties;
25
+ const { adcode, name, level } = item.properties;
23
26
  info.cityNames[adcode] = name;
27
+ areaLevelMap.set(adcode, level);
24
28
  });
25
29
  return info;
26
30
  };
@@ -48,15 +52,18 @@ function useMapManager(controller, opts, calcEchartsOpts) {
48
52
  }
49
53
  };
50
54
  const changeMap = async (name, areaCode, isInit = false) => {
51
- if (!isInit) {
52
- controller.onMapChange(areaCode);
53
- }
54
55
  const strName = "".concat(name);
55
56
  if (!mapInfos.has(strName)) {
56
57
  await registerMap(strName);
57
58
  }
58
- controller.state.mapInfo = getCityInfo();
59
+ if (!isInit) {
60
+ controller.onMapChange(areaCode);
61
+ } else {
62
+ const areaLevel = areaLevelMap.get(lodashEs.toNumber(areaCode)) || "";
63
+ controller.state.areaLevel = areaLevel;
64
+ }
59
65
  currentName.value = strName;
66
+ controller.state.mapInfo = getCityInfo();
60
67
  historyNames.value.push(strName);
61
68
  refresh();
62
69
  };
@@ -65,8 +72,9 @@ function useMapManager(controller, opts, calcEchartsOpts) {
65
72
  historyNames.value.pop();
66
73
  const name = historyNames.value.pop();
67
74
  const areaCode = opts.value.strAreaCode ? "".concat(name) : Number(name);
75
+ const areaLevel = areaLevelMap.get(lodashEs.toNumber(areaCode)) || "";
68
76
  controller.state.areaCode = areaCode;
69
- await controller.evt.emit("onBackClick", void 0);
77
+ controller.state.areaLevel = areaLevel;
70
78
  changeMap(name, areaCode);
71
79
  }
72
80
  };
@@ -90,27 +98,53 @@ function useMapManager(controller, opts, calcEchartsOpts) {
90
98
  if (!params.data) {
91
99
  return;
92
100
  }
101
+ processing.value = true;
93
102
  const { pointData, areaData } = controller.state;
94
103
  const data = mapChartUser_util.findData(params.data._id, "point", pointData, areaData);
95
104
  if (data) {
96
105
  controller.onPointClick(data);
97
106
  }
107
+ processing.value = false;
98
108
  return;
99
109
  }
100
110
  if (params.seriesType === "map") {
111
+ processing.value = true;
101
112
  const areaCode = opts.value.strAreaCode ? "".concat(params.name) : Number(params.name);
102
- controller.state.areaCode = areaCode;
103
- const { pointData, areaData, enabledDrillDown } = controller.state;
113
+ const areaLevel = areaLevelMap.get(lodashEs.toNumber(areaCode)) || "";
114
+ const { pointData, areaData, enabledDrillDown, mdctrlActiveMode } = controller.state;
104
115
  if (params.data) {
105
116
  const data = mapChartUser_util.findData(params.data._id, "area", pointData, areaData);
106
117
  if (data) {
107
- controller.onAreaClick(data);
118
+ controller.onAreaClick(data, areaCode, areaLevel);
108
119
  }
109
120
  }
110
- if (params.name !== currentName.value && enabledDrillDown) {
121
+ if (params.name !== currentName.value && enabledDrillDown && mdctrlActiveMode !== 2) {
122
+ if (lodashEs.toNumber(areaCode) > lodashEs.toNumber(controller.state.areaCode)) {
123
+ controller.evt.emit("onDrillDown", { data: { areaCode } });
124
+ }
125
+ controller.state.areaCode = areaCode;
126
+ controller.state.areaLevel = areaLevel || "";
111
127
  changeMap(params.name, areaCode);
112
128
  }
129
+ processing.value = false;
130
+ }
131
+ }
132
+ });
133
+ chart.on("dblclick", (params) => {
134
+ const { enabledDrillDown, mdctrlActiveMode } = controller.state;
135
+ if (params.componentType === "series" && params.seriesType === "map" && mdctrlActiveMode === 2 && enabledDrillDown) {
136
+ processing.value = true;
137
+ const areaCode = opts.value.strAreaCode ? "".concat(params.name) : Number(params.name);
138
+ const areaLevel = areaLevelMap.get(lodashEs.toNumber(areaCode)) || "";
139
+ if (lodashEs.toNumber(areaCode) > lodashEs.toNumber(controller.state.areaCode)) {
140
+ controller.evt.emit("onDrillDown", { data: { areaCode } });
141
+ }
142
+ controller.state.areaCode = areaCode;
143
+ controller.state.areaLevel = areaLevel;
144
+ if (params.name !== currentName.value) {
145
+ changeMap(params.name, areaCode);
113
146
  }
147
+ processing.value = false;
114
148
  }
115
149
  });
116
150
  chart.on("mouseover", function(data) {
@@ -147,6 +181,8 @@ function useMapManager(controller, opts, calcEchartsOpts) {
147
181
  chartRef,
148
182
  historyNames,
149
183
  currentName,
184
+ processing,
185
+ areaLevelMap,
150
186
  changeMap,
151
187
  getCityInfo,
152
188
  goBack,
@@ -35,8 +35,11 @@ const CalendarDaily = /* @__PURE__ */ vue.defineComponent({
35
35
  handleDragStart,
36
36
  handleCurTime,
37
37
  initDrawData,
38
- eventContextmenu
39
- } = useCalendarDaily.useCalendarDaily(props, emit);
38
+ eventContextmenu,
39
+ contentMousemove,
40
+ eventMouseenter,
41
+ eventMouseleave
42
+ } = useCalendarDaily.useCalendarDaily(props, emit, ns);
40
43
  vue.watch(() => props.selectedData, () => {
41
44
  if (props.selectedData && props.selectedData.length > 0) {
42
45
  const data = props.selectedData.length > selectedData.value.length ? props.selectedData : selectedData.value;
@@ -60,6 +63,23 @@ const CalendarDaily = /* @__PURE__ */ vue.defineComponent({
60
63
  curTimeTimer.value = null;
61
64
  }
62
65
  });
66
+ const renderPopoverContent = (_event) => {
67
+ var _a;
68
+ const _tempEvent = {
69
+ ..._event,
70
+ color: "",
71
+ bkColor: ""
72
+ };
73
+ return vue.createVNode("div", {
74
+ "class": [ns.em("event-popover", "body")]
75
+ }, [vue.createVNode("div", {
76
+ "class": [ns.em("event-popover", "scroll")]
77
+ }, [(slots == null ? void 0 : slots.event) ? (_a = slots.event) == null ? void 0 : _a.call(slots, {
78
+ data: _tempEvent
79
+ }) : vue.createVNode("div", {
80
+ "class": [ns.em("event-popover", "content")]
81
+ }, ["".concat(_event.text || "", " ").concat(_event.timeRange || "")])])]);
82
+ };
63
83
  const renderEventItem = (location, eventBoxStyle, eventContentStyle, event, index, slotNme, classEName) => {
64
84
  var _a;
65
85
  let title = "".concat(event.text || "");
@@ -68,6 +88,7 @@ const CalendarDaily = /* @__PURE__ */ vue.defineComponent({
68
88
  title = core.showTitle(title) || "";
69
89
  if (props.showDetail)
70
90
  title = "";
91
+ const component = renderPopoverContent(event);
71
92
  return vue.createVNode("div", {
72
93
  "key": index,
73
94
  "class": [ns.em(classEName, "event-box")],
@@ -81,6 +102,8 @@ const CalendarDaily = /* @__PURE__ */ vue.defineComponent({
81
102
  handleEventDblClick(event, "head");
82
103
  },
83
104
  "onContextmenu": (e) => eventContextmenu(event, e),
105
+ "onMouseenter": (_e) => eventMouseenter(_e, component, location),
106
+ "onMouseleave": eventMouseleave,
84
107
  "style": eventContentStyle,
85
108
  "title": title
86
109
  }, [slots[slotNme] ? (_a = slots[slotNme]) == null ? void 0 : _a.call(slots, {
@@ -98,41 +121,6 @@ const CalendarDaily = /* @__PURE__ */ vue.defineComponent({
98
121
  "class": ["fa fa-check", ns.em(classEName, "check")]
99
122
  }, null) : ""])]);
100
123
  };
101
- const renderPopover = (content, event, placement) => {
102
- if (!props.showDetail) {
103
- return content;
104
- }
105
- const _tempEvent = {
106
- ...event,
107
- color: "",
108
- bkColor: ""
109
- };
110
- return vue.createVNode(vue.resolveComponent("el-popover"), {
111
- "show-after": 100,
112
- "offset": 4,
113
- "width": "auto",
114
- "popper-class": [ns.e("event-popover")],
115
- "placement": placement || "right-start"
116
- }, {
117
- reference: () => content,
118
- default: () => {
119
- var _a;
120
- return vue.createVNode("div", {
121
- "class": [ns.em("event-popover", "body")]
122
- }, [vue.createVNode("div", {
123
- "class": [ns.em("event-popover", "close")],
124
- "onClick": (el) => util.handlePopClose(el),
125
- "innerHTML": util.closeIcon
126
- }, null), vue.createVNode("div", {
127
- "class": [ns.em("event-popover", "scroll")]
128
- }, [(slots == null ? void 0 : slots.event) ? (_a = slots.event) == null ? void 0 : _a.call(slots, {
129
- data: _tempEvent
130
- }) : vue.createVNode("div", {
131
- "class": [ns.em("event-popover", "content")]
132
- }, ["".concat(event.text || "", " ").concat(event.timeRange || "")])])]);
133
- }
134
- });
135
- };
136
124
  const renderHeader = () => {
137
125
  return vue.createVNode("div", {
138
126
  "class": [ns.e("calendar-daily__head")],
@@ -152,8 +140,7 @@ const CalendarDaily = /* @__PURE__ */ vue.defineComponent({
152
140
  const eventContentStyle = {
153
141
  background: event.bkColorFade
154
142
  };
155
- const tempContent = renderEventItem("header", eventBoxStyle, eventContentStyle, event, index, "head-event", "allday-info");
156
- return renderPopover(tempContent, event, "bottom");
143
+ return renderEventItem("header", eventBoxStyle, eventContentStyle, event, index, "head-event", "allday-info");
157
144
  }) : vue.createVNode(vue.resolveComponent("iBizNoData"), {
158
145
  "hideNoDataImage": true
159
146
  }, null)])])]), vue.createVNode("div", {
@@ -167,7 +154,8 @@ const CalendarDaily = /* @__PURE__ */ vue.defineComponent({
167
154
  };
168
155
  const renderContent = () => {
169
156
  return vue.createVNode("div", {
170
- "class": [ns.e("scroll-area")]
157
+ "class": [ns.e("scroll-area")],
158
+ "onMousemove": contentMousemove
171
159
  }, [vue.createVNode("div", {
172
160
  "class": ns.e("time-pane")
173
161
  }, [vue.createVNode("div", {
@@ -201,8 +189,7 @@ const CalendarDaily = /* @__PURE__ */ vue.defineComponent({
201
189
  background: event.bkColorFade,
202
190
  "border-left": "3px solid ".concat(event.bkColor)
203
191
  };
204
- const tempContent = renderEventItem("content", eventBoxStyle, eventContentStyle, event, index, "", "time-pane");
205
- return renderPopover(tempContent, event);
192
+ return renderEventItem("content", eventBoxStyle, eventContentStyle, event, index, "", "time-pane");
206
193
  })])])]), util.isToday(props == null ? void 0 : props.selectedDay, /* @__PURE__ */ new Date()) ? vue.createVNode("div", {
207
194
  "class": ns.em("time-pane", "current-time"),
208
195
  "style": {
@@ -1 +1 @@
1
- .ibiz-calendar-daily{width:100%;height:100%;flex:1;display:flex;flex-direction:column;overflow:hidden}.ibiz-calendar-daily__calendar-daily__head{width:100%;height:58px;min-height:58px;padding-bottom:0;display:flex;position:relative;z-index:100}.ibiz-calendar-daily__allday-info{min-width:90px;height:100%;padding-left:40px;color:var(--ibiz-color-text-3);overflow:hidden;display:flex;align-items:center}.ibiz-calendar-daily__allday-info--work-items{width:100%;height:100%;padding-top:5px;overflow:hidden}.ibiz-calendar-daily__allday-info--work-items-scroll{height:100%;overflow-y:scroll;overflow-x:hidden}.ibiz-calendar-daily__allday-info--work-items-body{height:auto}.ibiz-calendar-daily__allday-info--work-items-body:has(.ibiz-no-data){height:100%}.ibiz-calendar-daily__allday-info--work-items-body:has(.ibiz-no-data) .ibiz-no-data{min-height:100%;min-width:100%}.ibiz-calendar-daily__allday-info--work-items-body:has(.ibiz-no-data) .ibiz-no-data .el-empty__description{margin:0}.ibiz-calendar-daily__allday-info--event-box{width:100%;height:22px;line-height:22px;padding:0 8px;margin-top:4px}.ibiz-calendar-daily__allday-info--event-box:nth-child(1){margin-top:0}.ibiz-calendar-daily__allday-info--event-content{display:block;width:100%;height:100%;border:none;outline:0;text-align:left;border-radius:4px;background:var(--ibiz-color-tertiary-light-hover);border-radius:4px;position:relative;cursor:pointer}.ibiz-calendar-daily__allday-info--event-content.is-selected-event{padding-right:20px}.ibiz-calendar-daily__allday-info--event-summary{width:100%;height:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-calendar-daily__allday-info--event-icon{margin-right:6px}.ibiz-calendar-daily__allday-info--event-name{margin-right:6px}.ibiz-calendar-daily__allday-info--time-range{margin-right:6px}.ibiz-calendar-daily__allday-info--check{color:var(--ibiz-color-primary);position:absolute;right:6px;top:50%;transform:translate(0,-50%)}.ibiz-calendar-daily__allday-resize-line{width:100%;height:3px;background-color:var(--ibiz-color-border)}.ibiz-calendar-daily__resizable-handle{width:100%;height:10px;position:absolute;bottom:-4px;display:flex;align-items:center;cursor:row-resize}.ibiz-calendar-daily__scroll-area{flex:1;overflow-y:scroll;overflow-x:hidden}.ibiz-calendar-daily__time-pane{height:auto;width:calc(100% - 5px);display:flex;flex-basis:0%;flex-grow:1;flex-shrink:1;position:relative}.ibiz-calendar-daily__time-pane--time-labels{width:90px;min-width:90px;padding:27px 0 27px 40px;border-right:1px solid var(--ibiz-color-border);position:sticky;left:0}.ibiz-calendar-daily__time-pane--time-label{margin-top:38px;height:22px;text-align:left}.ibiz-calendar-daily__time-pane--time-label:nth-child(1){height:22px;margin-top:22px}.ibiz-calendar-daily__time-pane--time-columns{position:relative;flex:1;padding-bottom:59px}.ibiz-calendar-daily__time-pane--time-column{height:60px;border-top:1px dashed var(--ibiz-color-border)}.ibiz-calendar-daily__time-pane--time-column:first-child{border-top:none}.ibiz-calendar-daily__time-pane--time-column-last{border-bottom:1px dashed var(--ibiz-color-border)}.ibiz-calendar-daily__time-pane--event-timed-container{position:absolute;top:0;width:100%;height:100%;overflow:hidden}.ibiz-calendar-daily__time-pane--container-scroll{position:relative;top:0;overflow:auto;height:100%;width:auto;overflow-y:hidden;overflow-x:auto}.ibiz-calendar-daily__time-pane--event-box{position:absolute;width:auto;height:auto;padding-left:4px}.ibiz-calendar-daily__time-pane--event-content{position:relative;z-index:3;width:100%;height:100%;min-height:22px;padding:8px;overflow:hidden;line-height:100%;text-align:left;cursor:pointer;border:none;outline:0}.ibiz-calendar-daily__time-pane--event-content.is-selected-event{border:1px solid var(--ibiz-color-primary)}.ibiz-calendar-daily__time-pane--event-summary{width:100%;height:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-calendar-daily__time-pane--event-summary>span{margin-right:4px}.ibiz-calendar-daily__time-pane--current-time{width:calc(100% - 36px);margin-left:40px;position:absolute;top:38px;left:-3px;height:2px;background-color:var(--ibiz-color-primary);display:flex;align-items:center}.ibiz-calendar-daily__time-pane--current-time-label{width:48px;min-width:48px;max-width:18px;height:24px;text-align:center;line-height:24px;border:none;border-radius:4px;background:var(--ibiz-color-primary);color:var(--ibiz-color-primary-text)}.ibiz-calendar-daily__event-popover{position:relative;width:auto;height:auto;padding:0}.ibiz-calendar-daily__event-popover.el-popover.el-popper{padding:8px}.ibiz-calendar-daily__event-popover:has(.ibiz-control-calendar-item-default){display:none!important}.ibiz-calendar-daily__event-popover--body{width:auto;height:auto;overflow:hidden}.ibiz-calendar-daily__event-popover--scroll{width:auto;min-width:200px;height:auto;max-height:80%;overflow:auto;pointer-events:none}.ibiz-calendar-daily__event-popover--scroll .ibiz-control-calendar-item:last-child{margin-bottom:0}.ibiz-calendar-daily__event-popover--scroll .ibiz-control-calendar-item.is-active{background-color:transparent;border-color:transparent}.ibiz-calendar-daily__event-popover--close{position:absolute;top:8px;right:8px;display:none;cursor:pointer}.ibiz-calendar-daily__event-popover--close:hover .el-icon{background:var(--ibiz-color-primary);border-radius:50%}.ibiz-calendar-daily__event-popover--close:hover .el-icon svg{fill:var(--ibiz-color-white)}.ibiz-calendar-daily__event-popover .el-icon{display:flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;font-size:20px}.ibiz-calendar-daily__event-popover .el-icon svg{fill:var(--el-text-color-secondary)}
1
+ .ibiz-calendar-daily{width:100%;height:100%;flex:1;display:flex;flex-direction:column;overflow:hidden}.ibiz-calendar-daily__calendar-daily__head{width:100%;height:58px;min-height:58px;padding-bottom:0;display:flex;position:relative;z-index:100}.ibiz-calendar-daily__allday-info{min-width:90px;height:100%;padding-left:40px;color:var(--ibiz-color-text-3);overflow:hidden;display:flex;align-items:center}.ibiz-calendar-daily__allday-info--work-items{width:100%;height:100%;padding-top:5px;overflow:hidden}.ibiz-calendar-daily__allday-info--work-items-scroll{height:100%;overflow-y:scroll;overflow-x:hidden}.ibiz-calendar-daily__allday-info--work-items-body{height:auto}.ibiz-calendar-daily__allday-info--work-items-body:has(.ibiz-no-data){height:100%}.ibiz-calendar-daily__allday-info--work-items-body:has(.ibiz-no-data) .ibiz-no-data{min-height:100%;min-width:100%}.ibiz-calendar-daily__allday-info--work-items-body:has(.ibiz-no-data) .ibiz-no-data .el-empty__description{margin:0}.ibiz-calendar-daily__allday-info--event-box{width:100%;height:22px;line-height:22px;padding:0 8px;margin-top:4px}.ibiz-calendar-daily__allday-info--event-box:nth-child(1){margin-top:0}.ibiz-calendar-daily__allday-info--event-content{display:block;width:100%;height:100%;border:none;outline:0;text-align:left;border-radius:4px;background:var(--ibiz-color-tertiary-light-hover);position:relative;cursor:pointer}.ibiz-calendar-daily__allday-info--event-content.is-selected-event{padding-right:20px}.ibiz-calendar-daily__allday-info--event-summary{width:100%;height:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-calendar-daily__allday-info--event-icon{margin-right:6px}.ibiz-calendar-daily__allday-info--event-name{margin-right:6px}.ibiz-calendar-daily__allday-info--time-range{margin-right:6px}.ibiz-calendar-daily__allday-info--check{color:var(--ibiz-color-primary);position:absolute;right:6px;top:50%;transform:translate(0,-50%)}.ibiz-calendar-daily__allday-resize-line{width:100%;height:3px;background-color:var(--ibiz-color-border)}.ibiz-calendar-daily__resizable-handle{width:100%;height:10px;position:absolute;bottom:-4px;display:flex;align-items:center;cursor:row-resize}.ibiz-calendar-daily__scroll-area{flex:1;overflow-y:scroll;overflow-x:hidden}.ibiz-calendar-daily__time-pane{height:auto;width:calc(100% - 5px);display:flex;flex-basis:0%;flex-grow:1;flex-shrink:1;position:relative}.ibiz-calendar-daily__time-pane--time-labels{width:90px;min-width:90px;padding:27px 0 27px 40px;border-right:1px solid var(--ibiz-color-border);position:sticky;left:0}.ibiz-calendar-daily__time-pane--time-label{margin-top:38px;height:22px;text-align:left}.ibiz-calendar-daily__time-pane--time-label:nth-child(1){height:22px;margin-top:22px}.ibiz-calendar-daily__time-pane--time-columns{position:relative;flex:1;padding-bottom:59px}.ibiz-calendar-daily__time-pane--time-column{height:60px;border-top:1px dashed var(--ibiz-color-border)}.ibiz-calendar-daily__time-pane--time-column:first-child{border-top:none}.ibiz-calendar-daily__time-pane--time-column-last{border-bottom:1px dashed var(--ibiz-color-border)}.ibiz-calendar-daily__time-pane--event-timed-container{position:absolute;top:0;width:100%;height:100%;overflow:hidden}.ibiz-calendar-daily__time-pane--container-scroll{position:relative;top:0;overflow:auto;height:100%;width:auto;overflow-y:hidden;overflow-x:auto}.ibiz-calendar-daily__time-pane--event-box{position:absolute;width:auto;height:auto;padding-left:4px}.ibiz-calendar-daily__time-pane--event-content{position:relative;z-index:3;width:100%;height:100%;min-height:22px;padding:8px;overflow:hidden;line-height:100%;text-align:left;cursor:pointer;border:none;outline:0}.ibiz-calendar-daily__time-pane--event-content.is-selected-event{border:1px solid var(--ibiz-color-primary)}.ibiz-calendar-daily__time-pane--event-summary{width:100%;height:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-calendar-daily__time-pane--event-summary>span{margin-right:4px}.ibiz-calendar-daily__time-pane--current-time{width:calc(100% - 36px);margin-left:40px;position:absolute;top:38px;left:-3px;height:2px;background-color:var(--ibiz-color-primary);display:flex;align-items:center}.ibiz-calendar-daily__time-pane--current-time-label{width:48px;min-width:48px;max-width:18px;height:24px;text-align:center;line-height:24px;border:none;border-radius:4px;background:var(--ibiz-color-primary);color:var(--ibiz-color-primary-text)}.ibiz-calendar-daily__event-popover{width:auto;height:auto;padding:0}.ibiz-calendar-daily__event-popover.ibiz-popover{position:absolute;z-index:110;padding:var(--ibiz-spacing-tight);background:var(--ibiz-color-bg-1);border:none;box-shadow:var(--ibiz-shadow-elevated)}.ibiz-calendar-daily__event-popover:has(.ibiz-control-calendar-item-default){display:none!important}.ibiz-calendar-daily__event-popover--body{width:auto;height:auto;overflow:hidden}.ibiz-calendar-daily__event-popover--scroll{width:auto;min-width:200px;height:auto;max-height:80%;overflow:auto;pointer-events:none}.ibiz-calendar-daily__event-popover--scroll .ibiz-control-calendar-item:last-child{margin-bottom:0}.ibiz-calendar-daily__event-popover--scroll .ibiz-control-calendar-item.is-active{background-color:transparent;border-color:transparent}
@@ -5,7 +5,7 @@ require('../util/index.cjs');
5
5
  var util = require('../util/util.cjs');
6
6
 
7
7
  "use strict";
8
- const useCalendarDaily = (props, emit) => {
8
+ const useCalendarDaily = (props, emit, _ns) => {
9
9
  const drawData = vue.ref([]);
10
10
  const curTimeTimer = vue.ref();
11
11
  const curTimeTop = vue.ref(0);
@@ -231,6 +231,36 @@ const useCalendarDaily = (props, emit) => {
231
231
  const eventContextmenu = async (item, evt) => {
232
232
  emit("eventContextmenu", { evt, data: [item] });
233
233
  };
234
+ const followElement = util.createFollowElement();
235
+ let overlay = null;
236
+ let eventLocation = "";
237
+ const contentMousemove = (_event) => {
238
+ if (eventLocation === "content" && overlay && followElement)
239
+ util.followMouseMove(_event, followElement);
240
+ };
241
+ const eventMouseenter = (_event, _component, _location) => {
242
+ if (!props.showDetail || overlay) {
243
+ return;
244
+ }
245
+ const isContent = _location === "content";
246
+ eventLocation = _location;
247
+ overlay = util.openPopover(
248
+ _component,
249
+ isContent ? followElement : _event.target,
250
+ {
251
+ placement: isContent ? "right-start" : "bottom",
252
+ modalClass: _ns.e("event-popover")
253
+ }
254
+ );
255
+ };
256
+ const eventMouseleave = (_e) => {
257
+ overlay == null ? void 0 : overlay.dismiss();
258
+ overlay = null;
259
+ eventLocation = "";
260
+ };
261
+ vue.onBeforeUnmount(() => {
262
+ util.removeFollowElement(followElement);
263
+ });
234
264
  return {
235
265
  drawData,
236
266
  curTimeTimer,
@@ -246,7 +276,10 @@ const useCalendarDaily = (props, emit) => {
246
276
  handleEventClick,
247
277
  handleEventDblClick,
248
278
  eventContextmenu,
249
- initDrawData
279
+ initDrawData,
280
+ contentMousemove,
281
+ eventMouseenter,
282
+ eventMouseleave
250
283
  };
251
284
  };
252
285
 
@@ -55,6 +55,7 @@ const CalendarUser = /* @__PURE__ */ vue.defineComponent({
55
55
  return [(_a = slots.event) == null ? void 0 : _a.call(slots, {
56
56
  data: items[0]
57
57
  }), vue.createVNode(vue.resolveComponent("el-popover"), {
58
+ "popper-class": ns.e("custom-user-popover"),
58
59
  "trigger": "click",
59
60
  "ref": (el) => {
60
61
  if (el && items[0].id === popoverValue.value) {
@@ -1 +1 @@
1
- .ibiz-calendar-user{--ibiz-calendar-user-cell-min-height:60px;display:flex;flex-direction:column;width:100%;height:100%;padding:var(--ibiz-spacing-base);overflow:hidden}.ibiz-calendar-user__cell{min-height:var(--ibiz-calendar-user-cell-min-height);border-bottom:1px solid var(--ibiz-color-tertiary);border-left:1px solid var(--ibiz-color-tertiary)}.ibiz-calendar-user__cell:last-child{border-right:1px solid var(--ibiz-color-tertiary)}.ibiz-calendar-user__black{width:100%;height:100%}.ibiz-calendar-user .ibiz-calendar-user-more{flex-shrink:0;padding-left:var(--ibiz-spacing-tight);overflow:hidden;font-size:var(--ibiz-font-size-small);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-radius:var(--ibiz-spacing-extra-tight)}.ibiz-calendar-user .ibiz-calendar-user-more:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-calendar-user .ibiz-calendar-user-header{flex-shrink:0}.ibiz-calendar-user-header__top{border-top:1px solid var(--ibiz-color-tertiary)}.ibiz-calendar-user-header__time-item{display:flex;justify-content:space-between;width:100%}.ibiz-calendar-user-header__week-day{display:flex;flex:1;align-items:center;justify-content:center;width:100%}.ibiz-calendar-user-header__week-item{display:flex;flex:1;flex-direction:column;flex-shrink:0;justify-content:center;overflow:hidden}.ibiz-calendar-user-header__time-text{display:flex;flex:1;align-items:center;justify-content:center}.ibiz-calendar-user .ibiz-calendar-user-content{position:relative;flex:1;width:100%;height:100%;overflow:hidden}.ibiz-calendar-user-content__time-item{display:flex;justify-content:space-between;width:100%}.ibiz-calendar-user-content__time-text{display:flex;flex:1;align-items:center;justify-content:center}.ibiz-calendar-user-content__week-item{display:flex;flex:1;flex-direction:column;flex-shrink:0;justify-content:center;overflow:hidden}.ibiz-calendar-user-content__wrapping{width:100%;height:100%;overflow:auto}.ibiz-calendar-user-content__wrapping::-webkit-scrollbar{display:none}.ibiz-calendar-user-scroll-bar{position:absolute;top:var(--ibiz-calendar-user-scroll-bar-thumb-top);right:0;z-index:10;width:4px;height:100%;border-radius:var(--ibiz-border-radius-extra-small)}.ibiz-calendar-user-scroll-bar__thumb{width:4px;height:var(--ibiz-calendar-user-scroll-bar-thumb-height);cursor:pointer;background-color:#d3d3d3;border-radius:var(--ibiz-border-radius-extra-small)}
1
+ .ibiz-calendar-user{--ibiz-calendar-user-cell-min-height:60px;display:flex;flex-direction:column;width:100%;height:100%;padding:var(--ibiz-spacing-base);overflow:hidden}.ibiz-calendar-user__cell{min-height:var(--ibiz-calendar-user-cell-min-height);padding:0 var(--ibiz-spacing-base);border-bottom:1px solid var(--ibiz-color-tertiary);border-left:1px solid var(--ibiz-color-tertiary)}.ibiz-calendar-user__cell:last-child{border-right:1px solid var(--ibiz-color-tertiary)}.ibiz-calendar-user__cell .ibiz-control-calendar-item{height:auto}.ibiz-calendar-user__cell .ibiz-control-calendar-item.is-active{color:var(--ibiz-color-primary-text);background-color:var(--ibiz-color-primary)}.ibiz-calendar-user__black{width:100%;height:100%}.ibiz-calendar-user__custom-user-popover .ibiz-control-calendar-item{height:auto}.ibiz-calendar-user__custom-user-popover .ibiz-control-calendar-item.is-active{color:var(--ibiz-color-primary-text);background-color:var(--ibiz-color-primary)}.ibiz-calendar-user .ibiz-calendar-user-more{flex-shrink:0;padding-left:var(--ibiz-spacing-tight);overflow:hidden;font-size:var(--ibiz-font-size-small);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-radius:var(--ibiz-spacing-extra-tight)}.ibiz-calendar-user .ibiz-calendar-user-more:hover{background-color:var(--ibiz-control-calendar-hover-bg-color)}.ibiz-calendar-user .ibiz-calendar-user-header{flex-shrink:0}.ibiz-calendar-user-header__top{border-top:1px solid var(--ibiz-color-tertiary)}.ibiz-calendar-user-header__time-item{display:flex;justify-content:space-between;width:100%}.ibiz-calendar-user-header__week-day{display:flex;flex:1;align-items:center;justify-content:center;width:100%}.ibiz-calendar-user-header__week-item{display:flex;flex:1;flex-direction:column;flex-shrink:0;justify-content:center;overflow:hidden}.ibiz-calendar-user-header__time-text{display:flex;flex:1;align-items:center;justify-content:center}.ibiz-calendar-user .ibiz-calendar-user-content{position:relative;flex:1;width:100%;height:100%;overflow:hidden}.ibiz-calendar-user-content__time-item{display:flex;justify-content:space-between;width:100%}.ibiz-calendar-user-content__time-text{display:flex;flex:1;align-items:center;justify-content:center}.ibiz-calendar-user-content__week-item{display:flex;flex:1;flex-direction:column;flex-shrink:0;justify-content:center;overflow:hidden}.ibiz-calendar-user-content__wrapping{width:100%;height:100%;overflow:auto}.ibiz-calendar-user-content__wrapping::-webkit-scrollbar{display:none}.ibiz-calendar-user-scroll-bar{position:absolute;top:var(--ibiz-calendar-user-scroll-bar-thumb-top);right:0;z-index:10;width:4px;height:100%;border-radius:var(--ibiz-border-radius-extra-small)}.ibiz-calendar-user-scroll-bar__thumb{width:4px;height:var(--ibiz-calendar-user-scroll-bar-thumb-height);cursor:pointer;background-color:#d3d3d3;border-radius:var(--ibiz-border-radius-extra-small)}