amis-core 2.6.0 → 2.7.0

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 (451) hide show
  1. package/package.json +2 -2
  2. package/esm/Root.d.ts +0 -46
  3. package/esm/Root.js +0 -89
  4. package/esm/RootRenderer.d.ts +0 -27
  5. package/esm/RootRenderer.js +0 -279
  6. package/esm/SchemaRenderer.d.ts +0 -37
  7. package/esm/SchemaRenderer.js +0 -332
  8. package/esm/Scoped.d.ts +0 -38
  9. package/esm/Scoped.js +0 -262
  10. package/esm/WithRootStore.d.ts +0 -719
  11. package/esm/WithRootStore.js +0 -34
  12. package/esm/WithStore.d.ts +0 -5
  13. package/esm/WithStore.js +0 -181
  14. package/esm/actions/Action.d.ts +0 -40
  15. package/esm/actions/Action.js +0 -186
  16. package/esm/actions/AjaxAction.d.ts +0 -27
  17. package/esm/actions/AjaxAction.js +0 -96
  18. package/esm/actions/BreakAction.d.ts +0 -15
  19. package/esm/actions/BreakAction.js +0 -31
  20. package/esm/actions/BroadcastAction.d.ts +0 -19
  21. package/esm/actions/BroadcastAction.js +0 -46
  22. package/esm/actions/CmptAction.d.ts +0 -21
  23. package/esm/actions/CmptAction.js +0 -66
  24. package/esm/actions/ContinueAction.d.ts +0 -15
  25. package/esm/actions/ContinueAction.js +0 -31
  26. package/esm/actions/CopyAction.d.ts +0 -20
  27. package/esm/actions/CopyAction.js +0 -39
  28. package/esm/actions/CustomAction.d.ts +0 -22
  29. package/esm/actions/CustomAction.js +0 -74
  30. package/esm/actions/DialogAction.d.ts +0 -60
  31. package/esm/actions/DialogAction.js +0 -101
  32. package/esm/actions/DrawerAction.d.ts +0 -33
  33. package/esm/actions/DrawerAction.js +0 -65
  34. package/esm/actions/EmailAction.d.ts +0 -23
  35. package/esm/actions/EmailAction.js +0 -39
  36. package/esm/actions/LinkAction.d.ts +0 -24
  37. package/esm/actions/LinkAction.js +0 -43
  38. package/esm/actions/LoopAction.d.ts +0 -19
  39. package/esm/actions/LoopAction.js +0 -103
  40. package/esm/actions/PageAction.d.ts +0 -39
  41. package/esm/actions/PageAction.js +0 -74
  42. package/esm/actions/ParallelAction.d.ts +0 -8
  43. package/esm/actions/ParallelAction.js +0 -36
  44. package/esm/actions/SwitchAction.d.ts +0 -11
  45. package/esm/actions/SwitchAction.js +0 -48
  46. package/esm/actions/ToastAction.d.ts +0 -19
  47. package/esm/actions/ToastAction.js +0 -31
  48. package/esm/actions/index.d.ts +0 -20
  49. package/esm/components/LazyComponent.d.ts +0 -32
  50. package/esm/components/LazyComponent.js +0 -90
  51. package/esm/components/Overlay.d.ts +0 -44
  52. package/esm/components/Overlay.js +0 -255
  53. package/esm/components/PopOver.d.ts +0 -90
  54. package/esm/components/PopOver.js +0 -120
  55. package/esm/env.d.ts +0 -176
  56. package/esm/env.js +0 -12
  57. package/esm/envOverwrite.d.ts +0 -4
  58. package/esm/envOverwrite.js +0 -39
  59. package/esm/factory.d.ts +0 -85
  60. package/esm/factory.js +0 -301
  61. package/esm/index.d.ts +0 -44
  62. package/esm/index.js +0 -174
  63. package/esm/locale.d.ts +0 -84
  64. package/esm/locale.js +0 -117
  65. package/esm/renderers/Form.d.ts +0 -389
  66. package/esm/renderers/Form.js +0 -1221
  67. package/esm/renderers/Item.d.ts +0 -906
  68. package/esm/renderers/Item.js +0 -863
  69. package/esm/renderers/Options.d.ts +0 -158
  70. package/esm/renderers/Options.js +0 -908
  71. package/esm/renderers/Placeholder.d.ts +0 -6
  72. package/esm/renderers/Placeholder.js +0 -23
  73. package/esm/renderers/builtin.d.ts +0 -1
  74. package/esm/renderers/builtin.js +0 -25
  75. package/esm/renderers/register.d.ts +0 -6
  76. package/esm/renderers/register.js +0 -79
  77. package/esm/renderers/wrapControl.d.ts +0 -437
  78. package/esm/renderers/wrapControl.js +0 -509
  79. package/esm/store/app.d.ts +0 -92
  80. package/esm/store/app.js +0 -189
  81. package/esm/store/combo.d.ts +0 -10223
  82. package/esm/store/combo.js +0 -149
  83. package/esm/store/crud.d.ts +0 -128
  84. package/esm/store/crud.js +0 -447
  85. package/esm/store/form.d.ts +0 -4252
  86. package/esm/store/form.js +0 -650
  87. package/esm/store/formItem.d.ts +0 -133
  88. package/esm/store/formItem.js +0 -847
  89. package/esm/store/iRenderer.d.ts +0 -46
  90. package/esm/store/iRenderer.js +0 -185
  91. package/esm/store/index.d.ts +0 -125
  92. package/esm/store/index.js +0 -90
  93. package/esm/store/list.d.ts +0 -272
  94. package/esm/store/list.js +0 -246
  95. package/esm/store/manager.d.ts +0 -115
  96. package/esm/store/manager.js +0 -49
  97. package/esm/store/modal.d.ts +0 -84
  98. package/esm/store/modal.js +0 -50
  99. package/esm/store/node.d.ts +0 -22
  100. package/esm/store/node.js +0 -89
  101. package/esm/store/pagination.d.ts +0 -58
  102. package/esm/store/pagination.js +0 -56
  103. package/esm/store/root.d.ts +0 -85
  104. package/esm/store/root.js +0 -53
  105. package/esm/store/service.d.ts +0 -71
  106. package/esm/store/service.js +0 -411
  107. package/esm/store/table.d.ts +0 -10085
  108. package/esm/store/table.js +0 -1136
  109. package/esm/store/table2.d.ts +0 -474
  110. package/esm/store/table2.js +0 -560
  111. package/esm/theme.d.ts +0 -89
  112. package/esm/theme.js +0 -127
  113. package/esm/types.d.ts +0 -489
  114. package/esm/utils/Animation.d.ts +0 -22
  115. package/esm/utils/Animation.js +0 -285
  116. package/esm/utils/ColorScale.d.ts +0 -19
  117. package/esm/utils/ColorScale.js +0 -100
  118. package/esm/utils/DataSchema.d.ts +0 -25
  119. package/esm/utils/DataSchema.js +0 -112
  120. package/esm/utils/DataScope.d.ts +0 -26
  121. package/esm/utils/DataScope.js +0 -158
  122. package/esm/utils/RootClose.d.ts +0 -4
  123. package/esm/utils/RootClose.js +0 -22
  124. package/esm/utils/SimpleMap.d.ts +0 -8
  125. package/esm/utils/SimpleMap.js +0 -37
  126. package/esm/utils/api.d.ts +0 -34
  127. package/esm/utils/api.js +0 -595
  128. package/esm/utils/attachmentAdpator.d.ts +0 -8
  129. package/esm/utils/attachmentAdpator.js +0 -86
  130. package/esm/utils/autobind.d.ts +0 -7
  131. package/esm/utils/autobind.js +0 -89
  132. package/esm/utils/columnsSplit.d.ts +0 -1
  133. package/esm/utils/columnsSplit.js +0 -42
  134. package/esm/utils/dataMapping.d.ts +0 -9
  135. package/esm/utils/dataMapping.js +0 -141
  136. package/esm/utils/date.d.ts +0 -4
  137. package/esm/utils/date.js +0 -80
  138. package/esm/utils/debug.d.ts +0 -29
  139. package/esm/utils/debug.js +0 -379
  140. package/esm/utils/decodeEntity.d.ts +0 -5
  141. package/esm/utils/decodeEntity.js +0 -16
  142. package/esm/utils/dom.d.ts +0 -13
  143. package/esm/utils/dom.js +0 -188
  144. package/esm/utils/errors.d.ts +0 -6
  145. package/esm/utils/errors.js +0 -19
  146. package/esm/utils/escapeHtml.d.ts +0 -1
  147. package/esm/utils/escapeHtml.js +0 -20
  148. package/esm/utils/filter-schema.d.ts +0 -13
  149. package/esm/utils/filter-schema.js +0 -68
  150. package/esm/utils/filter.d.ts +0 -1
  151. package/esm/utils/filter.js +0 -493
  152. package/esm/utils/formatDuration.d.ts +0 -1
  153. package/esm/utils/formatDuration.js +0 -23
  154. package/esm/utils/formula.d.ts +0 -16
  155. package/esm/utils/formula.js +0 -219
  156. package/esm/utils/getVariable.d.ts +0 -3
  157. package/esm/utils/getVariable.js +0 -25
  158. package/esm/utils/grammar.d.ts +0 -4
  159. package/esm/utils/grammar.js +0 -50
  160. package/esm/utils/handleAction.d.ts +0 -7
  161. package/esm/utils/handleAction.js +0 -34
  162. package/esm/utils/helper.d.ts +0 -323
  163. package/esm/utils/helper.js +0 -1261
  164. package/esm/utils/highlight.d.ts +0 -1
  165. package/esm/utils/highlight.js +0 -44
  166. package/esm/utils/icon.d.ts +0 -16
  167. package/esm/utils/icon.js +0 -35
  168. package/esm/utils/image.d.ts +0 -18
  169. package/esm/utils/image.js +0 -47
  170. package/esm/utils/index.d.ts +0 -55
  171. package/esm/utils/isPureVariable.d.ts +0 -1
  172. package/esm/utils/isPureVariable.js +0 -22
  173. package/esm/utils/json-schema-2-amis-schema.d.ts +0 -6
  174. package/esm/utils/json-schema-2-amis-schema.js +0 -56
  175. package/esm/utils/keyToPath.d.ts +0 -6
  176. package/esm/utils/keyToPath.js +0 -30
  177. package/esm/utils/makeSorter.d.ts +0 -1
  178. package/esm/utils/makeSorter.js +0 -26
  179. package/esm/utils/normalizeLink.d.ts +0 -1
  180. package/esm/utils/normalizeLink.js +0 -43
  181. package/esm/utils/normalizeOptions.d.ts +0 -7
  182. package/esm/utils/normalizeOptions.js +0 -84
  183. package/esm/utils/object.d.ts +0 -15
  184. package/esm/utils/object.js +0 -142
  185. package/esm/utils/offset.d.ts +0 -15
  186. package/esm/utils/offset.js +0 -32
  187. package/esm/utils/offsetParent.d.ts +0 -5
  188. package/esm/utils/offsetParent.js +0 -23
  189. package/esm/utils/optionValueCompare.d.ts +0 -3
  190. package/esm/utils/optionValueCompare.js +0 -25
  191. package/esm/utils/position.d.ts +0 -26
  192. package/esm/utils/position.js +0 -54
  193. package/esm/utils/prettyBytes.d.ts +0 -1
  194. package/esm/utils/prettyBytes.js +0 -25
  195. package/esm/utils/renderer-event.d.ts +0 -62
  196. package/esm/utils/renderer-event.js +0 -206
  197. package/esm/utils/replaceText.d.ts +0 -3
  198. package/esm/utils/replaceText.js +0 -38
  199. package/esm/utils/resize-sensor.d.ts +0 -6
  200. package/esm/utils/resize-sensor.js +0 -172
  201. package/esm/utils/resolveVariable.d.ts +0 -1
  202. package/esm/utils/resolveVariable.js +0 -35
  203. package/esm/utils/resolveVariableAndFilter.d.ts +0 -1
  204. package/esm/utils/resolveVariableAndFilter.js +0 -33
  205. package/esm/utils/scrollPosition.d.ts +0 -16
  206. package/esm/utils/scrollPosition.js +0 -33
  207. package/esm/utils/string2regExp.d.ts +0 -1
  208. package/esm/utils/string2regExp.js +0 -14
  209. package/esm/utils/stripNumber.d.ts +0 -1
  210. package/esm/utils/stripNumber.js +0 -16
  211. package/esm/utils/style.d.ts +0 -10
  212. package/esm/utils/style.js +0 -58
  213. package/esm/utils/toNumber.d.ts +0 -7
  214. package/esm/utils/toNumber.js +0 -18
  215. package/esm/utils/tokenize.d.ts +0 -1
  216. package/esm/utils/tokenize.js +0 -29
  217. package/esm/utils/tpl-builtin.d.ts +0 -18
  218. package/esm/utils/tpl-builtin.js +0 -59
  219. package/esm/utils/tpl-lodash.d.ts +0 -4
  220. package/esm/utils/tpl-lodash.js +0 -62
  221. package/esm/utils/tpl.d.ts +0 -11
  222. package/esm/utils/tpl.js +0 -131
  223. package/esm/utils/uncontrollable.d.ts +0 -4
  224. package/esm/utils/uncontrollable.js +0 -14
  225. package/esm/utils/validations.d.ts +0 -39
  226. package/esm/utils/validations.js +0 -440
  227. package/lib/Root.d.ts +0 -46
  228. package/lib/Root.js +0 -102
  229. package/lib/RootRenderer.d.ts +0 -27
  230. package/lib/RootRenderer.js +0 -290
  231. package/lib/SchemaRenderer.d.ts +0 -37
  232. package/lib/SchemaRenderer.js +0 -342
  233. package/lib/Scoped.d.ts +0 -38
  234. package/lib/Scoped.js +0 -274
  235. package/lib/WithRootStore.d.ts +0 -719
  236. package/lib/WithRootStore.js +0 -44
  237. package/lib/WithStore.d.ts +0 -5
  238. package/lib/WithStore.js +0 -190
  239. package/lib/actions/Action.d.ts +0 -40
  240. package/lib/actions/Action.js +0 -197
  241. package/lib/actions/AjaxAction.d.ts +0 -27
  242. package/lib/actions/AjaxAction.js +0 -100
  243. package/lib/actions/BreakAction.d.ts +0 -15
  244. package/lib/actions/BreakAction.js +0 -35
  245. package/lib/actions/BroadcastAction.d.ts +0 -19
  246. package/lib/actions/BroadcastAction.js +0 -50
  247. package/lib/actions/CmptAction.d.ts +0 -21
  248. package/lib/actions/CmptAction.js +0 -70
  249. package/lib/actions/ContinueAction.d.ts +0 -15
  250. package/lib/actions/ContinueAction.js +0 -35
  251. package/lib/actions/CopyAction.d.ts +0 -20
  252. package/lib/actions/CopyAction.js +0 -43
  253. package/lib/actions/CustomAction.d.ts +0 -22
  254. package/lib/actions/CustomAction.js +0 -78
  255. package/lib/actions/DialogAction.d.ts +0 -60
  256. package/lib/actions/DialogAction.js +0 -108
  257. package/lib/actions/DrawerAction.d.ts +0 -33
  258. package/lib/actions/DrawerAction.js +0 -70
  259. package/lib/actions/EmailAction.d.ts +0 -23
  260. package/lib/actions/EmailAction.js +0 -48
  261. package/lib/actions/LinkAction.d.ts +0 -24
  262. package/lib/actions/LinkAction.js +0 -47
  263. package/lib/actions/LoopAction.d.ts +0 -19
  264. package/lib/actions/LoopAction.js +0 -107
  265. package/lib/actions/PageAction.d.ts +0 -39
  266. package/lib/actions/PageAction.js +0 -80
  267. package/lib/actions/ParallelAction.d.ts +0 -8
  268. package/lib/actions/ParallelAction.js +0 -40
  269. package/lib/actions/SwitchAction.d.ts +0 -11
  270. package/lib/actions/SwitchAction.js +0 -52
  271. package/lib/actions/ToastAction.d.ts +0 -19
  272. package/lib/actions/ToastAction.js +0 -35
  273. package/lib/actions/index.d.ts +0 -20
  274. package/lib/components/LazyComponent.d.ts +0 -32
  275. package/lib/components/LazyComponent.js +0 -99
  276. package/lib/components/Overlay.d.ts +0 -44
  277. package/lib/components/Overlay.js +0 -266
  278. package/lib/components/PopOver.d.ts +0 -90
  279. package/lib/components/PopOver.js +0 -129
  280. package/lib/env.d.ts +0 -176
  281. package/lib/env.js +0 -20
  282. package/lib/envOverwrite.d.ts +0 -4
  283. package/lib/envOverwrite.js +0 -43
  284. package/lib/factory.d.ts +0 -85
  285. package/lib/factory.js +0 -324
  286. package/lib/index.d.ts +0 -44
  287. package/lib/index.js +0 -460
  288. package/lib/locale.d.ts +0 -84
  289. package/lib/locale.js +0 -133
  290. package/lib/renderers/Form.d.ts +0 -389
  291. package/lib/renderers/Form.js +0 -1234
  292. package/lib/renderers/Item.d.ts +0 -906
  293. package/lib/renderers/Item.js +0 -879
  294. package/lib/renderers/Options.d.ts +0 -158
  295. package/lib/renderers/Options.js +0 -920
  296. package/lib/renderers/Placeholder.d.ts +0 -6
  297. package/lib/renderers/Placeholder.js +0 -31
  298. package/lib/renderers/builtin.d.ts +0 -1
  299. package/lib/renderers/builtin.js +0 -27
  300. package/lib/renderers/register.d.ts +0 -6
  301. package/lib/renderers/register.js +0 -83
  302. package/lib/renderers/wrapControl.d.ts +0 -437
  303. package/lib/renderers/wrapControl.js +0 -520
  304. package/lib/store/app.d.ts +0 -92
  305. package/lib/store/app.js +0 -193
  306. package/lib/store/combo.d.ts +0 -10223
  307. package/lib/store/combo.js +0 -154
  308. package/lib/store/crud.d.ts +0 -128
  309. package/lib/store/crud.js +0 -455
  310. package/lib/store/form.d.ts +0 -4252
  311. package/lib/store/form.js +0 -664
  312. package/lib/store/formItem.d.ts +0 -133
  313. package/lib/store/formItem.js +0 -858
  314. package/lib/store/iRenderer.d.ts +0 -46
  315. package/lib/store/iRenderer.js +0 -189
  316. package/lib/store/index.d.ts +0 -125
  317. package/lib/store/index.js +0 -101
  318. package/lib/store/list.d.ts +0 -272
  319. package/lib/store/list.js +0 -256
  320. package/lib/store/manager.d.ts +0 -115
  321. package/lib/store/manager.js +0 -56
  322. package/lib/store/modal.d.ts +0 -84
  323. package/lib/store/modal.js +0 -54
  324. package/lib/store/node.d.ts +0 -22
  325. package/lib/store/node.js +0 -93
  326. package/lib/store/pagination.d.ts +0 -58
  327. package/lib/store/pagination.js +0 -60
  328. package/lib/store/root.d.ts +0 -85
  329. package/lib/store/root.js +0 -57
  330. package/lib/store/service.d.ts +0 -71
  331. package/lib/store/service.js +0 -415
  332. package/lib/store/table.d.ts +0 -10085
  333. package/lib/store/table.js +0 -1148
  334. package/lib/store/table2.d.ts +0 -474
  335. package/lib/store/table2.js +0 -571
  336. package/lib/theme.d.ts +0 -89
  337. package/lib/theme.js +0 -145
  338. package/lib/types.d.ts +0 -489
  339. package/lib/utils/Animation.d.ts +0 -22
  340. package/lib/utils/Animation.js +0 -290
  341. package/lib/utils/ColorScale.d.ts +0 -19
  342. package/lib/utils/ColorScale.js +0 -105
  343. package/lib/utils/DataSchema.d.ts +0 -25
  344. package/lib/utils/DataSchema.js +0 -116
  345. package/lib/utils/DataScope.d.ts +0 -26
  346. package/lib/utils/DataScope.js +0 -162
  347. package/lib/utils/RootClose.d.ts +0 -4
  348. package/lib/utils/RootClose.js +0 -30
  349. package/lib/utils/SimpleMap.d.ts +0 -8
  350. package/lib/utils/SimpleMap.js +0 -46
  351. package/lib/utils/api.d.ts +0 -34
  352. package/lib/utils/api.js +0 -621
  353. package/lib/utils/attachmentAdpator.d.ts +0 -8
  354. package/lib/utils/attachmentAdpator.js +0 -91
  355. package/lib/utils/autobind.d.ts +0 -7
  356. package/lib/utils/autobind.js +0 -94
  357. package/lib/utils/columnsSplit.d.ts +0 -1
  358. package/lib/utils/columnsSplit.js +0 -51
  359. package/lib/utils/dataMapping.d.ts +0 -9
  360. package/lib/utils/dataMapping.js +0 -151
  361. package/lib/utils/date.d.ts +0 -4
  362. package/lib/utils/date.js +0 -90
  363. package/lib/utils/debug.d.ts +0 -29
  364. package/lib/utils/debug.js +0 -392
  365. package/lib/utils/decodeEntity.d.ts +0 -5
  366. package/lib/utils/decodeEntity.js +0 -20
  367. package/lib/utils/dom.d.ts +0 -13
  368. package/lib/utils/dom.js +0 -199
  369. package/lib/utils/errors.d.ts +0 -6
  370. package/lib/utils/errors.js +0 -23
  371. package/lib/utils/escapeHtml.d.ts +0 -1
  372. package/lib/utils/escapeHtml.js +0 -24
  373. package/lib/utils/filter-schema.d.ts +0 -13
  374. package/lib/utils/filter-schema.js +0 -78
  375. package/lib/utils/filter.d.ts +0 -1
  376. package/lib/utils/filter.js +0 -503
  377. package/lib/utils/formatDuration.d.ts +0 -1
  378. package/lib/utils/formatDuration.js +0 -27
  379. package/lib/utils/formula.d.ts +0 -16
  380. package/lib/utils/formula.js +0 -234
  381. package/lib/utils/getVariable.d.ts +0 -3
  382. package/lib/utils/getVariable.js +0 -29
  383. package/lib/utils/grammar.d.ts +0 -4
  384. package/lib/utils/grammar.js +0 -54
  385. package/lib/utils/handleAction.d.ts +0 -7
  386. package/lib/utils/handleAction.js +0 -39
  387. package/lib/utils/helper.d.ts +0 -323
  388. package/lib/utils/helper.js +0 -1361
  389. package/lib/utils/highlight.d.ts +0 -1
  390. package/lib/utils/highlight.js +0 -52
  391. package/lib/utils/icon.d.ts +0 -16
  392. package/lib/utils/icon.js +0 -43
  393. package/lib/utils/image.d.ts +0 -18
  394. package/lib/utils/image.js +0 -56
  395. package/lib/utils/index.d.ts +0 -55
  396. package/lib/utils/isPureVariable.d.ts +0 -1
  397. package/lib/utils/isPureVariable.js +0 -26
  398. package/lib/utils/json-schema-2-amis-schema.d.ts +0 -6
  399. package/lib/utils/json-schema-2-amis-schema.js +0 -60
  400. package/lib/utils/keyToPath.d.ts +0 -6
  401. package/lib/utils/keyToPath.js +0 -34
  402. package/lib/utils/makeSorter.d.ts +0 -1
  403. package/lib/utils/makeSorter.js +0 -30
  404. package/lib/utils/normalizeLink.d.ts +0 -1
  405. package/lib/utils/normalizeLink.js +0 -47
  406. package/lib/utils/normalizeOptions.d.ts +0 -7
  407. package/lib/utils/normalizeOptions.js +0 -92
  408. package/lib/utils/object.d.ts +0 -15
  409. package/lib/utils/object.js +0 -156
  410. package/lib/utils/offset.d.ts +0 -15
  411. package/lib/utils/offset.js +0 -37
  412. package/lib/utils/offsetParent.d.ts +0 -5
  413. package/lib/utils/offsetParent.js +0 -28
  414. package/lib/utils/optionValueCompare.d.ts +0 -3
  415. package/lib/utils/optionValueCompare.js +0 -30
  416. package/lib/utils/position.d.ts +0 -26
  417. package/lib/utils/position.js +0 -59
  418. package/lib/utils/prettyBytes.d.ts +0 -1
  419. package/lib/utils/prettyBytes.js +0 -29
  420. package/lib/utils/renderer-event.d.ts +0 -62
  421. package/lib/utils/renderer-event.js +0 -218
  422. package/lib/utils/replaceText.d.ts +0 -3
  423. package/lib/utils/replaceText.js +0 -46
  424. package/lib/utils/resize-sensor.d.ts +0 -6
  425. package/lib/utils/resize-sensor.js +0 -177
  426. package/lib/utils/resolveVariable.d.ts +0 -1
  427. package/lib/utils/resolveVariable.js +0 -39
  428. package/lib/utils/resolveVariableAndFilter.d.ts +0 -1
  429. package/lib/utils/resolveVariableAndFilter.js +0 -37
  430. package/lib/utils/scrollPosition.d.ts +0 -16
  431. package/lib/utils/scrollPosition.js +0 -37
  432. package/lib/utils/string2regExp.d.ts +0 -1
  433. package/lib/utils/string2regExp.js +0 -18
  434. package/lib/utils/stripNumber.d.ts +0 -1
  435. package/lib/utils/stripNumber.js +0 -20
  436. package/lib/utils/style.d.ts +0 -10
  437. package/lib/utils/style.js +0 -67
  438. package/lib/utils/toNumber.d.ts +0 -7
  439. package/lib/utils/toNumber.js +0 -22
  440. package/lib/utils/tokenize.d.ts +0 -1
  441. package/lib/utils/tokenize.js +0 -33
  442. package/lib/utils/tpl-builtin.d.ts +0 -18
  443. package/lib/utils/tpl-builtin.js +0 -75
  444. package/lib/utils/tpl-lodash.d.ts +0 -4
  445. package/lib/utils/tpl-lodash.js +0 -71
  446. package/lib/utils/tpl.d.ts +0 -11
  447. package/lib/utils/tpl.js +0 -140
  448. package/lib/utils/uncontrollable.d.ts +0 -4
  449. package/lib/utils/uncontrollable.js +0 -22
  450. package/lib/utils/validations.d.ts +0 -39
  451. package/lib/utils/validations.js +0 -455
@@ -1,1148 +0,0 @@
1
- /**
2
- * amis-core v2.6.0
3
- * Copyright 2018-2022 fex
4
- */
5
-
6
- 'use strict';
7
-
8
- Object.defineProperty(exports, '__esModule', { value: true });
9
-
10
- var tslib = require('tslib');
11
- var mobxStateTree = require('mobx-state-tree');
12
- var iRenderer = require('./iRenderer.js');
13
- require('amis-formula');
14
- require('moment');
15
- var object = require('../utils/object.js');
16
- var isPureVariable = require('../utils/isPureVariable.js');
17
- var resolveVariable = require('../utils/resolveVariable.js');
18
- var resolveVariableAndFilter = require('../utils/resolveVariableAndFilter.js');
19
- require('lodash/isPlainObject');
20
- require('../utils/filter.js');
21
- var isEqual = require('lodash/isEqual');
22
- var find = require('lodash/find');
23
- var sortBy = require('lodash/sortBy');
24
- var helper = require('../utils/helper.js');
25
- var tpl = require('../utils/tpl.js');
26
- var manager = require('./manager.js');
27
-
28
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
29
-
30
- var isEqual__default = /*#__PURE__*/_interopDefaultLegacy(isEqual);
31
- var find__default = /*#__PURE__*/_interopDefaultLegacy(find);
32
- var sortBy__default = /*#__PURE__*/_interopDefaultLegacy(sortBy);
33
-
34
- /**
35
- * 内部列的数量 '__checkme' | '__dragme' | '__expandme'
36
- */
37
- var PARTITION_INDEX = 3;
38
- var Column = mobxStateTree.types
39
- .model('Column', {
40
- label: mobxStateTree.types.optional(mobxStateTree.types.frozen(), undefined),
41
- type: mobxStateTree.types.optional(mobxStateTree.types.string, 'plain'),
42
- name: mobxStateTree.types.maybe(mobxStateTree.types.string),
43
- value: mobxStateTree.types.frozen(),
44
- groupName: '',
45
- toggled: false,
46
- toggable: true,
47
- expandable: false,
48
- checkdisable: false,
49
- isPrimary: false,
50
- searchable: mobxStateTree.types.maybe(mobxStateTree.types.frozen()),
51
- enableSearch: true,
52
- sortable: false,
53
- filterable: mobxStateTree.types.optional(mobxStateTree.types.frozen(), undefined),
54
- fixed: '',
55
- index: 0,
56
- rawIndex: 0,
57
- breakpoint: mobxStateTree.types.optional(mobxStateTree.types.frozen(), undefined),
58
- pristine: mobxStateTree.types.optional(mobxStateTree.types.frozen(), undefined),
59
- remark: mobxStateTree.types.optional(mobxStateTree.types.frozen(), undefined),
60
- className: mobxStateTree.types.union(mobxStateTree.types.string, mobxStateTree.types.frozen())
61
- })
62
- .actions(function (self) { return ({
63
- toggleToggle: function () {
64
- self.toggled = !self.toggled;
65
- var table = mobxStateTree.getParent(self, 2);
66
- if (!table.activeToggaleColumns.length) {
67
- self.toggled = true;
68
- }
69
- table.persistSaveToggledColumns();
70
- },
71
- setToggled: function (value) {
72
- self.toggled = value;
73
- },
74
- setEnableSearch: function (value) {
75
- self.enableSearch = value;
76
- var table = mobxStateTree.getParent(self, 2);
77
- table.persistSaveToggledColumns();
78
- }
79
- }); });
80
- var Row = mobxStateTree.types
81
- .model('Row', {
82
- storeType: 'Row',
83
- id: mobxStateTree.types.identifier,
84
- parentId: '',
85
- key: mobxStateTree.types.string,
86
- pristine: mobxStateTree.types.frozen({}),
87
- data: mobxStateTree.types.frozen({}),
88
- rowSpans: mobxStateTree.types.frozen({}),
89
- index: mobxStateTree.types.number,
90
- newIndex: mobxStateTree.types.number,
91
- path: '',
92
- expandable: false,
93
- checkdisable: false,
94
- isHover: false,
95
- children: mobxStateTree.types.optional(mobxStateTree.types.array(mobxStateTree.types.late(function () { return Row; })), []),
96
- depth: mobxStateTree.types.number // 当前children位于第几层,便于使用getParent获取最顶层TableStore
97
- })
98
- .views(function (self) { return ({
99
- get checked() {
100
- return mobxStateTree.getParent(self, self.depth * 2).isSelected(self);
101
- },
102
- get modified() {
103
- if (!self.data) {
104
- return false;
105
- }
106
- return Object.keys(self.data).some(function (key) { return !isEqual__default["default"](self.data[key], self.pristine[key]); });
107
- },
108
- getDataWithModifiedChilden: function () {
109
- var data = tslib.__assign({}, self.data);
110
- if (data.children && self.children) {
111
- data.children = self.children.map(function (item) {
112
- return item.getDataWithModifiedChilden();
113
- });
114
- }
115
- return data;
116
- },
117
- get collapsed() {
118
- var table = mobxStateTree.getParent(self, self.depth * 2);
119
- if (table.dragging) {
120
- return true;
121
- }
122
- var from = self;
123
- while (from && from !== table) {
124
- if (!table.isExpanded(from)) {
125
- return true;
126
- }
127
- from = mobxStateTree.getParent(from, 2);
128
- }
129
- return false;
130
- },
131
- get expanded() {
132
- return !this.collapsed;
133
- },
134
- get moved() {
135
- return self.index !== self.newIndex;
136
- },
137
- get locals() {
138
- var children = null;
139
- if (self.children.length) {
140
- children = self.children.map(function (item) { return item.locals; });
141
- }
142
- var parent = mobxStateTree.getParent(self, 2);
143
- return object.createObject(object.extendObject(mobxStateTree.getParent(self, self.depth * 2).data, {
144
- index: self.index,
145
- // todo 以后再支持多层,目前先一层
146
- parent: parent.storeType === Row.name ? parent.data : undefined
147
- }), children
148
- ? tslib.__assign(tslib.__assign({}, self.data), { children: children }) : self.data);
149
- },
150
- get checkable() {
151
- var table = mobxStateTree.getParent(self, self.depth * 2);
152
- return table && table.itemCheckableOn
153
- ? tpl.evalExpression(table.itemCheckableOn, self.locals)
154
- : true;
155
- },
156
- get draggable() {
157
- var table = mobxStateTree.getParent(self, self.depth * 2);
158
- return table && table.itemDraggableOn
159
- ? tpl.evalExpression(table.itemDraggableOn, self.locals)
160
- : true;
161
- },
162
- /**
163
- * 判断当前行点击后是否应该继续触发check
164
- * 用于限制checkOnItemClick触发的check事件
165
- */
166
- get isCheckAvaiableOnClick() {
167
- var _a;
168
- var table = mobxStateTree.getParent(self, self.depth * 2);
169
- var keepItemSelectionOnPageChange = table === null || table === void 0 ? void 0 : table.keepItemSelectionOnPageChange;
170
- var selectionUpperLimit = table === null || table === void 0 ? void 0 : table.maxKeepItemSelectionLength;
171
- // 如果未做配置,或者配置不合法直接通过检查
172
- if (!keepItemSelectionOnPageChange ||
173
- !Number.isInteger(selectionUpperLimit) ||
174
- selectionUpperLimit === Infinity) {
175
- return true;
176
- }
177
- // 使用内置ID,不会重复
178
- var selectedIds = ((_a = table === null || table === void 0 ? void 0 : table.selectedRows) !== null && _a !== void 0 ? _a : []).map(function (item) { return item.id; });
179
- // 此时syncSelected还没有触发,所以需要比较点击之后的数量
180
- var selectedCount = selectedIds.includes(self.id)
181
- ? selectedIds.length - 1
182
- : selectedIds.length + 1;
183
- if (selectedCount > selectionUpperLimit) {
184
- return false;
185
- }
186
- return true;
187
- }
188
- }); })
189
- .actions(function (self) { return ({
190
- toggle: function () {
191
- mobxStateTree.getParent(self, self.depth * 2).toggle(self);
192
- },
193
- toggleExpanded: function () {
194
- mobxStateTree.getParent(self, self.depth * 2).toggleExpanded(self);
195
- },
196
- change: function (values, savePristine) {
197
- self.data = helper.immutableExtends(self.data, values);
198
- savePristine && (self.pristine = self.data);
199
- },
200
- reset: function () {
201
- self.newIndex = self.index;
202
- self.data = self.pristine;
203
- },
204
- setCheckdisable: function (bool) {
205
- self.checkdisable = bool;
206
- },
207
- setIsHover: function (value) {
208
- self.isHover = value;
209
- },
210
- replaceWith: function (data) {
211
- Object.keys(data).forEach(function (key) {
212
- if (key !== 'id') {
213
- self[key] = data[key];
214
- }
215
- });
216
- if (Array.isArray(data.children)) {
217
- var arr = data.children;
218
- var pool = arr.concat();
219
- // 把多的删了先
220
- if (self.children.length > arr.length) {
221
- self.children.splice(arr.length, self.children.length - arr.length);
222
- }
223
- var index = 0;
224
- var len = self.children.length;
225
- while (pool.length) {
226
- // 因为父级id未更新,所以需要将子级的parentId正确指向父级id
227
- var item = tslib.__assign(tslib.__assign({}, pool.shift()), { parentId: self.id });
228
- if (index < len) {
229
- self.children[index].replaceWith(item);
230
- }
231
- else {
232
- var row = Row.create(item);
233
- self.children.push(row);
234
- }
235
- index++;
236
- }
237
- }
238
- }
239
- }); });
240
- var TableStore = iRenderer.iRendererStore
241
- .named('TableStore')
242
- .props({
243
- columns: mobxStateTree.types.array(Column),
244
- rows: mobxStateTree.types.array(Row),
245
- selectedRows: mobxStateTree.types.array(mobxStateTree.types.reference(Row)),
246
- expandedRows: mobxStateTree.types.array(mobxStateTree.types.string),
247
- primaryField: 'id',
248
- orderBy: '',
249
- orderDir: mobxStateTree.types.optional(mobxStateTree.types.union(mobxStateTree.types.literal('asc'), mobxStateTree.types.literal('desc'), mobxStateTree.types.literal('')), 'asc'),
250
- draggable: false,
251
- dragging: false,
252
- selectable: false,
253
- multiple: true,
254
- footable: mobxStateTree.types.frozen(),
255
- expandConfig: mobxStateTree.types.frozen(),
256
- isNested: false,
257
- columnsTogglable: mobxStateTree.types.optional(mobxStateTree.types.union(mobxStateTree.types.boolean, mobxStateTree.types.literal('auto')), 'auto'),
258
- itemCheckableOn: '',
259
- itemDraggableOn: '',
260
- hideCheckToggler: false,
261
- combineNum: 0,
262
- combineFromIndex: 0,
263
- formsRef: mobxStateTree.types.optional(mobxStateTree.types.array(mobxStateTree.types.frozen()), []),
264
- maxKeepItemSelectionLength: Infinity,
265
- keepItemSelectionOnPageChange: false,
266
- searchFormExpanded: false // 用来控制搜索框是否展开了,那个自动根据 searchable 生成的表单 autoGenerateFilter
267
- })
268
- .views(function (self) {
269
- function getColumnsExceptBuiltinTypes() {
270
- return self.columns.filter(function (item) {
271
- /** 排除掉内置的列和不可见的列 */
272
- return !/^__/.test(item.type) &&
273
- helper.isVisible(item.pristine, helper.hasVisibleExpression(item.pristine) ? self.data : {});
274
- });
275
- }
276
- function getForms() {
277
- return self.formsRef.map(function (item) { return ({
278
- store: manager.getStoreById(item.id),
279
- rowIndex: item.rowIndex
280
- }); });
281
- }
282
- function getExportedColumns() {
283
- return self.columns.filter(function (item) {
284
- return (item &&
285
- helper.isVisible(item.pristine, helper.hasVisibleExpression(item.pristine) ? self.data : {}) &&
286
- (item.toggled || !item.toggable) &&
287
- !/^__/.test(item.type));
288
- });
289
- }
290
- function getFilteredColumns() {
291
- return self.columns.filter(function (item) {
292
- return item &&
293
- helper.isVisible(item.pristine, helper.hasVisibleExpression(item.pristine) ? self.data : {}) &&
294
- (item.type === '__checkme'
295
- ? self.selectable &&
296
- !self.dragging &&
297
- !self.hideCheckToggler &&
298
- self.rows.length
299
- : item.type === '__dragme'
300
- ? self.dragging
301
- : item.type === '__expandme'
302
- ? (getFootableColumns().length || self.isNested) && !self.dragging
303
- : (item.toggled || !item.toggable) &&
304
- (!self.footable ||
305
- !item.breakpoint ||
306
- !helper.isBreakpoint(item.breakpoint)));
307
- });
308
- }
309
- function getFootableColumns() {
310
- return self.columns.filter(function (item) {
311
- return item.type === '__checkme' ||
312
- item.type === '__dragme' ||
313
- item.type === '__expandme'
314
- ? false
315
- : (item.toggled || !item.toggable) &&
316
- self.footable &&
317
- item.breakpoint &&
318
- helper.isBreakpoint(item.breakpoint);
319
- });
320
- }
321
- function getLeftFixedColumns() {
322
- if (self.dragging) {
323
- return [];
324
- }
325
- var columns = getFilteredColumns().filter(function (item) { return item.fixed === 'left'; });
326
- // 有才带过去,没有就不带了
327
- if (columns.length) {
328
- columns = getFilteredColumns().filter(function (item) { return item.fixed === 'left' || /^__/.test(item.type); });
329
- }
330
- return columns;
331
- }
332
- function getRightFixedColumns() {
333
- if (self.dragging) {
334
- return [];
335
- }
336
- return getFilteredColumns().filter(function (item) { return item.fixed === 'right'; });
337
- }
338
- function isSelected(row) {
339
- return !!~self.selectedRows.indexOf(row);
340
- }
341
- function isExpanded(row) {
342
- return self.expandedRows.includes(row.id);
343
- }
344
- function getTogglable() {
345
- if (self.columnsTogglable === 'auto') {
346
- return self.columns.filter(function (item) { return !/^__/.test(item.type); }).length > 5;
347
- }
348
- return self.columnsTogglable;
349
- }
350
- function getToggableColumns() {
351
- return self.columns.filter(function (item) { return helper.isVisible(item.pristine, self.data) && item.toggable !== false; });
352
- }
353
- function getActiveToggableColumns() {
354
- return getToggableColumns().filter(function (item) { return item.toggled; });
355
- }
356
- function getModifiedRows(rows, modifiedRows) {
357
- if (rows === void 0) { rows = []; }
358
- if (modifiedRows === void 0) { modifiedRows = []; }
359
- rows = rows && rows.length ? rows : self.rows;
360
- rows.forEach(function (item) {
361
- if (item.children && item.children.length) {
362
- getModifiedRows(item.children, modifiedRows);
363
- }
364
- var diff = helper.difference(item.data, item.pristine);
365
- var hasDifference = Object.keys(diff).length;
366
- if (hasDifference) {
367
- modifiedRows.push(item);
368
- }
369
- });
370
- return modifiedRows;
371
- }
372
- function getModified() {
373
- return getModifiedRows().length;
374
- }
375
- function getMovedRows() {
376
- return helper.flattenTree(self.rows).filter(function (item) { return item.moved; });
377
- }
378
- function getMoved() {
379
- return getMovedRows().length;
380
- }
381
- function getHovedRow() {
382
- return helper.flattenTree(self.rows).find(function (item) { return item.isHover; });
383
- }
384
- function getUnSelectedRows() {
385
- return helper.flattenTree(self.rows).filter(function (item) { return !item.checked; });
386
- }
387
- function getData(superData) {
388
- return object.createObject(superData, {
389
- items: self.rows.map(function (item) { return item.data; }),
390
- selectedItems: self.selectedRows.map(function (item) { return item.data; }),
391
- unSelectedItems: getUnSelectedRows().map(function (item) { return item.data; })
392
- });
393
- }
394
- function hasColumnHidden() {
395
- return self.columns.findIndex(function (column) { return !column.toggled; }) !== -1;
396
- }
397
- function getColumnGroup() {
398
- var columns = getFilteredColumns();
399
- var len = columns.length;
400
- if (!len) {
401
- return [];
402
- }
403
- var groups = [
404
- {
405
- label: columns[0].groupName,
406
- colSpan: 1,
407
- rowSpan: 1,
408
- index: columns[0].index,
409
- has: [columns[0]]
410
- }
411
- ];
412
- // 用户是否启用了 groupName
413
- var hasGroupName = columns.some(function (column) { return column.groupName; });
414
- for (var i = 1; i < len; i++) {
415
- var prev = groups[groups.length - 1];
416
- var current = columns[i];
417
- var groupNameIsSame = current.groupName === prev.label ||
418
- resolveVariableAndFilter.resolveVariableAndFilter(current.groupName, self.data) ===
419
- resolveVariableAndFilter.resolveVariableAndFilter(prev.label, self.data);
420
- if (groupNameIsSame &&
421
- ((hasGroupName && current.groupName) || !hasGroupName)) {
422
- prev.colSpan++;
423
- prev.has.push(current);
424
- }
425
- else {
426
- groups.push({
427
- /**
428
- * 如果中间没有配置groupName,那么样式会错乱,这里设置列的label配置,lable也没有则设置一个空字符串
429
- * 注:内部列需要设置为undefined,保证rowSpan在下面计算为2
430
- */
431
- label: !!~['__checkme', '__expandme'].indexOf(current.type)
432
- ? undefined
433
- : current.groupName || current.label || ' ',
434
- colSpan: 1,
435
- rowSpan: 1,
436
- index: current.index,
437
- has: [current]
438
- });
439
- }
440
- }
441
- if (groups.length === 1 && !groups[0].label) {
442
- groups.pop();
443
- }
444
- return groups.map(function (item) {
445
- var rowSpan = !item.label ||
446
- (item.has.length === 1 && item.label === item.has[0].label)
447
- ? 2
448
- : 1;
449
- return tslib.__assign(tslib.__assign({}, item), { rowSpan: rowSpan, label: rowSpan === 2 ? item.label || item.has[0].label : item.label });
450
- });
451
- }
452
- function getFirstToggledColumnIndex() {
453
- var column = self.columns.find(function (column) { return !/^__/.test(column.type) && column.toggled; });
454
- return column == null ? null : column.index;
455
- }
456
- function getSearchableColumns() {
457
- return self.columns.filter(function (column) { return column.searchable; });
458
- }
459
- return {
460
- get columnsData() {
461
- return getColumnsExceptBuiltinTypes();
462
- },
463
- get forms() {
464
- return getForms();
465
- },
466
- get searchableColumns() {
467
- return getSearchableColumns();
468
- },
469
- get activedSearchableColumns() {
470
- return getSearchableColumns().filter(function (column) { return column.enableSearch; });
471
- },
472
- /** 导出excel列(包含breakpoint列) */
473
- get exportColumns() {
474
- return getExportedColumns();
475
- },
476
- get filteredColumns() {
477
- return getFilteredColumns();
478
- },
479
- get footableColumns() {
480
- return getFootableColumns();
481
- },
482
- get leftFixedColumns() {
483
- return getLeftFixedColumns();
484
- },
485
- get rightFixedColumns() {
486
- return getRightFixedColumns();
487
- },
488
- get toggableColumns() {
489
- return getToggableColumns();
490
- },
491
- get activeToggaleColumns() {
492
- return getActiveToggableColumns();
493
- },
494
- get someChecked() {
495
- return !!self.selectedRows.length;
496
- },
497
- get allChecked() {
498
- return !!(self.selectedRows.length ===
499
- self.checkableRows.length &&
500
- self.checkableRows.length);
501
- },
502
- isSelected: isSelected,
503
- get allExpanded() {
504
- return !!(self.expandedRows.length === this.expandableRows.length &&
505
- this.expandableRows.length);
506
- },
507
- isExpanded: isExpanded,
508
- get toggable() {
509
- return getTogglable();
510
- },
511
- get modified() {
512
- return getModified();
513
- },
514
- get modifiedRows() {
515
- return getModifiedRows();
516
- },
517
- get unSelectedRows() {
518
- return getUnSelectedRows();
519
- },
520
- get checkableRows() {
521
- return helper.flattenTree(self.rows).filter(function (item) { return item.checkable; });
522
- },
523
- get expandableRows() {
524
- return self.rows.filter(function (item) { return item.expandable; });
525
- },
526
- get moved() {
527
- return getMoved();
528
- },
529
- get movedRows() {
530
- return getMovedRows();
531
- },
532
- get hoverRow() {
533
- return getHovedRow();
534
- },
535
- /** 已选择item是否达到数量上限 */
536
- get isSelectionThresholdReached() {
537
- var _a, _b;
538
- var selectedLength = (_b = (_a = self.data) === null || _a === void 0 ? void 0 : _a.selectedItems) === null || _b === void 0 ? void 0 : _b.length;
539
- var maxLength = self.maxKeepItemSelectionLength;
540
- if (!self.data || !self.keepItemSelectionOnPageChange || !maxLength) {
541
- return false;
542
- }
543
- return maxLength <= selectedLength;
544
- },
545
- get firstToggledColumnIndex() {
546
- return getFirstToggledColumnIndex();
547
- },
548
- getData: getData,
549
- get columnGroup() {
550
- return getColumnGroup();
551
- },
552
- getRowById: function (id) {
553
- return helper.findTree(self.rows, function (item) { return item.id === id; });
554
- },
555
- getItemsByName: function (name) {
556
- return this.forms
557
- .filter(function (form) { return form.rowIndex === parseInt(name, 10); })
558
- .map(function (item) { return item.store; });
559
- },
560
- // 是否隐藏了某列
561
- hasColumnHidden: function () {
562
- return hasColumnHidden();
563
- },
564
- getExpandedRows: function () {
565
- var list = [];
566
- helper.eachTree(self.rows, function (i) {
567
- if (self.expandedRows.includes(i.id)) {
568
- list.push(i);
569
- }
570
- });
571
- return list;
572
- }
573
- };
574
- })
575
- .actions(function (self) {
576
- function update(config) {
577
- config.primaryField !== void 0 &&
578
- (self.primaryField = config.primaryField);
579
- config.selectable !== void 0 && (self.selectable = config.selectable);
580
- config.columnsTogglable !== void 0 &&
581
- (self.columnsTogglable = config.columnsTogglable);
582
- config.draggable !== void 0 && (self.draggable = config.draggable);
583
- if (typeof config.orderBy === 'string') {
584
- setOrderByInfo(config.orderBy, config.orderDir === 'desc' ? 'desc' : 'asc');
585
- }
586
- config.multiple !== void 0 && (self.multiple = config.multiple);
587
- config.footable !== void 0 && (self.footable = config.footable);
588
- config.expandConfig !== void 0 &&
589
- (self.expandConfig = config.expandConfig);
590
- config.itemCheckableOn !== void 0 &&
591
- (self.itemCheckableOn = config.itemCheckableOn);
592
- config.itemDraggableOn !== void 0 &&
593
- (self.itemDraggableOn = config.itemDraggableOn);
594
- config.hideCheckToggler !== void 0 &&
595
- (self.hideCheckToggler = !!config.hideCheckToggler);
596
- config.combineNum !== void 0 &&
597
- (self.combineNum = parseInt(config.combineNum, 10) || 0);
598
- config.combineFromIndex !== void 0 &&
599
- (self.combineFromIndex =
600
- parseInt(config.combineFromIndex, 10) || 0);
601
- config.maxKeepItemSelectionLength !== void 0 &&
602
- (self.maxKeepItemSelectionLength = config.maxKeepItemSelectionLength);
603
- config.keepItemSelectionOnPageChange !== void 0 &&
604
- (self.keepItemSelectionOnPageChange =
605
- config.keepItemSelectionOnPageChange);
606
- if (config.columns && Array.isArray(config.columns)) {
607
- var columns = config.columns
608
- .filter(function (column) { return column; })
609
- .concat();
610
- if (!columns.length) {
611
- columns.push({
612
- type: 'text',
613
- label: '空'
614
- });
615
- }
616
- // 更新列顺序,afterCreate生命周期中更新columns不会触发组件的render
617
- var key = getPersistDataKey(columns);
618
- var data = localStorage.getItem(key);
619
- var tableMetaData = null;
620
- if (data) {
621
- try {
622
- tableMetaData = JSON.parse(data);
623
- }
624
- catch (error) { }
625
- var order_1 = tableMetaData === null || tableMetaData === void 0 ? void 0 : tableMetaData.columnOrder;
626
- if (Array.isArray(order_1) && order_1.length != 0) {
627
- columns = sortBy__default["default"](columns, function (item, index) {
628
- return order_1.indexOf(item.name || item.label || index);
629
- });
630
- }
631
- }
632
- columns.unshift({
633
- type: '__expandme',
634
- toggable: false,
635
- className: 'Table-expandCell'
636
- });
637
- columns.unshift({
638
- type: '__checkme',
639
- fixed: 'left',
640
- toggable: false,
641
- className: 'Table-checkCell'
642
- });
643
- columns.unshift({
644
- type: '__dragme',
645
- toggable: false,
646
- className: 'Table-dragCell'
647
- });
648
- columns = columns.map(function (item, index) { return (tslib.__assign(tslib.__assign({}, item), { index: index, rawIndex: index - PARTITION_INDEX, type: item.type || 'plain', pristine: item, toggled: item.toggled !== false, breakpoint: item.breakpoint, isPrimary: index === PARTITION_INDEX, className: item.className || '',
649
- /** 提前映射变量,方便后续view中使用 */
650
- label: isPureVariable.isPureVariable(item.label)
651
- ? resolveVariableAndFilter.resolveVariableAndFilter(item.label, self.data)
652
- : item.label })); });
653
- self.columns.replace(columns);
654
- }
655
- }
656
- function updateColumns(columns) {
657
- if (columns && Array.isArray(columns)) {
658
- columns = columns.filter(function (column) { return column; }).concat();
659
- if (!columns.length) {
660
- columns.push({
661
- type: 'text',
662
- label: '空'
663
- });
664
- }
665
- columns.unshift({
666
- type: '__expandme',
667
- toggable: false,
668
- className: 'Table-expandCell'
669
- });
670
- columns.unshift({
671
- type: '__checkme',
672
- fixed: 'left',
673
- toggable: false,
674
- className: 'Table-checkCell'
675
- });
676
- columns.unshift({
677
- type: '__dragme',
678
- toggable: false,
679
- className: 'Table-dragCell'
680
- });
681
- columns = columns.map(function (item, index) { return (tslib.__assign(tslib.__assign({}, item), { index: index, rawIndex: index - PARTITION_INDEX, type: item.type || 'plain', pristine: item.pristine || item, toggled: item.toggled !== false, breakpoint: item.breakpoint, isPrimary: index === PARTITION_INDEX,
682
- /** 提前映射变量,方便后续view中使用 */
683
- label: isPureVariable.isPureVariable(item.label)
684
- ? resolveVariableAndFilter.resolveVariableAndFilter(item.label, self.data)
685
- : item.label })); });
686
- self.columns.replace(columns);
687
- persistSaveToggledColumns();
688
- }
689
- }
690
- function combineCell(arr, keys) {
691
- if (!keys.length || !arr.length) {
692
- return arr;
693
- }
694
- var key = keys.shift();
695
- var rowIndex = 0;
696
- var row = arr[rowIndex];
697
- row.rowSpans[key] = 1;
698
- var value = resolveVariable.resolveVariable(key, row.data);
699
- for (var i = 1, len = arr.length; i < len; i++) {
700
- var current = arr[i];
701
- if (isEqual__default["default"](resolveVariable.resolveVariable(key, current.data), value)) {
702
- row.rowSpans[key] += 1;
703
- current.rowSpans[key] = 0;
704
- }
705
- else {
706
- if (row.rowSpans[key] > 1) {
707
- combineCell(arr.slice(rowIndex, i), keys.concat());
708
- }
709
- rowIndex = i;
710
- row = current;
711
- row.rowSpans[key] = 1;
712
- value = resolveVariable.resolveVariable(key, row.data);
713
- }
714
- }
715
- if (row.rowSpans[key] > 1 && keys.length) {
716
- combineCell(arr.slice(rowIndex, arr.length), keys.concat());
717
- }
718
- return arr;
719
- }
720
- function autoCombineCell(arr, columns, maxCount, fromIndex) {
721
- if (fromIndex === void 0) { fromIndex = 0; }
722
- if (!columns.length || !maxCount || !arr.length) {
723
- return arr;
724
- }
725
- // 如果是嵌套模式,通常第一列都是存在差异的,所以从第二列开始。
726
- fromIndex =
727
- fromIndex ||
728
- (arr.some(function (item) { return Array.isArray(item.children) && item.children.length; })
729
- ? 1
730
- : 0);
731
- var keys = [];
732
- for (var i = 0; i < columns.length; i++) {
733
- if (keys.length === maxCount) {
734
- break;
735
- }
736
- var column = columns[i];
737
- if ('__' === column.type.substring(0, 2)) {
738
- continue;
739
- }
740
- var key = column.name;
741
- if (!key) {
742
- break;
743
- }
744
- if (fromIndex > 0) {
745
- fromIndex--;
746
- }
747
- else {
748
- keys.push(key);
749
- }
750
- }
751
- return combineCell(arr, keys);
752
- }
753
- function initChildren(children, depth, pindex, parentId, path) {
754
- if (path === void 0) { path = ''; }
755
- depth += 1;
756
- return children.map(function (item, index) {
757
- var _a;
758
- item = object.isObject(item)
759
- ? item
760
- : {
761
- item: item
762
- };
763
- var id = (_a = item.__id) !== null && _a !== void 0 ? _a : helper.guid();
764
- return {
765
- // id: String(item && (item as any)[self.primaryField] || `${pindex}-${depth}-${key}`),
766
- id: String(id),
767
- parentId: String(parentId),
768
- key: String("".concat(pindex, "-").concat(depth, "-").concat(index)),
769
- path: "".concat(path).concat(index),
770
- depth: depth,
771
- index: index,
772
- newIndex: index,
773
- pristine: item,
774
- data: item,
775
- rowSpans: {},
776
- children: item && Array.isArray(item.children)
777
- ? initChildren(item.children, depth, index, id, "".concat(path).concat(index, "."))
778
- : [],
779
- expandable: !!((item && Array.isArray(item.children) && item.children.length) ||
780
- (self.footable && self.footableColumns.length))
781
- };
782
- });
783
- }
784
- function initRows(rows, getEntryId, reUseRow) {
785
- self.selectedRows.clear();
786
- // self.expandedRows.clear();
787
- /* 避免输入内容为非数组挂掉 */
788
- rows = !Array.isArray(rows) ? [] : rows;
789
- var arr = rows.map(function (item, index) {
790
- var _a;
791
- if (!object.isObject(item)) {
792
- item = {
793
- item: item
794
- };
795
- }
796
- var id = String(getEntryId ? getEntryId(item, index) : (_a = item.__id) !== null && _a !== void 0 ? _a : helper.guid());
797
- return {
798
- // id: getEntryId ? getEntryId(item, key) : String(item && (item as any)[self.primaryField] || `${key}-1-${key}`),
799
- id: id,
800
- key: String("".concat(index, "-1-").concat(index)),
801
- depth: 1,
802
- index: index,
803
- newIndex: index,
804
- pristine: item,
805
- path: "".concat(index),
806
- data: item,
807
- rowSpans: {},
808
- children: item && Array.isArray(item.children)
809
- ? initChildren(item.children, 1, index, id, "".concat(index, "."))
810
- : [],
811
- expandable: !!((item && Array.isArray(item.children) && item.children.length) ||
812
- (self.footable && self.footableColumns.length))
813
- };
814
- });
815
- if (self.combineNum) {
816
- arr = autoCombineCell(arr, self.columns, self.combineNum, self.combineFromIndex);
817
- }
818
- replaceRow(arr, reUseRow);
819
- self.isNested = self.rows.some(function (item) { return item.children.length; });
820
- var expand = self.footable && self.footable.expand;
821
- if (expand === 'first' ||
822
- (self.expandConfig && self.expandConfig.expand === 'first')) {
823
- self.rows.length && self.expandedRows.push(self.rows[0].id);
824
- }
825
- else if ((expand === 'all' && !self.footable.accordion) ||
826
- (self.expandConfig &&
827
- self.expandConfig.expand === 'all' &&
828
- !self.expandConfig.accordion)) {
829
- self.expandedRows.replace(self.rows.map(function (item) { return item.id; }));
830
- }
831
- self.dragging = false;
832
- }
833
- // 尽可能的复用 row
834
- function replaceRow(arr, reUseRow) {
835
- if (reUseRow === false) {
836
- self.rows.replace(arr.map(function (item) { return Row.create(item); }));
837
- return;
838
- }
839
- var pool = arr.concat();
840
- // 把多的删了先
841
- if (self.rows.length > arr.length) {
842
- self.rows.splice(arr.length, self.rows.length - arr.length);
843
- }
844
- var index = 0;
845
- var len = self.rows.length;
846
- while (pool.length) {
847
- var item = pool.shift();
848
- if (index < len) {
849
- self.rows[index].replaceWith(item);
850
- }
851
- else {
852
- var row = Row.create(item);
853
- self.rows.push(row);
854
- }
855
- index++;
856
- }
857
- }
858
- function updateSelected(selected, valueField) {
859
- self.selectedRows.clear();
860
- helper.eachTree(self.rows, function (item) {
861
- if (~selected.indexOf(item.pristine)) {
862
- self.selectedRows.push(item.id);
863
- }
864
- else if (find__default["default"](selected, function (a) {
865
- return a[valueField || 'value'] &&
866
- a[valueField || 'value'] == item.pristine[valueField || 'value'];
867
- })) {
868
- self.selectedRows.push(item.id);
869
- }
870
- });
871
- updateCheckDisable();
872
- }
873
- function getSelectedRows() {
874
- var _a;
875
- var maxLength = self.maxKeepItemSelectionLength;
876
- var keep = self.keepItemSelectionOnPageChange;
877
- var selectedItems = (_a = self.data) === null || _a === void 0 ? void 0 : _a.selectedItems;
878
- if (keep &&
879
- maxLength &&
880
- selectedItems &&
881
- maxLength >= selectedItems.length) {
882
- var restCheckableRows = self.checkableRows.filter(function (item) { return !item.checked; });
883
- var checkableRows = restCheckableRows.filter(function (item, i) { return i < maxLength - selectedItems.length; });
884
- return tslib.__spreadArray(tslib.__spreadArray([], self.selectedRows, true), checkableRows, true);
885
- }
886
- else {
887
- return self.checkableRows;
888
- }
889
- }
890
- function toggleAll() {
891
- if (self.allChecked) {
892
- self.selectedRows.clear();
893
- }
894
- else {
895
- self.selectedRows.replace(getSelectedRows());
896
- }
897
- }
898
- // 记录最近一次点击的多选框,主要用于 shift 多选时判断上一个选的是什么
899
- var lastCheckedRow = null;
900
- function toggle(row) {
901
- if (!row.checkable) {
902
- return;
903
- }
904
- lastCheckedRow = row;
905
- var idx = self.selectedRows.indexOf(row);
906
- if (self.multiple) {
907
- ~idx ? self.selectedRows.splice(idx, 1) : self.selectedRows.push(row);
908
- }
909
- else {
910
- ~idx
911
- ? self.selectedRows.splice(idx, 1)
912
- : self.selectedRows.replace([row]);
913
- }
914
- }
915
- // 按住 shift 的时候点击选项
916
- function toggleShift(row) {
917
- // 如果是同一个或非 multiple 模式下就和不用 shift 一样
918
- if (!lastCheckedRow || row === lastCheckedRow || !self.multiple) {
919
- toggle(row);
920
- return;
921
- }
922
- var maxLength = self.maxKeepItemSelectionLength;
923
- var checkableRows = self.checkableRows;
924
- var lastCheckedRowIndex = checkableRows.findIndex(function (row) { return row === lastCheckedRow; });
925
- var rowIndex = checkableRows.findIndex(function (rowItem) { return row === rowItem; });
926
- var minIndex = lastCheckedRowIndex > rowIndex ? rowIndex : lastCheckedRowIndex;
927
- var maxIndex = lastCheckedRowIndex > rowIndex ? lastCheckedRowIndex : rowIndex;
928
- var rows = checkableRows.slice(minIndex, maxIndex);
929
- rows.push(row); // 将当前行也加入进行判断
930
- for (var _i = 0, rows_1 = rows; _i < rows_1.length; _i++) {
931
- var rowItem = rows_1[_i];
932
- var idx = self.selectedRows.indexOf(rowItem);
933
- if (idx === -1) {
934
- // 如果上一个是选中状态,则将之间的所有 check 都变成可选
935
- if (lastCheckedRow.checked) {
936
- if (maxLength) {
937
- if (self.selectedRows.length < maxLength) {
938
- self.selectedRows.push(rowItem);
939
- }
940
- }
941
- else {
942
- self.selectedRows.push(rowItem);
943
- }
944
- }
945
- }
946
- else {
947
- if (!lastCheckedRow.checked) {
948
- self.selectedRows.splice(idx, 1);
949
- }
950
- }
951
- }
952
- lastCheckedRow = row;
953
- }
954
- function updateCheckDisable() {
955
- if (!self.data) {
956
- return;
957
- }
958
- var maxLength = self.maxKeepItemSelectionLength;
959
- var selectedItems = self.data.selectedItems;
960
- self.selectedRows.map(function (item) { return item.setCheckdisable(false); });
961
- if (maxLength && maxLength <= selectedItems.length) {
962
- self.unSelectedRows.map(function (item) { return !item.checked && item.setCheckdisable(true); });
963
- }
964
- else {
965
- self.unSelectedRows.map(function (item) { return item.checkdisable && item.setCheckdisable(false); });
966
- }
967
- }
968
- function clear() {
969
- self.selectedRows.clear();
970
- }
971
- function toggleExpandAll() {
972
- if (self.allExpanded) {
973
- self.expandedRows.clear();
974
- }
975
- else {
976
- self.expandedRows.replace(self.rows.filter(function (item) { return item.expandable; }).map(function (item) { return item.id; }));
977
- }
978
- }
979
- function toggleExpanded(row) {
980
- var idx = self.expandedRows.indexOf(row.id);
981
- if (~idx) {
982
- self.expandedRows.splice(idx, 1);
983
- }
984
- else if (self.footable && self.footable.accordion) {
985
- self.expandedRows.replace([row.id]);
986
- }
987
- else if (self.expandConfig && self.expandConfig.accordion) {
988
- var rows = self
989
- .getExpandedRows()
990
- .filter(function (item) { return item.depth !== row.depth; });
991
- rows.push(row);
992
- self.expandedRows.replace(rows.map(function (item) { return item.id; }));
993
- }
994
- else {
995
- self.expandedRows.push(row.id);
996
- }
997
- }
998
- function collapseAllAtDepth(depth) {
999
- var rows = self.getExpandedRows().filter(function (item) { return item.depth !== depth; });
1000
- self.expandedRows.replace(rows.map(function (item) { return item.id; }));
1001
- }
1002
- function setOrderByInfo(key, direction) {
1003
- self.orderBy = key;
1004
- self.orderDir = key ? direction : '';
1005
- }
1006
- function reset() {
1007
- self.rows.forEach(function (item) { return item.reset(); });
1008
- var rows = self.rows.concat();
1009
- helper.eachTree(rows, function (item) {
1010
- if (item.children) {
1011
- var rows_2 = item.children.concat().sort(function (a, b) { return a.index - b.index; });
1012
- rows_2.forEach(function (item) { return item.reset(); });
1013
- item.children.replace(rows_2);
1014
- }
1015
- });
1016
- rows.forEach(function (item) { return item.reset(); });
1017
- rows = rows.sort(function (a, b) { return a.index - b.index; });
1018
- self.rows.replace(rows);
1019
- self.dragging = false;
1020
- }
1021
- function toggleDragging() {
1022
- self.dragging = !self.dragging;
1023
- }
1024
- function stopDragging() {
1025
- self.dragging = false;
1026
- }
1027
- function exchange(fromIndex, toIndex, item) {
1028
- item = item || self.rows[fromIndex];
1029
- if (item.parentId) {
1030
- var parent_1 = self.getRowById(item.parentId);
1031
- var offset = parent_1.children.indexOf(item) - fromIndex;
1032
- toIndex += offset;
1033
- fromIndex += offset;
1034
- var newRows_1 = parent_1.children.concat();
1035
- newRows_1.splice(fromIndex, 1);
1036
- newRows_1.splice(toIndex, 0, item);
1037
- newRows_1.forEach(function (item, index) { return (item.newIndex = index); });
1038
- parent_1.children.replace(newRows_1);
1039
- return;
1040
- }
1041
- var newRows = self.rows.concat();
1042
- newRows.splice(fromIndex, 1);
1043
- newRows.splice(toIndex, 0, item);
1044
- newRows.forEach(function (item, index) { return (item.newIndex = index); });
1045
- self.rows.replace(newRows);
1046
- }
1047
- /**
1048
- * 前端持久化记录列排序,查询字段,显示列信息
1049
- */
1050
- function persistSaveToggledColumns() {
1051
- var key = getPersistDataKey(self.columnsData);
1052
- localStorage.setItem(key, JSON.stringify({
1053
- // 可显示列index, 原始配置中存在 toggled: false 的列不持久化
1054
- toggledColumnIndex: self.activeToggaleColumns
1055
- .filter(function (item) { var _a; return !(((_a = item.pristine) === null || _a === void 0 ? void 0 : _a.toggled) === false); })
1056
- .map(function (item) { return item.index; }),
1057
- // 列排序,name,label可能不存在
1058
- columnOrder: self.columnsData.map(function (item) { return item.name || item.label || item.rawIndex; }),
1059
- // 已激活的可查询列
1060
- enabledSearchableColumn: self.activedSearchableColumns.map(function (item) { return item.name; })
1061
- }));
1062
- }
1063
- function addForm(form, rowIndex) {
1064
- self.formsRef.push({
1065
- id: form.id,
1066
- rowIndex: rowIndex
1067
- });
1068
- }
1069
- function toggleAllColumns() {
1070
- if (self.activeToggaleColumns.length) {
1071
- if (self.activeToggaleColumns.length === self.toggableColumns.length) {
1072
- self.toggableColumns.map(function (column) { return column.setToggled(false); });
1073
- }
1074
- else {
1075
- self.toggableColumns.map(function (column) { return column.setToggled(true); });
1076
- }
1077
- }
1078
- else {
1079
- // 如果没有一个激活的,那就改成全选
1080
- self.toggableColumns.map(function (column) { return column.setToggled(true); });
1081
- }
1082
- persistSaveToggledColumns();
1083
- }
1084
- function getPersistDataKey(columns) {
1085
- // 这里的columns使用除了__开头的所有列
1086
- // sort保证存储和读取的key值保持一致
1087
- return (location.pathname +
1088
- self.path +
1089
- sortBy__default["default"](columns.map(function (item, index) { return item.name || item.label || index; })).join('-'));
1090
- }
1091
- function setSearchFormExpanded(value) {
1092
- self.searchFormExpanded = !!value;
1093
- }
1094
- function toggleSearchFormExpanded() {
1095
- self.searchFormExpanded = !self.searchFormExpanded;
1096
- }
1097
- return {
1098
- update: update,
1099
- updateColumns: updateColumns,
1100
- initRows: initRows,
1101
- updateSelected: updateSelected,
1102
- toggleAll: toggleAll,
1103
- getSelectedRows: getSelectedRows,
1104
- toggle: toggle,
1105
- toggleShift: toggleShift,
1106
- toggleExpandAll: toggleExpandAll,
1107
- toggleExpanded: toggleExpanded,
1108
- collapseAllAtDepth: collapseAllAtDepth,
1109
- clear: clear,
1110
- setOrderByInfo: setOrderByInfo,
1111
- reset: reset,
1112
- toggleDragging: toggleDragging,
1113
- stopDragging: stopDragging,
1114
- exchange: exchange,
1115
- addForm: addForm,
1116
- toggleAllColumns: toggleAllColumns,
1117
- persistSaveToggledColumns: persistSaveToggledColumns,
1118
- setSearchFormExpanded: setSearchFormExpanded,
1119
- toggleSearchFormExpanded: toggleSearchFormExpanded,
1120
- // events
1121
- afterCreate: function () {
1122
- setTimeout(function () {
1123
- if (!mobxStateTree.isAlive(self)) {
1124
- return;
1125
- }
1126
- var key = getPersistDataKey(self.columnsData);
1127
- var data = localStorage.getItem(key);
1128
- if (data) {
1129
- var tableMetaData_1 = JSON.parse(data);
1130
- var toggledColumns_1 = object.isObject(tableMetaData_1)
1131
- ? tableMetaData_1 === null || tableMetaData_1 === void 0 ? void 0 : tableMetaData_1.toggledColumnIndex
1132
- : tableMetaData_1; // 兼容之前的类型
1133
- self.toggableColumns.forEach(function (item) {
1134
- return item.setToggled(!!~toggledColumns_1.indexOf(item.index));
1135
- });
1136
- self.searchableColumns.forEach(function (item) {
1137
- var _a;
1138
- item.setEnableSearch(!!~((_a = tableMetaData_1 === null || tableMetaData_1 === void 0 ? void 0 : tableMetaData_1.enabledSearchableColumn) !== null && _a !== void 0 ? _a : []).indexOf(item.name));
1139
- });
1140
- }
1141
- }, 200);
1142
- }
1143
- };
1144
- });
1145
-
1146
- exports.Column = Column;
1147
- exports.Row = Row;
1148
- exports.TableStore = TableStore;