weaver-e10-builder 1.2.2 → 1.2.5

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 (274) hide show
  1. package/README.md +8 -19
  2. package/dist/commands/actionflow.d.ts.map +1 -1
  3. package/dist/commands/actionflow.js +14 -1
  4. package/dist/commands/actionflow.js.map +1 -1
  5. package/dist/commands/designer-css.d.ts +15 -0
  6. package/dist/commands/designer-css.d.ts.map +1 -0
  7. package/dist/commands/designer-css.js +205 -0
  8. package/dist/commands/designer-css.js.map +1 -0
  9. package/dist/commands/form-add-detail-table.d.ts.map +1 -1
  10. package/dist/commands/form-add-detail-table.js +127 -7
  11. package/dist/commands/form-add-detail-table.js.map +1 -1
  12. package/dist/commands/form-ebuilder-columns.d.ts +7 -0
  13. package/dist/commands/form-ebuilder-columns.d.ts.map +1 -1
  14. package/dist/commands/form-ebuilder-columns.js +2 -24
  15. package/dist/commands/form-ebuilder-columns.js.map +1 -1
  16. package/dist/commands/form-field-lang.d.ts.map +1 -1
  17. package/dist/commands/form-field-lang.js +4 -39
  18. package/dist/commands/form-field-lang.js.map +1 -1
  19. package/dist/commands/form-formula.d.ts.map +1 -1
  20. package/dist/commands/form-formula.js +35 -11
  21. package/dist/commands/form-formula.js.map +1 -1
  22. package/dist/commands/form-layout-init.d.ts.map +1 -1
  23. package/dist/commands/form-layout-init.js +15 -10
  24. package/dist/commands/form-layout-init.js.map +1 -1
  25. package/dist/commands/form-layout.js +24 -21
  26. package/dist/commands/form-layout.js.map +1 -1
  27. package/dist/commands/form-native.d.ts.map +1 -1
  28. package/dist/commands/form-native.js +181 -0
  29. package/dist/commands/form-native.js.map +1 -1
  30. package/dist/commands/form-nlist.d.ts +1 -1
  31. package/dist/commands/form-nlist.d.ts.map +1 -1
  32. package/dist/commands/form-nlist.js +5 -3
  33. package/dist/commands/form-nlist.js.map +1 -1
  34. package/dist/commands/form-validate.d.ts.map +1 -1
  35. package/dist/commands/form-validate.js +11 -3
  36. package/dist/commands/form-validate.js.map +1 -1
  37. package/dist/commands/form.d.ts.map +1 -1
  38. package/dist/commands/form.js +168 -90
  39. package/dist/commands/form.js.map +1 -1
  40. package/dist/commands/menu.d.ts.map +1 -1
  41. package/dist/commands/menu.js +170 -23
  42. package/dist/commands/menu.js.map +1 -1
  43. package/dist/commands/wf-form.d.ts +1 -0
  44. package/dist/commands/wf-form.d.ts.map +1 -1
  45. package/dist/commands/wf-form.js +44 -13
  46. package/dist/commands/wf-form.js.map +1 -1
  47. package/dist/commands/workflow-auth-resp.d.ts.map +1 -1
  48. package/dist/commands/workflow-auth-resp.js +69 -8
  49. package/dist/commands/workflow-auth-resp.js.map +1 -1
  50. package/dist/commands/workflow-node-assign-flow.d.ts +3 -0
  51. package/dist/commands/workflow-node-assign-flow.d.ts.map +1 -0
  52. package/dist/commands/workflow-node-assign-flow.js +341 -0
  53. package/dist/commands/workflow-node-assign-flow.js.map +1 -0
  54. package/dist/commands/workflow-node.d.ts +2 -0
  55. package/dist/commands/workflow-node.d.ts.map +1 -1
  56. package/dist/commands/workflow-node.js +219 -48
  57. package/dist/commands/workflow-node.js.map +1 -1
  58. package/dist/commands/workflow-odoc.d.ts.map +1 -1
  59. package/dist/commands/workflow-odoc.js +56 -56
  60. package/dist/commands/workflow-odoc.js.map +1 -1
  61. package/dist/commands/workflow-setting.d.ts.map +1 -1
  62. package/dist/commands/workflow-setting.js +77 -1
  63. package/dist/commands/workflow-setting.js.map +1 -1
  64. package/dist/commands/workflow.d.ts.map +1 -1
  65. package/dist/commands/workflow.js +36 -80
  66. package/dist/commands/workflow.js.map +1 -1
  67. package/dist/core/auth.js +1 -1
  68. package/dist/core/client.d.ts +14 -0
  69. package/dist/core/client.d.ts.map +1 -1
  70. package/dist/core/client.js +28 -12
  71. package/dist/core/client.js.map +1 -1
  72. package/dist/index.js +4 -0
  73. package/dist/index.js.map +1 -1
  74. package/dist/services/actionflow/command_output.d.ts +7 -0
  75. package/dist/services/actionflow/command_output.d.ts.map +1 -1
  76. package/dist/services/actionflow/command_output.js +46 -0
  77. package/dist/services/actionflow/command_output.js.map +1 -1
  78. package/dist/services/actionflow/components/action_eb_add.d.ts.map +1 -1
  79. package/dist/services/actionflow/components/action_eb_add.js +14 -4
  80. package/dist/services/actionflow/components/action_eb_add.js.map +1 -1
  81. package/dist/services/actionflow/components/action_eb_add_compiler.d.ts.map +1 -1
  82. package/dist/services/actionflow/components/action_eb_add_compiler.js +29 -0
  83. package/dist/services/actionflow/components/action_eb_add_compiler.js.map +1 -1
  84. package/dist/services/actionflow/components/action_eb_update.d.ts.map +1 -1
  85. package/dist/services/actionflow/components/action_eb_update.js +23 -8
  86. package/dist/services/actionflow/components/action_eb_update.js.map +1 -1
  87. package/dist/services/actionflow/components/action_eb_update_compiler.d.ts.map +1 -1
  88. package/dist/services/actionflow/components/action_eb_update_compiler.js +239 -6
  89. package/dist/services/actionflow/components/action_eb_update_compiler.js.map +1 -1
  90. package/dist/services/actionflow/components/assign_var.d.ts +12 -0
  91. package/dist/services/actionflow/components/assign_var.d.ts.map +1 -0
  92. package/dist/services/actionflow/components/assign_var.js +133 -0
  93. package/dist/services/actionflow/components/assign_var.js.map +1 -0
  94. package/dist/services/actionflow/components/custom_set_form.d.ts +10 -0
  95. package/dist/services/actionflow/components/custom_set_form.d.ts.map +1 -0
  96. package/dist/services/actionflow/components/custom_set_form.js +65 -0
  97. package/dist/services/actionflow/components/custom_set_form.js.map +1 -0
  98. package/dist/services/actionflow/components/custom_trigger.d.ts +2 -2
  99. package/dist/services/actionflow/components/custom_trigger.d.ts.map +1 -1
  100. package/dist/services/actionflow/components/custom_trigger.js +7 -10
  101. package/dist/services/actionflow/components/custom_trigger.js.map +1 -1
  102. package/dist/services/actionflow/components/enquiry_form.js +1 -1
  103. package/dist/services/actionflow/components/enquiry_form.js.map +1 -1
  104. package/dist/services/actionflow/components/index.d.ts.map +1 -1
  105. package/dist/services/actionflow/components/index.js +9 -0
  106. package/dist/services/actionflow/components/index.js.map +1 -1
  107. package/dist/services/actionflow/components/output.d.ts.map +1 -1
  108. package/dist/services/actionflow/components/output.js +6 -1
  109. package/dist/services/actionflow/components/output.js.map +1 -1
  110. package/dist/services/actionflow/context_preflight.d.ts.map +1 -1
  111. package/dist/services/actionflow/context_preflight.js +13 -6
  112. package/dist/services/actionflow/context_preflight.js.map +1 -1
  113. package/dist/services/actionflow/context_provider.d.ts.map +1 -1
  114. package/dist/services/actionflow/context_provider.js +3 -2
  115. package/dist/services/actionflow/context_provider.js.map +1 -1
  116. package/dist/services/actionflow/dynamic_resources.d.ts +7 -1
  117. package/dist/services/actionflow/dynamic_resources.d.ts.map +1 -1
  118. package/dist/services/actionflow/dynamic_resources.js +65 -8
  119. package/dist/services/actionflow/dynamic_resources.js.map +1 -1
  120. package/dist/services/actionflow/ebuilder_source.d.ts +19 -0
  121. package/dist/services/actionflow/ebuilder_source.d.ts.map +1 -0
  122. package/dist/services/actionflow/ebuilder_source.js +78 -0
  123. package/dist/services/actionflow/ebuilder_source.js.map +1 -0
  124. package/dist/services/actionflow/form_source.d.ts +76 -0
  125. package/dist/services/actionflow/form_source.d.ts.map +1 -1
  126. package/dist/services/actionflow/form_source.js +195 -1
  127. package/dist/services/actionflow/form_source.js.map +1 -1
  128. package/dist/services/actionflow/formula_service.d.ts +4 -1
  129. package/dist/services/actionflow/formula_service.d.ts.map +1 -1
  130. package/dist/services/actionflow/formula_service.js +97 -23
  131. package/dist/services/actionflow/formula_service.js.map +1 -1
  132. package/dist/services/actionflow/preflight_service.d.ts +6 -0
  133. package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
  134. package/dist/services/actionflow/preflight_service.js +211 -3
  135. package/dist/services/actionflow/preflight_service.js.map +1 -1
  136. package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
  137. package/dist/services/actionflow/workflow_compiler.js +83 -15
  138. package/dist/services/actionflow/workflow_compiler.js.map +1 -1
  139. package/dist/services/designer-css.d.ts +89 -0
  140. package/dist/services/designer-css.d.ts.map +1 -0
  141. package/dist/services/designer-css.js +163 -0
  142. package/dist/services/designer-css.js.map +1 -0
  143. package/dist/services/dom-structure.d.ts +42 -0
  144. package/dist/services/dom-structure.d.ts.map +1 -0
  145. package/dist/services/dom-structure.js +251 -0
  146. package/dist/services/dom-structure.js.map +1 -0
  147. package/dist/services/form-create.d.ts +2 -1
  148. package/dist/services/form-create.d.ts.map +1 -1
  149. package/dist/services/form-create.js.map +1 -1
  150. package/dist/services/form-ebuilder-columns.d.ts +50 -0
  151. package/dist/services/form-ebuilder-columns.d.ts.map +1 -0
  152. package/dist/services/form-ebuilder-columns.js +68 -0
  153. package/dist/services/form-ebuilder-columns.js.map +1 -0
  154. package/dist/services/form-field-drop.d.ts +30 -1
  155. package/dist/services/form-field-drop.d.ts.map +1 -1
  156. package/dist/services/form-field-drop.js +60 -0
  157. package/dist/services/form-field-drop.js.map +1 -1
  158. package/dist/services/form-field-patch.d.ts +69 -0
  159. package/dist/services/form-field-patch.d.ts.map +1 -0
  160. package/dist/services/form-field-patch.js +117 -0
  161. package/dist/services/form-field-patch.js.map +1 -0
  162. package/dist/services/form-i18n-label.d.ts +48 -0
  163. package/dist/services/form-i18n-label.d.ts.map +1 -0
  164. package/dist/services/form-i18n-label.js +91 -0
  165. package/dist/services/form-i18n-label.js.map +1 -0
  166. package/dist/services/form-nlist.d.ts +1 -0
  167. package/dist/services/form-nlist.d.ts.map +1 -1
  168. package/dist/services/form-nlist.js +32 -5
  169. package/dist/services/form-nlist.js.map +1 -1
  170. package/dist/services/form-style-template.d.ts +6 -2
  171. package/dist/services/form-style-template.d.ts.map +1 -1
  172. package/dist/services/form-style-template.js +8 -4
  173. package/dist/services/form-style-template.js.map +1 -1
  174. package/dist/services/form-sub-detail.d.ts +51 -3
  175. package/dist/services/form-sub-detail.d.ts.map +1 -1
  176. package/dist/services/form-sub-detail.js +183 -20
  177. package/dist/services/form-sub-detail.js.map +1 -1
  178. package/dist/services/formula-detail.d.ts +68 -5
  179. package/dist/services/formula-detail.d.ts.map +1 -1
  180. package/dist/services/formula-detail.js +110 -44
  181. package/dist/services/formula-detail.js.map +1 -1
  182. package/dist/services/menu-catalog.d.ts +84 -0
  183. package/dist/services/menu-catalog.d.ts.map +1 -0
  184. package/dist/services/menu-catalog.js +183 -0
  185. package/dist/services/menu-catalog.js.map +1 -0
  186. package/dist/services/rich-text.d.ts +33 -0
  187. package/dist/services/rich-text.d.ts.map +1 -0
  188. package/dist/services/rich-text.js +134 -0
  189. package/dist/services/rich-text.js.map +1 -0
  190. package/dist/services/workflow-add-step.d.ts +45 -0
  191. package/dist/services/workflow-add-step.d.ts.map +1 -0
  192. package/dist/services/workflow-add-step.js +122 -0
  193. package/dist/services/workflow-add-step.js.map +1 -0
  194. package/dist/services/workflow-assign-flow.d.ts +109 -0
  195. package/dist/services/workflow-assign-flow.d.ts.map +1 -0
  196. package/dist/services/workflow-assign-flow.js +306 -0
  197. package/dist/services/workflow-assign-flow.js.map +1 -0
  198. package/dist/services/workflow-drawback.d.ts +19 -0
  199. package/dist/services/workflow-drawback.d.ts.map +1 -0
  200. package/dist/services/workflow-drawback.js +59 -0
  201. package/dist/services/workflow-drawback.js.map +1 -0
  202. package/dist/services/workflow-links.d.ts +51 -0
  203. package/dist/services/workflow-links.d.ts.map +1 -0
  204. package/dist/services/workflow-links.js +162 -0
  205. package/dist/services/workflow-links.js.map +1 -0
  206. package/dist/services/workflow-node-layout.d.ts +45 -4
  207. package/dist/services/workflow-node-layout.d.ts.map +1 -1
  208. package/dist/services/workflow-node-layout.js +142 -41
  209. package/dist/services/workflow-node-layout.js.map +1 -1
  210. package/dist/services/workflow-node-menu.d.ts +57 -0
  211. package/dist/services/workflow-node-menu.d.ts.map +1 -0
  212. package/dist/services/workflow-node-menu.js +144 -0
  213. package/dist/services/workflow-node-menu.js.map +1 -0
  214. package/dist/services/workflow-odoc-setting.d.ts +43 -0
  215. package/dist/services/workflow-odoc-setting.d.ts.map +1 -0
  216. package/dist/services/workflow-odoc-setting.js +100 -0
  217. package/dist/services/workflow-odoc-setting.js.map +1 -0
  218. package/dist/services/workflow-tab-config.d.ts +54 -0
  219. package/dist/services/workflow-tab-config.d.ts.map +1 -0
  220. package/dist/services/workflow-tab-config.js +137 -0
  221. package/dist/services/workflow-tab-config.js.map +1 -0
  222. package/dist/types.d.ts +5 -1
  223. package/dist/types.d.ts.map +1 -1
  224. package/package.json +1 -1
  225. package/skill-docs/SKILL.md +8 -7
  226. package/skill-docs/_catalog.md +81 -77
  227. package/skill-docs/actionflows/SKILL.md +170 -167
  228. package/skill-docs/actionflows/references/components/ebuilder/ActionEbAdd.md +39 -2
  229. package/skill-docs/actionflows/references/components/ebuilder/ActionEbUpdate.md +42 -0
  230. package/skill-docs/actionflows/references/components/ebuilder/EventButton.md +33 -33
  231. package/skill-docs/actionflows/references/components/logic/Output.md +2 -0
  232. package/skill-docs/actionflows/references/components/trigger/CustomTrigger.md +16 -11
  233. package/skill-docs/assets/dom-structure/Bar.json +341 -0
  234. package/skill-docs/assets/dom-structure/BarStack.json +341 -0
  235. package/skill-docs/assets/dom-structure/Bubble.json +323 -0
  236. package/skill-docs/assets/dom-structure/Calendar.json +515 -0
  237. package/skill-docs/assets/dom-structure/Circular.json +337 -0
  238. package/skill-docs/assets/dom-structure/CollapsePanel.json +289 -0
  239. package/skill-docs/assets/dom-structure/Comment.json +617 -0
  240. package/skill-docs/assets/dom-structure/CountDown.json +755 -0
  241. package/skill-docs/assets/dom-structure/DigitalPanel.json +191 -0
  242. package/skill-docs/assets/dom-structure/EbButton.json +387 -0
  243. package/skill-docs/assets/dom-structure/FastCreate.json +242 -0
  244. package/skill-docs/assets/dom-structure/Gauge.json +282 -0
  245. package/skill-docs/assets/dom-structure/HBar.json +336 -0
  246. package/skill-docs/assets/dom-structure/HBarStack.json +337 -0
  247. package/skill-docs/assets/dom-structure/Line.json +341 -0
  248. package/skill-docs/assets/dom-structure/NList.json +712 -0
  249. package/skill-docs/assets/dom-structure/NavBar.json +274 -0
  250. package/skill-docs/assets/dom-structure/NavPanel.json +390 -0
  251. package/skill-docs/assets/dom-structure/NewTab.json +606 -0
  252. package/skill-docs/assets/dom-structure/Nightingale.json +336 -0
  253. package/skill-docs/assets/dom-structure/PageHeader.json +205 -0
  254. package/skill-docs/assets/dom-structure/Picture.json +209 -0
  255. package/skill-docs/assets/dom-structure/Pie.json +338 -0
  256. package/skill-docs/assets/dom-structure/ProgressChart.json +299 -0
  257. package/skill-docs/assets/dom-structure/SearchGlobal.json +628 -0
  258. package/skill-docs/assets/dom-structure/Slide.json +489 -0
  259. package/skill-docs/assets/dom-structure/Treemap.json +324 -0
  260. package/skill-docs/references/common/guide-plan-template.md +254 -251
  261. package/skill-docs/references/common/ref-cli-commands.md +537 -519
  262. package/skill-docs/references/ebuilder-designer/guide-designer-components.md +12 -1
  263. package/skill-docs/references/ebuilder-designer/guide-designer-css.md +127 -0
  264. package/skill-docs/references/ebuilder-designer/guide-designer.md +6 -5
  265. package/skill-docs/references/form/guide-create-form.md +233 -232
  266. package/skill-docs/references/form/guide-form-formula-functions.md +11 -1
  267. package/skill-docs/references/form/guide-form-layout-planning.md +1 -1
  268. package/skill-docs/references/form/guide-form-linkage.md +28 -2
  269. package/skill-docs/references/form/guide-form-sub-detail.md +82 -0
  270. package/skill-docs/references/form/guide-list-custom-text.md +52 -0
  271. package/skill-docs/references/menu/system-menus.md +12 -0
  272. package/skill-docs/references/workflow/guide-workflow-auth-resp.md +198 -190
  273. package/skill-docs/references/workflow/guide-workflow-odoc.md +22 -2
  274. package/skill-docs/references/workflow/guide-workflow.md +25 -3
@@ -0,0 +1,336 @@
1
+ {
2
+ "component": "HBar(条形图)",
3
+ "usage": "图表组件的 HTML 结构索引,用于样式定位:用户说「给条形图的 XX 设置样式」时,在这里按语义找节点,用它的 id / class 写选择器。不是完整 DOM 树,只列有 id 或关键 class 的元素。",
4
+ "legend": {
5
+ "[cls]": "条件类名:条件满足时才出现,否则该类名不存在",
6
+ "{a|b}": "多选一:实际只会出现其中一个",
7
+ "a > b": "合并两层:b 是 a 的直接子元素(中间没有有意义的元素)",
8
+ "ref": "引用本文件 shared.* 里的复用片段",
9
+ "<comId>": "尖括号 = 需要替换的占位符。<comId> 是该组件在页面里的实例 id(配置界面叫「组件ID」),写样式时用它限域,例如 #<comId> .ebcoms-charts-total;<contentClass> 等同理。注意花括号 {a|b} 只表示「多选一」,不用来表示占位符。",
10
+ "ebcom / ebcom-*": "weapp-ebdcoms 引擎加的类,不在图表组件源码里(core/view/createView.tsx + core/utils/comp.ts)",
11
+ "ebcoms-*": "图表组件源码写的类(clsPrefix = 'ebcoms')",
12
+ "ui-*": "@weapp/ui 组件的类:ui-echarts / ui-table-grid-* / ui-spin / ui-empty / ui-pagination / ui-icon / ui-bread-crumb / ui-popover",
13
+ "weapp-ebdf-*": "筛选搜索组件(@weapp/ebpagedesign)的类,只给挂载点,内部结构不可控"
14
+ },
15
+ "pickTree": "按「区域」取树:标题区→header,图表区(合计/轴名/canvas/加载)→chartArea,数据表→dataList,图表左右侧的数值清单→labelDataList。写样式时先 #<comId> 限域再往下找。本类型没有「数值展示列表」区域(不在 isDataOnLeftOrRight 列表)。",
16
+ "root": {
17
+ "desc": "引擎外壳,所有图表组件完全一致,由 weapp-ebdcoms 渲染(不在图表源码里)。写样式统一用 #<comId> 限域。",
18
+ "tree": {
19
+ "tag": "div",
20
+ "id": "<comId>",
21
+ "class": "ebcom ebcom-hbar [ebcom-m] ebcom-{grid|flow} ebcom-view ebcom-chart has-no-header",
22
+ "desc": "组件根。ebcom-hbar=类型类(同页多个图表组件靠它区分类型);ebcom-m 仅移动端;ebcom-{grid|flow}=页面布局;ebcom-chart 来自图表 defaultOpts.render.containerClass;has-no-header 恒有(图表用 renderHeader 自渲染标题,不走引擎的默认 header)。",
23
+ "children": [
24
+ {
25
+ "tag": "div",
26
+ "class": "header",
27
+ "when": "config.titleEnabled = true",
28
+ "desc": "标题区。内容由图表自己的 ChartHeader 接管(见 header 树)。标题关闭时这个节点整个不存在。",
29
+ "ref": "header.tree"
30
+ },
31
+ {
32
+ "tag": "div",
33
+ "class": "<contentClass> content",
34
+ "desc": "引擎内容槽,图表全部内容都在这里。view 模式初始只有 content,其余类名由脚本 classList.toggle 追加;design 模式直接带全。可能追加到 .content 上的类:ebcoms-charts-fl(流式布局)、ebcoms-hbar-content(流式布局)、show-data-list、data-list-direction-{top|bottom|left|right}、ebcoms-charts-reloading、ebcoms-charts-grid-mobile、displayFlex。",
35
+ "ref": "chartArea.tree"
36
+ },
37
+ {
38
+ "tag": "div",
39
+ "class": "footer",
40
+ "desc": "引擎底部操作栏。图表默认不开,几乎见不到;开了才会在 .content 之后出现 .ebcoms-footer-btns。"
41
+ }
42
+ ]
43
+ }
44
+ },
45
+ "shared": {
46
+ "desc": "跨区域复用的小片段。同一个 class 在多个区域出现时以这里的定义为准。",
47
+ "empty": {
48
+ "tag": "div",
49
+ "class": "ui-empty",
50
+ "desc": "@weapp/ui Empty。图表里三种用法:未匹配配置(“请设置图表配置项”)、无数据(type=noData)、词云 IE 提示(多一个 ebcoms-charts-com-WordCloud-IEempty)。紧挨着还有一个 .ebcoms-charts-placeholder 占位块(echarts 未实例化时)。"
51
+ },
52
+ "spin": {
53
+ "tag": "div",
54
+ "class": "ui-spin [ui-spin-nested-loading > ui-spin-container]",
55
+ "desc": "@weapp/ui Spin。图表里有 3 处,外层都会再拼一个 ebcoms-* 类:ebcoms-charts-view-loading(图表区首次加载,在 .ebcoms-charts-com 内)、ebcoms-charts-view-reloading(刷新遮罩,绝对定位铺满半透明白,在 .ebcoms-charts-main 下)、数据表内部(ui-table-grid 内自动包一层)。"
56
+ },
57
+ "toolbarBtn": {
58
+ "tag": "span",
59
+ "desc": "标题区每个操作按钮外层都是一个无 class 的 span(OperationBtns 渲染)。里面要么是图表自己的定制视图(ChartSwitch / YMDSwitch / ChartsToolbarBtn),要么是 @weapp/ui 的 ConfigurableButton(ui-btn)或配置的图标(ui-icon > svg.ui-icon-svg)。想单独选中某个按钮只能靠 :nth-child() 或按内容定位。"
60
+ },
61
+ "filterMount": {
62
+ "tag": "div",
63
+ "class": "ebcoms-cmf-view [showFilter] [empty] [mobile] [onlyCondition] 或 ebcoms-cms-search [design] [active]",
64
+ "desc": "筛选条件区的挂载点(CommonFilter / SearchContent)。标题区和图表区各可能出现一个,两者互斥:筛选按钮配置在标题区时只在标题区渲染。内部 DOM 不可控,只在这个挂载点上写样式。"
65
+ }
66
+ },
67
+ "header": {
68
+ "when": "config.titleEnabled = true。关闭时 #<comId> 上带 has-no-header,.header 节点不存在。",
69
+ "chain": "#<comId> > .header.ebcoms-charts-custom-header.PC|MOBILE",
70
+ "tree": {
71
+ "tag": "div",
72
+ "class": "ebcoms-charts-custom-header header PC|MOBILE",
73
+ "desc": "标题区根。同时带引擎的 .header(布局用的通用类)和组件的 ebcoms-charts-custom-header。末尾的 PC / MOBILE 是 page.client 直接拼上去的,用来控制标题最大宽度(PC 65% / MOBILE 45%),不是类名前缀。",
74
+ "children": [
75
+ {
76
+ "tag": "div",
77
+ "class": "ebcoms-charts-custom-header-title-content",
78
+ "desc": "标题文本区。可能先有一个标题图标组件(TitleIconCom,仅配了标题图标时),然后是一个 <div> 承载标题 HTML(dangerouslySetInnerHTML,所以标题里的富文本、动态字段也会渲染进这个 div,别以为只有纯文本)。"
79
+ },
80
+ {
81
+ "tag": "div",
82
+ "class": "[isDesign]",
83
+ "desc": "flex:1 的右侧区,按顺序放:操作按钮组、筛选条件、再一个操作按钮组(筛选按钮配置在最后一位时按钮会挪到筛选前面)、design 模式下的遮罩 ebcoms-charts-main-filtertotal-mask。",
84
+ "children": [
85
+ {
86
+ "tag": "div",
87
+ "class": "ebcoms-header-btns",
88
+ "desc": "顶部操作按钮组(OperationBtns 的 wrapClass)。左侧按钮和右侧按钮会渲染成两个同 class 的兄弟 div,所以 .ebcoms-header-btns 在标题区可能出现两次,别用 :first-child 猜。",
89
+ "children": [
90
+ {
91
+ "tag": "div",
92
+ "class": "ebcoms-chart-toolbar",
93
+ "when": "“图表工具栏”按钮开启(isSupportChartToolsConfig)",
94
+ "desc": "图表工具栏。固定 6 个 span 槽位,顺序固定;每个槽位内部再分 .default / .hover 两个 span。.default 和 .hover 是通用类名,写样式必须用 .ebcoms-chart-toolbar 限定,否则会串到别处。",
95
+ "children": [
96
+ {
97
+ "tag": "span",
98
+ "class": "btn-boxSelect",
99
+ "desc": "区域缩放。图标存在;里面有 .default 与 .hover 两个 span(默认显示 default,hover 换成 hover,宽度/颜色/底色可由按钮配置写进行内 style),图标是 ui-icon > svg.ui-icon-svg,选中态加 .selected。"
100
+ },
101
+ {
102
+ "tag": "span",
103
+ "class": "btn-clearBoxSelect",
104
+ "desc": "区域缩放还原。图标存在;里面有 .default 与 .hover 两个 span(默认显示 default,hover 换成 hover,宽度/颜色/底色可由按钮配置写进行内 style),图标是 ui-icon > svg.ui-icon-svg,选中态加 .selected。"
105
+ },
106
+ {
107
+ "tag": "span",
108
+ "class": "btn-changeLine",
109
+ "desc": "切换为折线图。图标存在;里面有 .default 与 .hover 两个 span(默认显示 default,hover 换成 hover,宽度/颜色/底色可由按钮配置写进行内 style),图标是 ui-icon > svg.ui-icon-svg,选中态加 .selected。"
110
+ },
111
+ {
112
+ "tag": "span",
113
+ "class": "btn-changeBar",
114
+ "desc": "切换为柱状图。图标存在;里面有 .default 与 .hover 两个 span(默认显示 default,hover 换成 hover,宽度/颜色/底色可由按钮配置写进行内 style),图标是 ui-icon > svg.ui-icon-svg,选中态加 .selected。"
115
+ },
116
+ {
117
+ "tag": "span",
118
+ "class": "btn-restore",
119
+ "desc": "还原。图标存在;里面有 .default 与 .hover 两个 span(默认显示 default,hover 换成 hover,宽度/颜色/底色可由按钮配置写进行内 style),图标是 ui-icon > svg.ui-icon-svg,选中态加 .selected。"
120
+ },
121
+ {
122
+ "tag": "span",
123
+ "class": "btn-saveAsImage",
124
+ "desc": "保存为图片。图标存在;里面有 .default 与 .hover 两个 span(默认显示 default,hover 换成 hover,宽度/颜色/底色可由按钮配置写进行内 style),图标是 ui-icon > svg.ui-icon-svg,选中态加 .selected。"
125
+ }
126
+ ]
127
+ }
128
+ ]
129
+ },
130
+ {
131
+ "ref": "shared.filterMount",
132
+ "when": "筛选按钮在标题区"
133
+ }
134
+ ]
135
+ }
136
+ ]
137
+ }
138
+ },
139
+ "chartArea": {
140
+ "desc": "引擎 .content 里的全部内容,由 AsyncBaseView + ChartView 渲染。",
141
+ "tree": {
142
+ "tag": "div",
143
+ "class": "ebcoms-charts-main",
144
+ "desc": ".content 下唯一的内容根。它是个 flex 容器:图表容器 .ebcoms-charts-com 和数据表 .ebcoms-data-list-display-content 是平级兄弟,所以 dataListDisplay.visible 时 .content 加 show-data-list,index.less 用它和 data-list-direction-* 决定图表与数据表是上下还是左右排列。",
145
+ "children": [
146
+ {
147
+ "tag": "div",
148
+ "class": "ebcoms-charts-main-switchChartType",
149
+ "when": "“图表类型”按钮开启 && customValue.keepDisplaying && 标题未开启(标题开启时它挪进标题区)",
150
+ "desc": "常驻在图表上方的图表类型切换条。",
151
+ "children": [
152
+ {
153
+ "tag": "div",
154
+ "class": "ebcoms-chart-head-chartSwitch",
155
+ "children": [
156
+ {
157
+ "tag": "span",
158
+ "class": "ebcoms-chart-head-chartSwitch-item [active]",
159
+ "desc": "每个可切换类型一项,active=当前类型。内含图标(普通类型 ui-icon;Bullet 内联 svg.icon;WordCloud / Facet / HeatMap 是 img)+ 类型名文本。"
160
+ }
161
+ ]
162
+ }
163
+ ]
164
+ },
165
+ {
166
+ "tag": "div",
167
+ "id": "id_<comId>",
168
+ "class": "ebcoms-charts-com [ebcoms-charts-preview] [hide]",
169
+ "desc": "图表容器,图表区所有东西都在这。id 是 id_<comId>(id_ + 组件 id)。ebcoms-charts-preview 仅 stylePre(预览)时;hide 仅 dataListDisplay.onlyTable(只显示数据表)时。容器自带 min-width: 30px(源码注释:宽度过小时气泡图 echart 内部会报错)。",
170
+ "children": [
171
+ {
172
+ "tag": "div",
173
+ "id": "filtertotal_<comId>",
174
+ "class": "ebcoms-charts-main-filtertotal [hasRelationStatistics]",
175
+ "desc": "图表上方一行:左边合计、右边筛选条件(两者独立出现)。hasRelationStatistics 仅关系图且有统计时(左侧让出 150px)。注意它和 .ebcoms-charts-main 是两个不同的 main。",
176
+ "children": [
177
+ {
178
+ "tag": "ul",
179
+ "class": "ebcoms-charts-total",
180
+ "when": "showTotal && 有数据 && 配置已初始化(本类型支持合计)",
181
+ "desc": "合计区,每个指标一个 li,li 上没有类名(要单独选只能 :nth-child())。这里会先撑高再触发图表 resize。"
182
+ },
183
+ {
184
+ "ref": "shared.filterMount",
185
+ "when": "配了筛选条件且按钮不在标题区"
186
+ }
187
+ ]
188
+ },
189
+ {
190
+ "tag": "div",
191
+ "id": "chartStatChildren_<comId>",
192
+ "when": "有维度钻取 或 维度开了“统计下级”",
193
+ "desc": "下钻 / 统计下级 / 关系图展开的挂载点(面包屑 + 弹出菜单)。不需要时这个 id 节点不存在。",
194
+ "children": [
195
+ {
196
+ "tag": "div",
197
+ "class": "ui-bread-crumb ebcoms-charts-bread-crumb {drilling|...}",
198
+ "desc": "面包屑。带 drilling 时样式不同(可点层级为蓝色)。关系图不渲染它。"
199
+ },
200
+ {
201
+ "tag": "span",
202
+ "class": "ebcoms-charts-statChildrenSpan",
203
+ "desc": "弹出菜单的定位锚点:1px 绝对定位的隐形 span,left/top 由点击坐标算出来。"
204
+ },
205
+ {
206
+ "tag": "div",
207
+ "class": "ebcoms-charts-statChildrenPop",
208
+ "desc": "菜单弹层(Popover)。内部列表项 class 为 ebcoms-charts-list-item;弹层箭头 .ui-popover-arrow 在这里被隐藏。"
209
+ }
210
+ ]
211
+ },
212
+ {
213
+ "tag": "div",
214
+ "class": "ebcoms-charts-axis-name {x|y|secondY}",
215
+ "when": "有数据。x → y → secondY 三个节点按顺序渲染在 .ebcoms-charts-com 下的同一层(不需要的节点直接不渲染,所以实际可能只有一个)。",
216
+ "desc": "数值轴是 X 轴,AxisLabelName 里 X / Y 名称是互换的:左侧 .y 显示配置里的「X 轴名称」,底部 .x 显示「Y 轴名称」。 三个节点同前缀、靠后缀区分——选左轴要用 .ebcoms-charts-axis-name.y;名字非空时才 display:flex,否则节点在但 display:none。",
217
+ "children": [
218
+ {
219
+ "tag": "div",
220
+ "class": "ebcoms-charts-axis-name x",
221
+ "desc": "底部横排的轴名称。绝对定位,bottom 会按图例位置 / dataZoom 高度自动算(写在行内 style 上)。只在该轴名称非空时 display:flex,否则 display:none(节点还在)。文案在 > span 里,颜色取 axisLabel.xColor(行内 style)。"
222
+ },
223
+ {
224
+ "tag": "div",
225
+ "class": "ebcoms-charts-axis-name y",
226
+ "desc": "左侧竖排的轴名称。width 12px、span 旋转 -90deg(transform-origin: 0 0),margin-top 按字数算(行内 style)。颜色取 axisLabel.yColor。"
227
+ }
228
+ ]
229
+ },
230
+ {
231
+ "tag": "div",
232
+ "class": "ui-echarts [ui-echarts-rtl]",
233
+ "when": "非空数据且没在 loading",
234
+ "desc": "图表本体。ECharts 用 canvas 渲染,图例 / 坐标轴 / 数据标签 / tooltip / 柱子颜色全在 canvas 里,CSS 选不到——这些只能改图表配置项或图表主题。容器本身可改尺寸、背景、边框、滤镜;RTL 页面会多 ui-echarts-rtl(会 transform: scaleX(-1))。"
235
+ },
236
+ {
237
+ "tag": "div",
238
+ "class": "ebcoms-label-data-list-content",
239
+ "when": "永不出现",
240
+ "desc": "本类型不在 isDataOnLeftOrRight(Pie / Circular / Nightingale)列表里,图表左右侧不会出现数值展示清单。"
241
+ },
242
+ {
243
+ "ref": "shared.empty"
244
+ },
245
+ {
246
+ "tag": "div",
247
+ "class": "ebcoms-charts-placeholder",
248
+ "when": "chartInstance 尚未就绪",
249
+ "desc": "占位块,撑住高度防止塌陷。"
250
+ },
251
+ {
252
+ "tag": "div",
253
+ "class": "ui-spin ebcoms-charts-view-loading",
254
+ "when": "配置还未初始化完成,或正在刷新数据(此时上面那批节点都不渲染,互斥)",
255
+ "desc": "图表区加载态。"
256
+ }
257
+ ]
258
+ },
259
+ {
260
+ "tag": "div",
261
+ "class": "ui-pagination ebcoms-charts-pagination",
262
+ "when": "永不出现(本类型不在 hasPagination 列表,没有分页配置项)",
263
+ "desc": "图表级分页(不是数据表里的分页)。内部 ui-pagination-pager / ui-pagination-pager-item / ui-pagination-pager-active / ui-pagination-pager-page-input。"
264
+ },
265
+ {
266
+ "ref": "dataList.tree"
267
+ },
268
+ {
269
+ "tag": "div",
270
+ "class": "ui-spin ebcoms-charts-view-reloading",
271
+ "when": "reloading(切换图表类型 / 切换日期分组 / 强刷)",
272
+ "desc": "整块刷新遮罩:绝对定位居中铺满 + rgba(255,255,255,.7) 底。要改遮罩底色改这里。"
273
+ }
274
+ ]
275
+ }
276
+ },
277
+ "dataList": {
278
+ "when": "dataListDisplay.visible = true 且非空数据",
279
+ "chain": ".content > .ebcoms-charts-main > .ebcoms-data-list-display-content.{horizantal|vertical}[.show-total][.isMobile] > .ui-table-grid.ebcoms-datalist-table",
280
+ "tree": {
281
+ "tag": "div",
282
+ "class": "ebcoms-data-list-display-content {horizantal|vertical} [show-total] [isMobile]",
283
+ "desc": "数据表区域。和图表的 .ebcoms-charts-com 是 .ebcoms-charts-main 下的平级兄弟(不在图表容器里),所以它不会跟着图表一起被 hide。注意类名是 horizantal(源码里的拼写,少一个 o),别写成 horizontal。位置由 .content 上的 data-list-direction-{top|bottom|left|right} 控制;horizantal 表示横向扩展(第一列固定)。",
284
+ "children": [
285
+ {
286
+ "tag": "div",
287
+ "class": "ui-table-grid ebcoms-datalist-table ui-table-grid-bordered [ui-table-grid-no-pagination] [ui-table-grid-scroll-position-*] [ui-table-grid-table__fixed]",
288
+ "desc": "数据表(@weapp/ui Table)。下面这些 ui-table-grid-* 是引擎已有样式钩子,可以直接复用;要改文字色 / 表头底色 / 内容底色 / 边框色,优先用组件外观样式里的「数据表」配置(会自动生成这些选择器,见 notes)。",
289
+ "children": [
290
+ {
291
+ "tag": "div",
292
+ "class": "ui-spin > ui-spin-nested-loading > ui-spin-container",
293
+ "desc": "表格自带 loading 包裹层,表格内容都在 ui-spin-container 里。"
294
+ },
295
+ {
296
+ "tag": "div",
297
+ "class": "ui-table-grid-header-warp > .ui-table-grid-header",
298
+ "desc": "表头。里面 table > thead.ui-table-grid-thead > tr > th.ui-table-grid-th。固定列时还会有一份 ui-table-grid-sticky-header-warp(滚动吸顶)。"
299
+ },
300
+ {
301
+ "tag": "div",
302
+ "class": "ui-table-grid-body-outer > .ui-table-grid-body",
303
+ "desc": "表体。table > tbody.ui-table-grid-tbody > tr > td.ui-table-grid-td。合计行在 tfoot.ui-table-grid-tfoot(showTotal && 纵向扩展时)。细分隔行 tr 带 ui-table-grid-tr__gray。"
304
+ },
305
+ {
306
+ "tag": "div",
307
+ "class": "ui-table-grid-scroll",
308
+ "desc": "横向滚动容器;只在有固定列或按 table 滚动时出现。"
309
+ },
310
+ {
311
+ "tag": "div",
312
+ "class": "ui-table-grid-fixed-left / ui-table-grid-fixed-right",
313
+ "desc": "左右固定列(横向扩展时第一列 fixed: left)。"
314
+ },
315
+ {
316
+ "tag": "div",
317
+ "class": "ui-table-grid-empty",
318
+ "desc": "无数据占位。"
319
+ }
320
+ ]
321
+ }
322
+ ]
323
+ }
324
+ },
325
+ "notes": [
326
+ "样式作用域:图表样式由「组件外观样式」生成,最终选择器都会被包在 #<comId>.ebcom 下面(自定义源码再套一层 #<comId> .comCodeSource)。自己写选择器也建议 #<comId> .xxx,避免同页多图表互相污染。",
327
+ "数据表配色有官方生成器:组件外观样式→数据表里的「字体/表头底色/内容底色/边框色」,会直接生成 .ebcoms-data-list-display-content 下的 .ui-table-grid-td/.ui-table-grid-th/.ui-table-grid-thead/.ui-table-grid-header-warp/.ui-table-grid-body-outer/.ui-table-grid-tbody/.ui-table-grid-tfoot 规则。要改数据表颜色优先用这个,不要重复写 CSS。",
328
+ "canvas 边界:图例、坐标轴刻度、数据标签、tooltip、柱/扇区颜色全部是 ECharts canvas,CSS 选不到。这类需求只能改图表配置项或图表主题,不要试图用选择器命中。",
329
+ "同名陷阱:引擎的 .header / .content / .footer(无前缀)≠ 组件的 ebcoms-*-content;.ebcoms-charts-main 和 .ebcoms-charts-main-filtertotal 是两个不同层的节点,只差一个后缀;.default / .hover 是工具栏按钮的通用类名,必须用 .ebcoms-chart-toolbar 限定;displayFlex 是无前缀裸类名(全局限定)。",
330
+ "引擎自动加的修饰类:#<comId> 上恒有 has-no-header;ebcom-chart 来自图表 defaultOpts.render.containerClass;padding=false 时加 content-no-padding;配了点击事件时加 event-action-click。",
331
+ "移动端:外壳多 ebcom-m 类;网格布局 + 移动端时 .content 多 ebcoms-charts-grid-mobile(内部把加载块高度固定 300px)。",
332
+ "反查源码:引擎 weapp-ebdcoms/src/components/core/{view,design}/{createView,Base,createDesign}.tsx、core/utils/comp.ts、core/view/operation-btns/OperationBtns.tsx;组件 weapp-ebdchartcoms/src/components/charts/core/{BaseView,ChartView,ChartHeader,AxisLabelName,ChartTotal,ChartStatChildren,getChartsStyles}.ts(x)、core/DataListDisplay/*、core/LabelDataListDisplay.tsx、core/index.less;UI 库 weapp-ui/src/components/{echarts,table,spin,pagination,empty}。",
333
+ "X/Y 轴名称在 AxisLabelName 里是互换的:左侧竖排的 .ebcoms-charts-axis-name.y 显示的是配置里的「X 轴名称」,底部横排的 .x 显示「Y 轴名称」。按语义找节点的用户最容易在这踩坑。",
334
+ "不支持副轴,所以不会有 .ebcoms-charts-axis-name.secondY。"
335
+ ]
336
+ }