@dckj-npm/dc-material 0.1.34 → 0.1.35

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 (300) hide show
  1. package/README.md +17 -17
  2. package/build/index.js +8 -8
  3. package/dist/BizComps.css +1 -1
  4. package/dist/BizComps.js +5 -5
  5. package/dist/BizComps.js.map +1 -1
  6. package/es/components/bottom-navigation/bottom-navigation.d.ts +15 -15
  7. package/es/components/bottom-navigation/index.d.ts +3 -3
  8. package/es/components/bottom-navigation/index.scss +24 -24
  9. package/es/components/button/button.d.ts +14 -14
  10. package/es/components/button/index.d.ts +6 -6
  11. package/es/components/button/index.js +2 -2
  12. package/es/components/button/index.scss +16 -16
  13. package/es/components/carousel/carousel.d.ts +14 -14
  14. package/es/components/carousel/carousel.scss +32 -32
  15. package/es/components/colorful-button/colorful-button.d.ts +12 -12
  16. package/es/components/colorful-button/index.d.ts +3 -3
  17. package/es/components/colorful-button/index.scss +5 -5
  18. package/es/components/colorful-input/colorful-input.d.ts +8 -8
  19. package/es/components/colorful-input/index.d.ts +3 -3
  20. package/es/components/colorful-input/index.scss +5 -5
  21. package/es/components/goods-card-list/goods-card-list.d.ts +5 -5
  22. package/es/components/goods-card-list/goods-card-list.scss +112 -112
  23. package/es/components/goods-card-list/index.d.ts +3 -3
  24. package/es/components/goods-card-list/types.d.ts +45 -45
  25. package/es/components/grid-nav/grid-nav.d.ts +13 -13
  26. package/es/components/grid-nav/index.d.ts +3 -3
  27. package/es/components/grid-nav/index.scss +37 -37
  28. package/es/components/integral-task/index.d.ts +6 -6
  29. package/es/components/integral-task/index.js +2 -2
  30. package/es/components/integral-task/index.scss +35 -35
  31. package/es/components/integral-task/integral-task.d.ts +40 -40
  32. package/es/components/menu-list/index.d.ts +6 -6
  33. package/es/components/menu-list/index.js +2 -2
  34. package/es/components/menu-list/index.scss +16 -16
  35. package/es/components/menu-list/menu-list-item.d.ts +5 -5
  36. package/es/components/menu-list/menu-list-item.scss +49 -49
  37. package/es/components/menu-list/menu-list.d.ts +5 -5
  38. package/es/components/menu-list/types.d.ts +23 -23
  39. package/es/components/message-list/index.d.ts +6 -6
  40. package/es/components/message-list/index.js +2 -2
  41. package/es/components/message-list/index.scss +22 -22
  42. package/es/components/message-list/message-list-item.d.ts +29 -29
  43. package/es/components/message-list/message-list-item.js +2 -2
  44. package/es/components/message-list/message-list-item.scss +50 -49
  45. package/es/components/message-list/message-list.d.ts +32 -32
  46. package/es/components/notice-bar/index.d.ts +3 -3
  47. package/es/components/notice-bar/index.scss +29 -29
  48. package/es/components/notice-bar/notice-bar-item.d.ts +18 -18
  49. package/es/components/notice-bar/notice-bar-item.js +2 -2
  50. package/es/components/notice-bar/notice-bar-item.scss +26 -26
  51. package/es/components/notice-bar/notice-bar.d.ts +37 -37
  52. package/es/components/notice-bar/notice-bar.js +2 -2
  53. package/es/components/position/entity.d.ts +5 -5
  54. package/es/components/position/index.d.ts +3 -3
  55. package/es/components/position/index.scss +27 -27
  56. package/es/components/position/position-left.d.ts +9 -9
  57. package/es/components/position/position-list.d.ts +12 -12
  58. package/es/components/position/position.d.ts +8 -8
  59. package/es/components/radio-group/index.d.ts +8 -8
  60. package/es/components/radio-group/index.js +2 -2
  61. package/es/components/radio-group/index.scss +40 -40
  62. package/es/components/radio-group/radio-group-item.d.ts +48 -48
  63. package/es/components/radio-group/radio-group.d.ts +52 -52
  64. package/es/components/search-bar/index.d.ts +3 -3
  65. package/es/components/search-bar/index.scss +13 -13
  66. package/es/components/search-bar/search-bar.d.ts +7 -7
  67. package/es/components/swiper/index.d.ts +3 -3
  68. package/es/components/swiper/index.scss +12 -12
  69. package/es/components/swiper/swiper.d.ts +47 -47
  70. package/es/components/tab/index.d.ts +6 -6
  71. package/es/components/tab/index.js +2 -2
  72. package/es/components/tab/index.scss +23 -23
  73. package/es/components/tab/tab.d.ts +23 -23
  74. package/es/components/tab-container/index.d.ts +3 -3
  75. package/es/components/tab-container/index.scss +47 -47
  76. package/es/components/tab-container/tab-container.d.ts +10 -10
  77. package/es/components/tab-container-item/index.d.ts +3 -3
  78. package/es/components/tab-container-item/tab-container-item.d.ts +9 -9
  79. package/es/components/tag/index.d.ts +6 -6
  80. package/es/components/tag/index.js +2 -2
  81. package/es/components/tag/index.scss +24 -24
  82. package/es/components/tag/tag.d.ts +14 -14
  83. package/es/components/teletext-list/index.d.ts +6 -6
  84. package/es/components/teletext-list/index.js +2 -2
  85. package/es/components/teletext-list/index.scss +19 -19
  86. package/es/components/teletext-list/teletext-list-item.d.ts +42 -42
  87. package/es/components/teletext-list/teletext-list-item.js +2 -2
  88. package/es/components/teletext-list/teletext-list-item.scss +55 -55
  89. package/es/components/teletext-list/teletext-list.d.ts +61 -61
  90. package/es/components/teletext-list/teletext-list.js +2 -2
  91. package/es/components/title/index.d.ts +8 -8
  92. package/es/components/title/index.js +2 -2
  93. package/es/components/title/title-1.d.ts +10 -10
  94. package/es/components/title/title-1.scss +25 -25
  95. package/es/components/title/title-2.d.ts +18 -18
  96. package/es/components/title/title-2.scss +22 -22
  97. package/es/index.d.ts +40 -40
  98. package/es/index.scss +5 -5
  99. package/es/utils/children-node-handle.d.ts +9 -9
  100. package/es/utils/children-node-handle.js +7 -7
  101. package/es/utils/component-wrapper.d.ts +9 -9
  102. package/es/utils/debounce.d.ts +1 -1
  103. package/es/variables.d.ts +2 -2
  104. package/es/variables.scss +3 -3
  105. package/lib/components/bottom-navigation/bottom-navigation.d.ts +15 -15
  106. package/lib/components/bottom-navigation/index.d.ts +3 -3
  107. package/lib/components/bottom-navigation/index.scss +24 -24
  108. package/lib/components/button/button.d.ts +14 -14
  109. package/lib/components/button/index.d.ts +6 -6
  110. package/lib/components/button/index.js +2 -2
  111. package/lib/components/button/index.scss +16 -16
  112. package/lib/components/carousel/carousel.d.ts +14 -14
  113. package/lib/components/carousel/carousel.scss +32 -32
  114. package/lib/components/colorful-button/colorful-button.d.ts +12 -12
  115. package/lib/components/colorful-button/index.d.ts +3 -3
  116. package/lib/components/colorful-button/index.scss +5 -5
  117. package/lib/components/colorful-input/colorful-input.d.ts +8 -8
  118. package/lib/components/colorful-input/index.d.ts +3 -3
  119. package/lib/components/colorful-input/index.scss +5 -5
  120. package/lib/components/goods-card-list/goods-card-list.d.ts +5 -5
  121. package/lib/components/goods-card-list/goods-card-list.scss +112 -112
  122. package/lib/components/goods-card-list/index.d.ts +3 -3
  123. package/lib/components/goods-card-list/types.d.ts +45 -45
  124. package/lib/components/grid-nav/grid-nav.d.ts +13 -13
  125. package/lib/components/grid-nav/index.d.ts +3 -3
  126. package/lib/components/grid-nav/index.scss +37 -37
  127. package/lib/components/integral-task/index.d.ts +6 -6
  128. package/lib/components/integral-task/index.js +2 -2
  129. package/lib/components/integral-task/index.scss +35 -35
  130. package/lib/components/integral-task/integral-task.d.ts +40 -40
  131. package/lib/components/menu-list/index.d.ts +6 -6
  132. package/lib/components/menu-list/index.js +2 -2
  133. package/lib/components/menu-list/index.scss +16 -16
  134. package/lib/components/menu-list/menu-list-item.d.ts +5 -5
  135. package/lib/components/menu-list/menu-list-item.scss +49 -49
  136. package/lib/components/menu-list/menu-list.d.ts +5 -5
  137. package/lib/components/menu-list/types.d.ts +23 -23
  138. package/lib/components/message-list/index.d.ts +6 -6
  139. package/lib/components/message-list/index.js +2 -2
  140. package/lib/components/message-list/index.scss +22 -22
  141. package/lib/components/message-list/message-list-item.d.ts +29 -29
  142. package/lib/components/message-list/message-list-item.js +2 -2
  143. package/lib/components/message-list/message-list-item.scss +50 -49
  144. package/lib/components/message-list/message-list.d.ts +32 -32
  145. package/lib/components/notice-bar/index.d.ts +3 -3
  146. package/lib/components/notice-bar/index.scss +29 -29
  147. package/lib/components/notice-bar/notice-bar-item.d.ts +18 -18
  148. package/lib/components/notice-bar/notice-bar-item.js +2 -2
  149. package/lib/components/notice-bar/notice-bar-item.scss +26 -26
  150. package/lib/components/notice-bar/notice-bar.d.ts +37 -37
  151. package/lib/components/notice-bar/notice-bar.js +2 -2
  152. package/lib/components/position/entity.d.ts +5 -5
  153. package/lib/components/position/index.d.ts +3 -3
  154. package/lib/components/position/index.scss +27 -27
  155. package/lib/components/position/position-left.d.ts +9 -9
  156. package/lib/components/position/position-list.d.ts +12 -12
  157. package/lib/components/position/position.d.ts +8 -8
  158. package/lib/components/radio-group/index.d.ts +8 -8
  159. package/lib/components/radio-group/index.scss +40 -40
  160. package/lib/components/radio-group/radio-group-item.d.ts +48 -48
  161. package/lib/components/radio-group/radio-group.d.ts +52 -52
  162. package/lib/components/search-bar/index.d.ts +3 -3
  163. package/lib/components/search-bar/index.scss +13 -13
  164. package/lib/components/search-bar/search-bar.d.ts +7 -7
  165. package/lib/components/swiper/index.d.ts +3 -3
  166. package/lib/components/swiper/index.scss +12 -12
  167. package/lib/components/swiper/swiper.d.ts +47 -47
  168. package/lib/components/tab/index.d.ts +6 -6
  169. package/lib/components/tab/index.js +2 -2
  170. package/lib/components/tab/index.scss +23 -23
  171. package/lib/components/tab/tab.d.ts +23 -23
  172. package/lib/components/tab-container/index.d.ts +3 -3
  173. package/lib/components/tab-container/index.scss +47 -47
  174. package/lib/components/tab-container/tab-container.d.ts +10 -10
  175. package/lib/components/tab-container-item/index.d.ts +3 -3
  176. package/lib/components/tab-container-item/tab-container-item.d.ts +9 -9
  177. package/lib/components/tag/index.d.ts +6 -6
  178. package/lib/components/tag/index.js +2 -2
  179. package/lib/components/tag/index.scss +24 -24
  180. package/lib/components/tag/tag.d.ts +14 -14
  181. package/lib/components/teletext-list/index.d.ts +6 -6
  182. package/lib/components/teletext-list/index.scss +19 -19
  183. package/lib/components/teletext-list/teletext-list-item.d.ts +42 -42
  184. package/lib/components/teletext-list/teletext-list-item.js +2 -2
  185. package/lib/components/teletext-list/teletext-list-item.scss +55 -55
  186. package/lib/components/teletext-list/teletext-list.d.ts +61 -61
  187. package/lib/components/teletext-list/teletext-list.js +2 -2
  188. package/lib/components/title/index.d.ts +8 -8
  189. package/lib/components/title/title-1.d.ts +10 -10
  190. package/lib/components/title/title-1.scss +25 -25
  191. package/lib/components/title/title-2.d.ts +18 -18
  192. package/lib/components/title/title-2.scss +22 -22
  193. package/lib/index.d.ts +40 -40
  194. package/lib/index.scss +5 -5
  195. package/lib/utils/children-node-handle.d.ts +9 -9
  196. package/lib/utils/children-node-handle.js +7 -7
  197. package/lib/utils/component-wrapper.d.ts +9 -9
  198. package/lib/utils/debounce.d.ts +1 -1
  199. package/lib/variables.d.ts +2 -2
  200. package/lib/variables.scss +3 -3
  201. package/lowcode/button2/meta.ts +75 -75
  202. package/lowcode/custom-radio-group/meta.ts +310 -310
  203. package/lowcode/custom-radio-group-item/meta.ts +229 -229
  204. package/lowcode/d-c-slider/meta.design.ts +173 -173
  205. package/lowcode/d-c-slider/meta.ts +342 -342
  206. package/lowcode/d-c-slider/snippets.ts +68 -68
  207. package/lowcode/goods-card-list/meta.ts +268 -268
  208. package/lowcode/grid-nav/meta.ts +212 -212
  209. package/lowcode/integral-task/meta.ts +211 -211
  210. package/lowcode/menu-list/meta.ts +147 -147
  211. package/lowcode/message-list/meta.ts +202 -200
  212. package/lowcode/navigation/meta.ts +173 -173
  213. package/lowcode/notice-bar/meta.ts +229 -223
  214. package/lowcode/position/meta.ts +161 -161
  215. package/lowcode/search-bar/meta.ts +54 -54
  216. package/lowcode/swiper/meta.ts +237 -237
  217. package/lowcode/tab-container/meta.ts +69 -69
  218. package/lowcode/tab-container/props.ts +194 -194
  219. package/lowcode/tab-container-item/meta.ts +195 -195
  220. package/lowcode/tab-message/meta.ts +101 -101
  221. package/lowcode/tag-c/meta.ts +75 -75
  222. package/lowcode/teletext-list/meta.ts +329 -329
  223. package/lowcode/title1/meta.ts +59 -59
  224. package/lowcode/title2/meta.ts +93 -93
  225. package/lowcode_es/button2/meta.d.ts +22 -22
  226. package/lowcode_es/d-c-slider/meta.d.ts +148 -148
  227. package/lowcode_es/d-c-slider/meta.design.d.ts +100 -100
  228. package/lowcode_es/d-c-slider/snippets.d.ts +36 -36
  229. package/lowcode_es/grid-nav/meta.d.ts +22 -22
  230. package/lowcode_es/integral-task/meta.d.ts +22 -22
  231. package/lowcode_es/menu-list/meta.d.ts +22 -22
  232. package/lowcode_es/message-list/meta.d.ts +22 -22
  233. package/lowcode_es/message-list/meta.js +7 -0
  234. package/lowcode_es/meta.js +19 -22
  235. package/lowcode_es/navigation/meta.d.ts +22 -22
  236. package/lowcode_es/notice-bar/meta.d.ts +22 -22
  237. package/lowcode_es/position/meta.d.ts +22 -22
  238. package/lowcode_es/search-bar/meta.d.ts +22 -22
  239. package/lowcode_es/swiper/meta.d.ts +22 -22
  240. package/lowcode_es/tab-container/meta.d.ts +22 -22
  241. package/lowcode_es/tab-container/props.d.ts +90 -90
  242. package/lowcode_es/tab-container-item/meta.d.ts +22 -22
  243. package/lowcode_es/tab-message/meta.d.ts +22 -22
  244. package/lowcode_es/tag-c/meta.d.ts +22 -22
  245. package/lowcode_es/teletext-list/meta.d.ts +22 -22
  246. package/lowcode_es/title1/meta.d.ts +22 -22
  247. package/lowcode_es/title2/meta.d.ts +22 -22
  248. package/lowcode_es/view.js +3 -3
  249. package/lowcode_lib/button2/meta.d.ts +22 -22
  250. package/lowcode_lib/d-c-slider/meta.d.ts +148 -148
  251. package/lowcode_lib/d-c-slider/meta.design.d.ts +100 -100
  252. package/lowcode_lib/d-c-slider/snippets.d.ts +36 -36
  253. package/lowcode_lib/grid-nav/meta.d.ts +22 -22
  254. package/lowcode_lib/integral-task/meta.d.ts +22 -22
  255. package/lowcode_lib/menu-list/meta.d.ts +22 -22
  256. package/lowcode_lib/message-list/meta.d.ts +22 -22
  257. package/lowcode_lib/message-list/meta.js +7 -0
  258. package/lowcode_lib/meta.js +19 -22
  259. package/lowcode_lib/navigation/meta.d.ts +22 -22
  260. package/lowcode_lib/notice-bar/meta.d.ts +22 -22
  261. package/lowcode_lib/position/meta.d.ts +22 -22
  262. package/lowcode_lib/search-bar/meta.d.ts +22 -22
  263. package/lowcode_lib/swiper/meta.d.ts +22 -22
  264. package/lowcode_lib/tab-container/meta.d.ts +22 -22
  265. package/lowcode_lib/tab-container/props.d.ts +90 -90
  266. package/lowcode_lib/tab-container-item/meta.d.ts +22 -22
  267. package/lowcode_lib/tab-message/meta.d.ts +22 -22
  268. package/lowcode_lib/tag-c/meta.d.ts +22 -22
  269. package/lowcode_lib/teletext-list/meta.d.ts +22 -22
  270. package/lowcode_lib/title1/meta.d.ts +22 -22
  271. package/lowcode_lib/title2/meta.d.ts +22 -22
  272. package/lowcode_lib/view.js +2 -2
  273. package/package.json +3 -3
  274. package/build/lowcode/assets-daily.json +0 -71
  275. package/build/lowcode/assets-dev.json +0 -71
  276. package/build/lowcode/assets-prod.json +0 -71
  277. package/build/lowcode/designer.html +0 -302
  278. package/build/lowcode/index.html +0 -304
  279. package/build/lowcode/index.js +0 -1
  280. package/build/lowcode/meta.design.js +0 -1
  281. package/build/lowcode/meta.js +0 -1
  282. package/build/lowcode/preview.css +0 -1
  283. package/build/lowcode/preview.html +0 -33
  284. package/build/lowcode/preview.js +0 -308
  285. package/build/lowcode/render/default/view.css +0 -1
  286. package/build/lowcode/render/default/view.js +0 -295
  287. package/build/lowcode/view.css +0 -1
  288. package/build/lowcode/view.js +0 -295
  289. package/lowcode_es/custom-radio-group/meta.d.ts +0 -22
  290. package/lowcode_es/custom-radio-group/meta.js +0 -294
  291. package/lowcode_es/custom-radio-group-item/meta.d.ts +0 -23
  292. package/lowcode_es/custom-radio-group-item/meta.js +0 -205
  293. package/lowcode_es/goods-card-list/meta.d.ts +0 -22
  294. package/lowcode_es/goods-card-list/meta.js +0 -250
  295. package/lowcode_lib/custom-radio-group/meta.d.ts +0 -22
  296. package/lowcode_lib/custom-radio-group/meta.js +0 -299
  297. package/lowcode_lib/custom-radio-group-item/meta.d.ts +0 -23
  298. package/lowcode_lib/custom-radio-group-item/meta.js +0 -210
  299. package/lowcode_lib/goods-card-list/meta.d.ts +0 -22
  300. package/lowcode_lib/goods-card-list/meta.js +0 -255
@@ -1,194 +1,194 @@
1
- export default [
2
- {
3
- name: 'items',
4
- title: '标签项',
5
- setter: {
6
- componentName: 'ArraySetter',
7
- props: {
8
- itemSetter: {
9
- componentName: 'ObjectSetter',
10
- props: {
11
- config: {
12
- items: [
13
- {
14
- name: 'title',
15
- title: '名称',
16
- defaultValue: '标签项',
17
- important: true,
18
- setter: 'StringSetter',
19
- },
20
- {
21
- name: 'primaryKey',
22
- title: '项目编号',
23
- condition: () => false,
24
- setter: 'StringSetter',
25
- },
26
- {
27
- name: 'closeable',
28
- title: '可关闭',
29
- initialValue: false,
30
- setter: 'BoolSetter',
31
- },
32
- {
33
- name: 'disabled',
34
- title: '是否禁用',
35
- initialValue: false,
36
- setter: 'BoolSetter',
37
- },
38
- ],
39
- },
40
- },
41
- initialValue: () => {
42
- return {
43
- primaryKey: String(Math.floor(Math.random() * 10000)),
44
- title: '标签项',
45
- closeable: false,
46
- disabled: false,
47
- };
48
- },
49
- },
50
- },
51
- },
52
- extraProps: {
53
- getValue(target) {
54
- const map = target.node.children.map((child) => {
55
- const primaryKey = child.getPropValue('primaryKey')
56
- ? String(child.getPropValue('primaryKey'))
57
- : child.id;
58
- return {
59
- primaryKey,
60
- title: child.getPropValue('title') || '标签项',
61
- closeable: child.getPropValue('closeable'),
62
- disabled: child.getPropValue('disabled'),
63
- };
64
- });
65
- return map;
66
- },
67
- setValue(target, value) {
68
- const { node } = target;
69
- const map = {};
70
- if (!Array.isArray(value)) {
71
- value = [];
72
- }
73
- value.forEach((item) => {
74
- const tabitem = Object.assign({}, item);
75
- map[item.primaryKey] = tabitem;
76
- });
77
-
78
- node.children.mergeChildren(
79
- (child) => {
80
- const primaryKey = String(child.getPropValue('primaryKey'));
81
- if (Object.hasOwnProperty.call(map, primaryKey)) {
82
- child.setPropValue('title', map[primaryKey].title);
83
- child.setPropValue('closeable', map[primaryKey].closeable);
84
- child.setPropValue('disabled', map[primaryKey].disabled);
85
- delete map[primaryKey];
86
- return false;
87
- }
88
- return true;
89
- },
90
- () => {
91
- const items: any = [];
92
- for (const primaryKey in map) {
93
- if (Object.hasOwnProperty.call(map, primaryKey)) {
94
- items.push({
95
- componentName: 'TabContainerItem',
96
- props: map[primaryKey],
97
- });
98
- }
99
- }
100
- return items;
101
- },
102
- (child1, child2) => {
103
- const a = value.findIndex(
104
- (item) => String(item.primaryKey) === String(child1.getPropValue('primaryKey')),
105
- );
106
- const b = value.findIndex(
107
- (item) => String(item.primaryKey) === String(child2.getPropValue('primaryKey')),
108
- );
109
- return a - b;
110
- },
111
- );
112
- },
113
- },
114
- },
115
- {
116
- name: 'shape',
117
- title: '形态',
118
- defaultValue: 'pure',
119
- setter: {
120
- componentName: 'RadioGroupSetter',
121
- props: {
122
- options: [
123
- { title: '普通型', value: 'pure' },
124
- { title: '包裹型', value: 'wrapped' },
125
- { title: '文本型', value: 'text' },
126
- { title: '胶囊型', value: 'capsule' },
127
- ],
128
- },
129
- },
130
- },
131
- {
132
- name: 'size',
133
- title: '尺寸',
134
- defaultValue: 'medium',
135
- setter: {
136
- componentName: 'RadioGroupSetter',
137
- props: {
138
- options: [
139
- { title: '小', value: 'small' },
140
- { title: '中', value: 'medium' },
141
- ],
142
- },
143
- },
144
- },
145
- {
146
- name: 'excessMode',
147
- title: '选项卡过多时的滑动模式',
148
- defaultValue: 'slide',
149
- setter: {
150
- componentName: 'RadioGroupSetter',
151
- props: {
152
- options: [
153
- { title: '滑动', value: 'slide' },
154
- { title: '下拉', value: 'dropdown' },
155
- ],
156
- },
157
- },
158
- },
159
- {
160
- name: 'tabPosition',
161
- title: {
162
- label: '导航选项卡的位置',
163
- tip: '只适用于包裹型(wrapped)选项卡',
164
- },
165
- condition: (target) => {
166
- const shape = target.getProps().getPropValue('shape');
167
- return shape === 'wrapped';
168
- },
169
- defaultValue: 'top',
170
- setter: {
171
- componentName: 'RadioGroupSetter',
172
- props: {
173
- options: [
174
- {
175
- title: '顶部',
176
- value: 'top',
177
- },
178
- {
179
- title: '底部',
180
- value: 'bottom',
181
- },
182
- {
183
- title: '左边',
184
- value: 'left',
185
- },
186
- {
187
- title: '右边',
188
- value: 'right',
189
- },
190
- ],
191
- },
192
- },
193
- },
194
- ];
1
+ export default [
2
+ {
3
+ name: 'items',
4
+ title: '标签项',
5
+ setter: {
6
+ componentName: 'ArraySetter',
7
+ props: {
8
+ itemSetter: {
9
+ componentName: 'ObjectSetter',
10
+ props: {
11
+ config: {
12
+ items: [
13
+ {
14
+ name: 'title',
15
+ title: '名称',
16
+ defaultValue: '标签项',
17
+ important: true,
18
+ setter: 'StringSetter',
19
+ },
20
+ {
21
+ name: 'primaryKey',
22
+ title: '项目编号',
23
+ condition: () => false,
24
+ setter: 'StringSetter',
25
+ },
26
+ {
27
+ name: 'closeable',
28
+ title: '可关闭',
29
+ initialValue: false,
30
+ setter: 'BoolSetter',
31
+ },
32
+ {
33
+ name: 'disabled',
34
+ title: '是否禁用',
35
+ initialValue: false,
36
+ setter: 'BoolSetter',
37
+ },
38
+ ],
39
+ },
40
+ },
41
+ initialValue: () => {
42
+ return {
43
+ primaryKey: String(Math.floor(Math.random() * 10000)),
44
+ title: '标签项',
45
+ closeable: false,
46
+ disabled: false,
47
+ };
48
+ },
49
+ },
50
+ },
51
+ },
52
+ extraProps: {
53
+ getValue(target) {
54
+ const map = target.node.children.map((child) => {
55
+ const primaryKey = child.getPropValue('primaryKey')
56
+ ? String(child.getPropValue('primaryKey'))
57
+ : child.id;
58
+ return {
59
+ primaryKey,
60
+ title: child.getPropValue('title') || '标签项',
61
+ closeable: child.getPropValue('closeable'),
62
+ disabled: child.getPropValue('disabled'),
63
+ };
64
+ });
65
+ return map;
66
+ },
67
+ setValue(target, value) {
68
+ const { node } = target;
69
+ const map = {};
70
+ if (!Array.isArray(value)) {
71
+ value = [];
72
+ }
73
+ value.forEach((item) => {
74
+ const tabitem = Object.assign({}, item);
75
+ map[item.primaryKey] = tabitem;
76
+ });
77
+
78
+ node.children.mergeChildren(
79
+ (child) => {
80
+ const primaryKey = String(child.getPropValue('primaryKey'));
81
+ if (Object.hasOwnProperty.call(map, primaryKey)) {
82
+ child.setPropValue('title', map[primaryKey].title);
83
+ child.setPropValue('closeable', map[primaryKey].closeable);
84
+ child.setPropValue('disabled', map[primaryKey].disabled);
85
+ delete map[primaryKey];
86
+ return false;
87
+ }
88
+ return true;
89
+ },
90
+ () => {
91
+ const items: any = [];
92
+ for (const primaryKey in map) {
93
+ if (Object.hasOwnProperty.call(map, primaryKey)) {
94
+ items.push({
95
+ componentName: 'TabContainerItem',
96
+ props: map[primaryKey],
97
+ });
98
+ }
99
+ }
100
+ return items;
101
+ },
102
+ (child1, child2) => {
103
+ const a = value.findIndex(
104
+ (item) => String(item.primaryKey) === String(child1.getPropValue('primaryKey')),
105
+ );
106
+ const b = value.findIndex(
107
+ (item) => String(item.primaryKey) === String(child2.getPropValue('primaryKey')),
108
+ );
109
+ return a - b;
110
+ },
111
+ );
112
+ },
113
+ },
114
+ },
115
+ {
116
+ name: 'shape',
117
+ title: '形态',
118
+ defaultValue: 'pure',
119
+ setter: {
120
+ componentName: 'RadioGroupSetter',
121
+ props: {
122
+ options: [
123
+ { title: '普通型', value: 'pure' },
124
+ { title: '包裹型', value: 'wrapped' },
125
+ { title: '文本型', value: 'text' },
126
+ { title: '胶囊型', value: 'capsule' },
127
+ ],
128
+ },
129
+ },
130
+ },
131
+ {
132
+ name: 'size',
133
+ title: '尺寸',
134
+ defaultValue: 'medium',
135
+ setter: {
136
+ componentName: 'RadioGroupSetter',
137
+ props: {
138
+ options: [
139
+ { title: '小', value: 'small' },
140
+ { title: '中', value: 'medium' },
141
+ ],
142
+ },
143
+ },
144
+ },
145
+ {
146
+ name: 'excessMode',
147
+ title: '选项卡过多时的滑动模式',
148
+ defaultValue: 'slide',
149
+ setter: {
150
+ componentName: 'RadioGroupSetter',
151
+ props: {
152
+ options: [
153
+ { title: '滑动', value: 'slide' },
154
+ { title: '下拉', value: 'dropdown' },
155
+ ],
156
+ },
157
+ },
158
+ },
159
+ {
160
+ name: 'tabPosition',
161
+ title: {
162
+ label: '导航选项卡的位置',
163
+ tip: '只适用于包裹型(wrapped)选项卡',
164
+ },
165
+ condition: (target) => {
166
+ const shape = target.getProps().getPropValue('shape');
167
+ return shape === 'wrapped';
168
+ },
169
+ defaultValue: 'top',
170
+ setter: {
171
+ componentName: 'RadioGroupSetter',
172
+ props: {
173
+ options: [
174
+ {
175
+ title: '顶部',
176
+ value: 'top',
177
+ },
178
+ {
179
+ title: '底部',
180
+ value: 'bottom',
181
+ },
182
+ {
183
+ title: '左边',
184
+ value: 'left',
185
+ },
186
+ {
187
+ title: '右边',
188
+ value: 'right',
189
+ },
190
+ ],
191
+ },
192
+ },
193
+ },
194
+ ];