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,847 +0,0 @@
1
- /**
2
- * amis-core v2.6.0
3
- * Copyright 2018-2022 fex
4
- */
5
-
6
- import { __generator, __assign } from 'tslib';
7
- import { types, flow, getEnv, isAlive } from 'mobx-state-tree';
8
- import isEqualWith from 'lodash/isEqualWith';
9
- import { FormStore } from './form.js';
10
- import { validate, str2rules } from '../utils/validations.js';
11
- import { ComboStore } from './combo.js';
12
- import { evalExpression } from '../utils/tpl.js';
13
- import { isEffectiveApi, buildApi } from '../utils/api.js';
14
- import findIndex from 'lodash/findIndex';
15
- import { findTree, spliceTree, flattenTree, findTreeIndex, isObjectShallowModified, filterTree, isArrayChildrenModified } from '../utils/helper.js';
16
- import find from 'lodash/find';
17
- import isPlainObject from 'lodash/isPlainObject';
18
- import { SimpleMap } from '../utils/SimpleMap.js';
19
- import { StoreNode } from './node.js';
20
- import { getStoreById } from './manager.js';
21
- import { normalizeOptions } from '../utils/normalizeOptions.js';
22
- import { optionValueCompare } from '../utils/optionValueCompare.js';
23
- import { dataMapping } from '../utils/dataMapping.js';
24
- import { createObject } from '../utils/object.js';
25
-
26
- var ErrorDetail = types.model('ErrorDetail', {
27
- msg: '',
28
- tag: '',
29
- rule: ''
30
- });
31
- var FormItemStore = StoreNode.named('FormItemStore')
32
- .props({
33
- isFocused: false,
34
- type: '',
35
- label: '',
36
- unique: false,
37
- loading: false,
38
- required: false,
39
- tmpValue: types.frozen(),
40
- emitedValue: types.frozen(),
41
- rules: types.optional(types.frozen(), {}),
42
- messages: types.optional(types.frozen(), {}),
43
- errorData: types.optional(types.array(ErrorDetail), []),
44
- name: types.string,
45
- itemId: '',
46
- unsetValueOnInvisible: false,
47
- itemsRef: types.optional(types.array(types.string), []),
48
- validated: false,
49
- validating: false,
50
- multiple: false,
51
- delimiter: ',',
52
- valueField: 'value',
53
- labelField: 'label',
54
- joinValues: true,
55
- extractValue: false,
56
- options: types.optional(types.frozen(), []),
57
- expressionsInOptions: false,
58
- selectFirst: false,
59
- autoFill: types.frozen(),
60
- clearValueOnHidden: false,
61
- validateApi: types.optional(types.frozen(), ''),
62
- selectedOptions: types.optional(types.frozen(), []),
63
- filteredOptions: types.optional(types.frozen(), []),
64
- dialogSchema: types.frozen(),
65
- dialogOpen: false,
66
- dialogData: types.frozen(),
67
- resetValue: types.optional(types.frozen(), ''),
68
- validateOnChange: false
69
- })
70
- .views(function (self) {
71
- function getForm() {
72
- var form = self.parentStore;
73
- return (form === null || form === void 0 ? void 0 : form.storeType) === FormStore.name ? form : undefined;
74
- }
75
- function getValue() {
76
- var _a;
77
- return (_a = getForm()) === null || _a === void 0 ? void 0 : _a.getValueByName(self.name);
78
- }
79
- function getLastOptionValue() {
80
- if (self.selectedOptions.length) {
81
- return self.selectedOptions[self.selectedOptions.length - 1].value;
82
- }
83
- return '';
84
- }
85
- function getErrors() {
86
- return self.errorData.map(function (item) { return item.msg; });
87
- }
88
- return {
89
- get subFormItems() {
90
- return self.itemsRef.map(function (item) { return getStoreById(item); });
91
- },
92
- get form() {
93
- return getForm();
94
- },
95
- get value() {
96
- return getValue();
97
- },
98
- get prinstine() {
99
- var _a;
100
- return (_a = getForm()) === null || _a === void 0 ? void 0 : _a.getPristineValueByName(self.name);
101
- },
102
- get errors() {
103
- return getErrors();
104
- },
105
- get valid() {
106
- var errors = getErrors();
107
- return !!(!errors || !errors.length);
108
- },
109
- get errClassNames() {
110
- return self.errorData
111
- .map(function (item) { return item.rule; })
112
- .filter(function (item, index, arr) { return item && arr.indexOf(item) === index; })
113
- .map(function (item) { return "has-error--".concat(item); })
114
- .join(' ');
115
- },
116
- get lastSelectValue() {
117
- return getLastOptionValue();
118
- },
119
- getSelectedOptions: function (value, nodeValueArray) {
120
- if (value === void 0) { value = self.tmpValue; }
121
- if (typeof value === 'undefined') {
122
- return [];
123
- }
124
- var valueArray = nodeValueArray
125
- ? nodeValueArray
126
- : Array.isArray(value)
127
- ? value
128
- : typeof value === 'string'
129
- ? value.split(self.delimiter || ',')
130
- : [value];
131
- var selected = valueArray.map(function (item) {
132
- return item && item.hasOwnProperty(self.valueField || 'value')
133
- ? item[self.valueField || 'value']
134
- : item;
135
- });
136
- var selectedOptions = [];
137
- selected.forEach(function (item, index) {
138
- var _a, _b;
139
- var matched = findTree(self.filteredOptions, optionValueCompare(item, self.valueField || 'value'));
140
- if (matched) {
141
- selectedOptions.push(matched);
142
- }
143
- else {
144
- var unMatched = (valueArray && valueArray[index]) || item;
145
- if (unMatched &&
146
- (typeof unMatched === 'string' || typeof unMatched === 'number')) {
147
- unMatched = (_a = {},
148
- _a[self.valueField || 'value'] = item,
149
- _a[self.labelField || 'label'] = item,
150
- _a.__unmatched = true,
151
- _a);
152
- }
153
- else if (unMatched && self.extractValue) {
154
- unMatched = (_b = {},
155
- _b[self.valueField || 'value'] = item,
156
- _b[self.labelField || 'label'] = 'UnKnown',
157
- _b.__unmatched = true,
158
- _b);
159
- }
160
- unMatched && selectedOptions.push(unMatched);
161
- }
162
- });
163
- return selectedOptions;
164
- }
165
- };
166
- })
167
- .actions(function (self) {
168
- self.form;
169
- var dialogCallbacks = new SimpleMap();
170
- var loadAutoUpdateCancel = null;
171
- function config(_a) {
172
- var required = _a.required, unique = _a.unique; _a.value; var rules = _a.rules, messages = _a.messages, delimiter = _a.delimiter, multiple = _a.multiple, valueField = _a.valueField, labelField = _a.labelField, joinValues = _a.joinValues, extractValue = _a.extractValue, type = _a.type, id = _a.id, selectFirst = _a.selectFirst, autoFill = _a.autoFill, clearValueOnHidden = _a.clearValueOnHidden, validateApi = _a.validateApi, maxLength = _a.maxLength, minLength = _a.minLength, validateOnChange = _a.validateOnChange, label = _a.label;
173
- if (typeof rules === 'string') {
174
- rules = str2rules(rules);
175
- }
176
- typeof type !== 'undefined' && (self.type = type);
177
- typeof id !== 'undefined' && (self.itemId = id);
178
- typeof messages !== 'undefined' && (self.messages = messages);
179
- typeof required !== 'undefined' && (self.required = !!required);
180
- typeof unique !== 'undefined' && (self.unique = !!unique);
181
- typeof multiple !== 'undefined' && (self.multiple = !!multiple);
182
- typeof selectFirst !== 'undefined' && (self.selectFirst = !!selectFirst);
183
- typeof autoFill !== 'undefined' && (self.autoFill = autoFill);
184
- typeof joinValues !== 'undefined' && (self.joinValues = !!joinValues);
185
- typeof extractValue !== 'undefined' &&
186
- (self.extractValue = !!extractValue);
187
- typeof delimiter !== 'undefined' &&
188
- (self.delimiter = delimiter || ',');
189
- typeof valueField !== 'undefined' &&
190
- (self.valueField = valueField || 'value');
191
- typeof labelField !== 'undefined' &&
192
- (self.labelField = labelField || 'label');
193
- typeof clearValueOnHidden !== 'undefined' &&
194
- (self.clearValueOnHidden = !!clearValueOnHidden);
195
- typeof validateApi !== 'undefined' && (self.validateApi = validateApi);
196
- typeof validateOnChange !== 'undefined' &&
197
- (self.validateOnChange = !!validateOnChange);
198
- typeof label === 'string' && (self.label = label);
199
- rules = __assign(__assign({}, rules), { isRequired: self.required || (rules === null || rules === void 0 ? void 0 : rules.isRequired) });
200
- // todo 这个弄个配置由渲染器自己来决定
201
- // 暂时先这样
202
- if (~['input-text', 'textarea'].indexOf(self.type)) {
203
- if (typeof minLength === 'number') {
204
- rules.minLength = minLength;
205
- }
206
- if (typeof maxLength === 'number') {
207
- rules.maxLength = maxLength;
208
- }
209
- }
210
- if (isObjectShallowModified(rules, self.rules)) {
211
- self.rules = rules;
212
- clearError('builtin');
213
- self.validated = false;
214
- }
215
- }
216
- function focus() {
217
- self.isFocused = true;
218
- }
219
- function blur() {
220
- self.isFocused = false;
221
- }
222
- var validateCancel = null;
223
- var validate$1 = flow(function validate$1(data, hook, customRules) {
224
- var json, combo, group;
225
- var _a;
226
- var _b, _c, _d, _e, _f;
227
- return __generator(this, function (_g) {
228
- switch (_g.label) {
229
- case 0:
230
- if (self.validating && !isEffectiveApi(self.validateApi, data)) {
231
- return [2 /*return*/, self.valid];
232
- }
233
- self.validating = true;
234
- clearError();
235
- if (!hook) return [3 /*break*/, 2];
236
- return [4 /*yield*/, hook()];
237
- case 1:
238
- _g.sent();
239
- _g.label = 2;
240
- case 2:
241
- addError(validate(self.tmpValue, data, customRules ? str2rules(customRules) : self.rules, self.messages, self.__));
242
- if (!(!self.errors.length && isEffectiveApi(self.validateApi, data))) return [3 /*break*/, 4];
243
- if (validateCancel) {
244
- validateCancel();
245
- validateCancel = null;
246
- }
247
- return [4 /*yield*/, getEnv(self).fetcher(self.validateApi,
248
- /** 如果配置validateApi,需要将用户最新输入同步到数据域内 */
249
- createObject(data, (_a = {}, _a[self.name] = self.tmpValue, _a)), {
250
- cancelExecutor: function (executor) { return (validateCancel = executor); }
251
- })];
252
- case 3:
253
- json = _g.sent();
254
- validateCancel = null;
255
- if (!json.ok && json.status === 422 && json.errors) {
256
- addError(String((_d = (_c = (_b = self.validateApi) === null || _b === void 0 ? void 0 : _b.messages) === null || _c === void 0 ? void 0 : _c.failed) !== null && _d !== void 0 ? _d : (json.errors || json.msg || "\u8868\u5355\u9879\u300C".concat(self.name, "\u300D\u6821\u9A8C\u5931\u8D25"))));
257
- }
258
- _g.label = 4;
259
- case 4:
260
- self.validated = true;
261
- if (self.unique && ((_f = (_e = self.form) === null || _e === void 0 ? void 0 : _e.parentStore) === null || _f === void 0 ? void 0 : _f.storeType) === 'ComboStore') {
262
- combo = self.form.parentStore;
263
- group = combo.uniques.get(self.name);
264
- if (group.items.some(function (item) {
265
- return item !== self &&
266
- self.tmpValue !== undefined &&
267
- self.tmpValue !== '' &&
268
- item.value === self.tmpValue;
269
- })) {
270
- addError(self.__('Form.unique'));
271
- }
272
- }
273
- self.validating = false;
274
- return [2 /*return*/, self.valid];
275
- }
276
- });
277
- });
278
- function setError(msg, tag) {
279
- if (tag === void 0) { tag = 'builtin'; }
280
- clearError();
281
- addError(msg, tag);
282
- }
283
- function addError(msg, tag) {
284
- if (tag === void 0) { tag = 'builtin'; }
285
- var msgs = Array.isArray(msg) ? msg : [msg];
286
- msgs.forEach(function (item) {
287
- return self.errorData.push({
288
- msg: typeof item === 'string' ? item : item.msg,
289
- rule: typeof item !== 'string' ? item.rule : undefined,
290
- tag: tag
291
- });
292
- });
293
- }
294
- function clearError(tag) {
295
- if (tag) {
296
- var filtered = self.errorData.filter(function (item) { return item.tag !== tag; });
297
- self.errorData.replace(filtered);
298
- }
299
- else {
300
- self.errorData.clear();
301
- }
302
- }
303
- function getFirstAvaibleOption(options) {
304
- if (!Array.isArray(options)) {
305
- return;
306
- }
307
- for (var _i = 0, options_1 = options; _i < options_1.length; _i++) {
308
- var option = options_1[_i];
309
- if (Array.isArray(option.children)) {
310
- var childFirst = getFirstAvaibleOption(option.children);
311
- if (childFirst !== undefined) {
312
- return childFirst;
313
- }
314
- }
315
- else if (option[self.valueField || 'value'] != null &&
316
- !option.disabled) {
317
- return option;
318
- }
319
- }
320
- }
321
- function setOptions(options, onChange, data) {
322
- if (!Array.isArray(options)) {
323
- return;
324
- }
325
- options = filterTree(options, function (item) { return item; });
326
- var originOptions = self.options.concat();
327
- self.options = options;
328
- syncOptions(originOptions, data);
329
- var selectedOptions;
330
- if (onChange &&
331
- self.selectFirst &&
332
- self.filteredOptions.length &&
333
- (selectedOptions = self.getSelectedOptions(self.value)) &&
334
- !selectedOptions.filter(function (item) { return !item.__unmatched; }).length) {
335
- var fistOption = getFirstAvaibleOption(self.filteredOptions);
336
- if (!fistOption) {
337
- return;
338
- }
339
- var list = [fistOption].map(function (item) {
340
- if (self.extractValue || self.joinValues) {
341
- return item[self.valueField || 'value'];
342
- }
343
- return item;
344
- });
345
- var value = self.joinValues && self.multiple
346
- ? list.join(self.delimiter)
347
- : self.multiple
348
- ? list
349
- : list[0];
350
- onChange(value);
351
- }
352
- }
353
- var loadCancel = null;
354
- var fetchOptions = flow(function getInitData(api, data, config, setErrorFlag) {
355
- var json, result, apiObject, e_1, env;
356
- var _a, _b, _c, _d, _e;
357
- return __generator(this, function (_f) {
358
- switch (_f.label) {
359
- case 0:
360
- _f.trys.push([0, 2, , 3]);
361
- if (loadCancel) {
362
- loadCancel();
363
- loadCancel = null;
364
- self.loading = false;
365
- }
366
- if (!(config === null || config === void 0 ? void 0 : config.silent)) {
367
- self.loading = true;
368
- }
369
- return [4 /*yield*/, getEnv(self).fetcher(api, data, __assign({ autoAppend: false, cancelExecutor: function (executor) { return (loadCancel = executor); } }, config))];
370
- case 1:
371
- json = _f.sent();
372
- loadCancel = null;
373
- result = null;
374
- if (!json.ok) {
375
- apiObject = buildApi(api, data);
376
- setErrorFlag !== false &&
377
- setError(self.__('Form.loadOptionsFailed', {
378
- reason: (_c = (_b = (_a = apiObject.messages) === null || _a === void 0 ? void 0 : _a.failed) !== null && _b !== void 0 ? _b : json.msg) !== null && _c !== void 0 ? _c : (config && config.errorMessage)
379
- }));
380
- getEnv(self).notify('error', (_e = (_d = apiObject.messages) === null || _d === void 0 ? void 0 : _d.failed) !== null && _e !== void 0 ? _e : (self.errors.join('') || "".concat(apiObject.url, "\uFF1A").concat(json.msg)), json.msgTimeout !== undefined
381
- ? {
382
- closeButton: true,
383
- timeout: json.msgTimeout
384
- }
385
- : undefined);
386
- }
387
- else {
388
- result = json;
389
- }
390
- self.loading = false;
391
- return [2 /*return*/, result];
392
- case 2:
393
- e_1 = _f.sent();
394
- env = getEnv(self);
395
- if (!isAlive(self) || self.disposed) {
396
- return [2 /*return*/];
397
- }
398
- self.loading = false;
399
- if (env.isCancel(e_1)) {
400
- return [2 /*return*/];
401
- }
402
- console.error(e_1);
403
- env.notify('error', e_1.message);
404
- return [2 /*return*/];
405
- case 3: return [2 /*return*/];
406
- }
407
- });
408
- });
409
- var loadOptions = flow(function getInitData(api, data, config, clearValue, onChange, setErrorFlag) {
410
- var json, options;
411
- var _a, _b, _c;
412
- return __generator(this, function (_d) {
413
- switch (_d.label) {
414
- case 0: return [4 /*yield*/, fetchOptions(api, data, config, setErrorFlag)];
415
- case 1:
416
- json = _d.sent();
417
- if (!json) {
418
- return [2 /*return*/];
419
- }
420
- clearError();
421
- self.validated = false; // 拉完数据应该需要再校验一下
422
- options = ((_a = json.data) === null || _a === void 0 ? void 0 : _a.options) ||
423
- ((_b = json.data) === null || _b === void 0 ? void 0 : _b.items) ||
424
- ((_c = json.data) === null || _c === void 0 ? void 0 : _c.rows) ||
425
- json.data ||
426
- [];
427
- options = normalizeOptions(options, undefined, self.valueField);
428
- if ((config === null || config === void 0 ? void 0 : config.extendsOptions) && self.selectedOptions.length > 0) {
429
- self.selectedOptions.forEach(function (item) {
430
- var exited = findTree(options, optionValueCompare(item, self.valueField || 'value'));
431
- if (!exited) {
432
- options.push(item);
433
- }
434
- });
435
- }
436
- setOptions(options, onChange, data);
437
- if (json.data && typeof json.data.value !== 'undefined') {
438
- onChange && onChange(json.data.value, false, true);
439
- }
440
- else if (clearValue && !self.selectFirst) {
441
- self.selectedOptions.some(function (item) { return item.__unmatched; }) &&
442
- onChange &&
443
- onChange('', false, true);
444
- }
445
- return [2 /*return*/, json];
446
- }
447
- });
448
- });
449
- var loadAutoUpdateData = flow(function getAutoUpdateData(api, data, silent) {
450
- var json, result;
451
- var _a, _b;
452
- if (silent === void 0) { silent = true; }
453
- return __generator(this, function (_c) {
454
- switch (_c.label) {
455
- case 0:
456
- if (loadAutoUpdateCancel) {
457
- loadAutoUpdateCancel();
458
- loadAutoUpdateCancel = null;
459
- }
460
- return [4 /*yield*/, getEnv(self).fetcher(api, data, {
461
- cancelExecutor: function (executor) {
462
- return (loadAutoUpdateCancel = executor);
463
- }
464
- })];
465
- case 1:
466
- json = _c.sent();
467
- loadAutoUpdateCancel = null;
468
- if (!json) {
469
- return [2 /*return*/];
470
- }
471
- result = ((_a = json.data) === null || _a === void 0 ? void 0 : _a.items) || ((_b = json.data) === null || _b === void 0 ? void 0 : _b.rows);
472
- // 只处理仅有一个结果的数据
473
- if ((result === null || result === void 0 ? void 0 : result.length) === 1) {
474
- return [2 /*return*/, result[0]];
475
- }
476
- else if (isPlainObject(json.data)) {
477
- return [2 /*return*/, json.data];
478
- }
479
- !silent &&
480
- getEnv(self).notify('info', self.__('FormItem.autoFillLoadFailed'));
481
- return [2 /*return*/];
482
- }
483
- });
484
- });
485
- var tryDeferLoadLeftOptions = flow(function (option, leftOptions, api, data, config) {
486
- var indexes, leftIndexes, topOption, json, options, newLeftOptions, children_1;
487
- var _a;
488
- return __generator(this, function (_b) {
489
- switch (_b.label) {
490
- case 0:
491
- if (!Array.isArray(leftOptions)) {
492
- return [2 /*return*/];
493
- }
494
- indexes = findTreeIndex(self.options, function (item) { return item.leftOptions === leftOptions; });
495
- leftIndexes = findTreeIndex(leftOptions, function (item) { return item === option; });
496
- topOption = findTree(self.options, function (item) { return item.leftOptions === leftOptions; });
497
- if (!indexes || !leftIndexes || !topOption) {
498
- return [2 /*return*/];
499
- }
500
- setOptions(spliceTree(self.options, indexes, 1, __assign(__assign({}, topOption), { loading: true, leftOptions: spliceTree(topOption.leftOptions, leftIndexes, 1, __assign(__assign({}, option), { loading: true })) })), undefined, data);
501
- return [4 /*yield*/, fetchOptions(api, data, __assign(__assign({}, config), { silent: true }), false)];
502
- case 1:
503
- json = _b.sent();
504
- if (!json) {
505
- setOptions(spliceTree(self.options, indexes, 1, __assign(__assign({}, topOption), { loading: false, error: true, leftOptions: spliceTree(topOption.leftOptions, leftIndexes, 1, __assign(__assign({}, option), { loading: false, error: true })) })), undefined, data);
506
- return [2 /*return*/];
507
- }
508
- options = ((_a = json.data) === null || _a === void 0 ? void 0 : _a.options) ||
509
- json.data.items ||
510
- json.data.rows ||
511
- json.data ||
512
- [];
513
- newLeftOptions = spliceTree(topOption.leftOptions, leftIndexes, 1, __assign(__assign({}, option), { loading: false, loaded: true, children: options }));
514
- setOptions(spliceTree(self.options, indexes, 1, __assign(__assign({}, topOption), { loading: false, loaded: true, children: options, leftOptions: newLeftOptions })), undefined, data);
515
- // 插入新的子节点,用于之后BaseSelection.resolveSelected查找
516
- if (Array.isArray(topOption.children)) {
517
- children_1 = topOption.children.concat();
518
- flattenTree(newLeftOptions).forEach(function (item) {
519
- if (!findTree(topOption.children, function (node) { return node.ref === item.value; })) {
520
- children_1.push({ ref: item.value, defer: true });
521
- }
522
- });
523
- setOptions(spliceTree(self.options, indexes, 1, __assign(__assign({}, topOption), { leftOptions: newLeftOptions, children: children_1 })), undefined, data);
524
- }
525
- return [2 /*return*/, json];
526
- }
527
- });
528
- });
529
- var deferLoadLeftOptions = flow(function (option, leftOptions, api, data, config) {
530
- return __generator(this, function (_a) {
531
- switch (_a.label) {
532
- case 0: return [4 /*yield*/, tryDeferLoadLeftOptions(option, leftOptions, api, data, config)];
533
- case 1: return [2 /*return*/, _a.sent()];
534
- }
535
- });
536
- });
537
- var deferLoadOptions = flow(function (option, api, data, config) {
538
- var labelField, valueField, indexes, leftOptions, json, options;
539
- var _a, _b;
540
- return __generator(this, function (_c) {
541
- switch (_c.label) {
542
- case 0:
543
- labelField = self.labelField || 'label';
544
- valueField = self.valueField || 'value';
545
- indexes = findTreeIndex(self.options, function (item) {
546
- return item === option ||
547
- /** tree-select中会对option添加collapsed, visible属性,导致item === option不通过 */
548
- isEqualWith(item, option, function (source, target) {
549
- return (source === null || source === void 0 ? void 0 : source[valueField]) != null &&
550
- (target === null || target === void 0 ? void 0 : target[valueField]) != null &&
551
- (source === null || source === void 0 ? void 0 : source[labelField]) === (target === null || target === void 0 ? void 0 : target[labelField]) &&
552
- (source === null || source === void 0 ? void 0 : source[valueField]) === (target === null || target === void 0 ? void 0 : target[valueField]);
553
- });
554
- });
555
- if (!!indexes) return [3 /*break*/, 2];
556
- leftOptions = (_a = self.options[0]) === null || _a === void 0 ? void 0 : _a.leftOptions;
557
- return [4 /*yield*/, tryDeferLoadLeftOptions(option, leftOptions, api, data, config)];
558
- case 1: return [2 /*return*/, _c.sent()];
559
- case 2:
560
- setOptions(spliceTree(self.options, indexes, 1, __assign(__assign({}, option), { loading: true })), undefined, data);
561
- return [4 /*yield*/, fetchOptions(api, data, __assign(__assign({}, config), { silent: true }), false)];
562
- case 3:
563
- json = _c.sent();
564
- if (!json) {
565
- setOptions(spliceTree(self.options, indexes, 1, __assign(__assign({}, option), { loading: false, error: true })), undefined, data);
566
- return [2 /*return*/];
567
- }
568
- options = ((_b = json.data) === null || _b === void 0 ? void 0 : _b.options) ||
569
- json.data.items ||
570
- json.data.rows ||
571
- json.data ||
572
- [];
573
- setOptions(spliceTree(self.options, indexes, 1, __assign(__assign({}, option), { loading: false, loaded: true, children: options })), undefined, data);
574
- return [2 /*return*/, json];
575
- }
576
- });
577
- });
578
- /**
579
- * 根据当前节点路径展开树形组件父节点
580
- */
581
- var expandTreeOptions = flow(function getInitData(nodePathArr, api, data, config) {
582
- var traversedNode, _i, nodePathArr_1, nodePath, _loop_1, level;
583
- var _a;
584
- return __generator(this, function (_b) {
585
- switch (_b.label) {
586
- case 0:
587
- traversedNode = new Map();
588
- _i = 0, nodePathArr_1 = nodePathArr;
589
- _b.label = 1;
590
- case 1:
591
- if (!(_i < nodePathArr_1.length)) return [3 /*break*/, 6];
592
- nodePath = nodePathArr_1[_i];
593
- // 根节点已经展开了,不需要加载
594
- if (nodePath.length <= 1) {
595
- return [3 /*break*/, 5];
596
- }
597
- _loop_1 = function (level) {
598
- var tree, nodeValue, node, indexes, json, childrenOptions;
599
- return __generator(this, function (_c) {
600
- switch (_c.label) {
601
- case 0:
602
- tree = self.options.concat();
603
- nodeValue = nodePath[level];
604
- if (traversedNode.has(nodeValue)) {
605
- return [2 /*return*/, "continue"];
606
- }
607
- node = findTree(tree, function (item, key, treeLevel) {
608
- return (treeLevel === level + 1 &&
609
- optionValueCompare(nodeValue, self.valueField || 'value')(item));
610
- });
611
- // 只处理懒加载节点
612
- if (!node || !node.defer) {
613
- return [2 /*return*/, "continue"];
614
- }
615
- indexes = findTreeIndex(tree, function (item) { return item === node; });
616
- setOptions(spliceTree(tree, indexes, 1, __assign(__assign({}, node), { loading: true })), undefined, node);
617
- return [4 /*yield*/, fetchOptions(api, node, __assign(__assign({}, config), { silent: true }), false)];
618
- case 1:
619
- json = _c.sent();
620
- if (!json) {
621
- setOptions(spliceTree(tree, indexes, 1, __assign(__assign({}, node), { loading: false, error: true })), undefined, node);
622
- }
623
- traversedNode.set(nodeValue, true);
624
- childrenOptions = ((_a = json.data) === null || _a === void 0 ? void 0 : _a.options) ||
625
- json.data.items ||
626
- json.data.rows ||
627
- json.data ||
628
- [];
629
- setOptions(spliceTree(tree, indexes, 1, __assign(__assign({}, node), { loading: false, loaded: true, children: childrenOptions })), undefined, node);
630
- return [2 /*return*/];
631
- }
632
- });
633
- };
634
- level = 0;
635
- _b.label = 2;
636
- case 2:
637
- if (!(level < nodePath.length - 1)) return [3 /*break*/, 5];
638
- return [5 /*yield**/, _loop_1(level)];
639
- case 3:
640
- _b.sent();
641
- _b.label = 4;
642
- case 4:
643
- level++;
644
- return [3 /*break*/, 2];
645
- case 5:
646
- _i++;
647
- return [3 /*break*/, 1];
648
- case 6: return [2 /*return*/];
649
- }
650
- });
651
- });
652
- // @issue 强依赖form,需要改造暂且放过。
653
- function syncOptions(originOptions, data) {
654
- var _a;
655
- if (!self.options.length && typeof self.value === 'undefined') {
656
- self.selectedOptions = [];
657
- self.filteredOptions = [];
658
- return;
659
- }
660
- var value = self.tmpValue;
661
- var selected = Array.isArray(value)
662
- ? value.map(function (item) {
663
- return item && item.hasOwnProperty(self.valueField || 'value')
664
- ? item[self.valueField || 'value']
665
- : item;
666
- })
667
- : typeof value === 'string'
668
- ? value.split(self.delimiter || ',')
669
- : value === void 0
670
- ? []
671
- : [
672
- value && value.hasOwnProperty(self.valueField || 'value')
673
- ? value[self.valueField || 'value']
674
- : value
675
- ];
676
- if (value && value.hasOwnProperty(self.labelField || 'label')) {
677
- selected[0] = (_a = {},
678
- _a[self.labelField || 'label'] = value[self.labelField || 'label'],
679
- _a[self.valueField || 'value'] = value[self.valueField || 'value'],
680
- _a);
681
- }
682
- var expressionsInOptions = false;
683
- var filteredOptions = self.options
684
- .filter(function (item) {
685
- if (!expressionsInOptions &&
686
- (item.visibleOn || item.hiddenOn || item.disabledOn)) {
687
- expressionsInOptions = true;
688
- }
689
- return item.visibleOn
690
- ? evalExpression(item.visibleOn, data) !== false
691
- : item.hiddenOn
692
- ? evalExpression(item.hiddenOn, data) !== true
693
- : item.visible !== false || item.hidden !== true;
694
- })
695
- .map(function (item, index) {
696
- var disabled = evalExpression(item.disabledOn, data);
697
- var newItem = item.disabledOn
698
- ? self.filteredOptions.length > index &&
699
- self.filteredOptions[index].disabled === disabled
700
- ? self.filteredOptions[index]
701
- : __assign(__assign({}, item), { disabled: disabled })
702
- : item;
703
- return newItem;
704
- });
705
- self.expressionsInOptions = expressionsInOptions;
706
- var flattened = flattenTree(filteredOptions);
707
- var selectedOptions = [];
708
- selected.forEach(function (item, index) {
709
- var _a, _b;
710
- var idx = findIndex(flattened, optionValueCompare(item, self.valueField || 'value'));
711
- if (~idx) {
712
- selectedOptions.push(flattened[idx]);
713
- }
714
- else {
715
- var unMatched = (value && value[index]) || item;
716
- if (unMatched &&
717
- (typeof unMatched === 'string' || typeof unMatched === 'number')) {
718
- unMatched = (_a = {},
719
- _a[self.valueField || 'value'] = item,
720
- _a[self.labelField || 'label'] = item,
721
- _a.__unmatched = true,
722
- _a);
723
- var orgin = originOptions &&
724
- find(originOptions, optionValueCompare(item, self.valueField || 'value'));
725
- if (orgin) {
726
- unMatched[self.labelField || 'label'] =
727
- orgin[self.labelField || 'label'];
728
- }
729
- }
730
- else if (unMatched && self.extractValue) {
731
- unMatched = (_b = {},
732
- _b[self.valueField || 'value'] = item,
733
- _b[self.labelField || 'label'] = 'UnKnown',
734
- _b.__unmatched = true,
735
- _b);
736
- }
737
- unMatched && selectedOptions.push(unMatched);
738
- }
739
- });
740
- var form = self.form;
741
- var parentStore = form === null || form === void 0 ? void 0 : form.parentStore;
742
- if ((parentStore === null || parentStore === void 0 ? void 0 : parentStore.storeType) === ComboStore.name) {
743
- var combo = parentStore;
744
- var group = combo.uniques.get(self.name);
745
- var options_2 = [];
746
- group &&
747
- group.items.forEach(function (item) {
748
- if (self !== item) {
749
- options_2.push.apply(options_2, item.selectedOptions.map(function (item) { return item && item.value; }));
750
- }
751
- });
752
- if (filteredOptions.length) {
753
- filteredOptions = filteredOptions.filter(function (option) { return !~options_2.indexOf(option.value); });
754
- }
755
- }
756
- isArrayChildrenModified(self.selectedOptions, selectedOptions) &&
757
- (self.selectedOptions = selectedOptions);
758
- isArrayChildrenModified(self.filteredOptions, filteredOptions) &&
759
- (self.filteredOptions = filteredOptions);
760
- }
761
- function setLoading(value) {
762
- self.loading = value;
763
- }
764
- var subStore;
765
- function getSubStore() {
766
- return subStore;
767
- }
768
- function setSubStore(store) {
769
- subStore = store;
770
- }
771
- function reset(keepErrors) {
772
- if (keepErrors === void 0) { keepErrors = false; }
773
- self.validated = false;
774
- if (subStore && subStore.storeType === 'ComboStore') {
775
- var combo = subStore;
776
- combo.forms.forEach(function (form) { return form.reset(); });
777
- }
778
- !keepErrors && clearError();
779
- }
780
- function resetValidationStatus(tag) {
781
- self.validated = false;
782
- clearError();
783
- }
784
- function openDialog(schema, ctx, callback) {
785
- if (schema.data) {
786
- self.dialogData = dataMapping(schema.data, ctx);
787
- }
788
- else {
789
- self.dialogData = ctx;
790
- }
791
- self.dialogSchema = schema;
792
- self.dialogOpen = true;
793
- callback && dialogCallbacks.set(self.dialogData, callback);
794
- }
795
- function closeDialog(result) {
796
- var callback = dialogCallbacks.get(self.dialogData);
797
- self.dialogOpen = false;
798
- if (callback) {
799
- dialogCallbacks.delete(self.dialogData);
800
- setTimeout(function () { return callback(result); }, 200);
801
- }
802
- }
803
- function changeTmpValue(value) {
804
- self.tmpValue = value;
805
- }
806
- function changeEmitedValue(value) {
807
- self.emitedValue = value;
808
- }
809
- function addSubFormItem(item) {
810
- self.itemsRef.push(item.id);
811
- }
812
- function removeSubFormItem(item) {
813
- var idx = self.itemsRef.findIndex(function (a) { return a === item.id; });
814
- if (~idx) {
815
- self.itemsRef.splice(idx, 1);
816
- }
817
- }
818
- return {
819
- focus: focus,
820
- blur: blur,
821
- config: config,
822
- validate: validate$1,
823
- setError: setError,
824
- addError: addError,
825
- clearError: clearError,
826
- setOptions: setOptions,
827
- loadOptions: loadOptions,
828
- deferLoadOptions: deferLoadOptions,
829
- deferLoadLeftOptions: deferLoadLeftOptions,
830
- expandTreeOptions: expandTreeOptions,
831
- syncOptions: syncOptions,
832
- setLoading: setLoading,
833
- setSubStore: setSubStore,
834
- getSubStore: getSubStore,
835
- reset: reset,
836
- resetValidationStatus: resetValidationStatus,
837
- openDialog: openDialog,
838
- closeDialog: closeDialog,
839
- changeTmpValue: changeTmpValue,
840
- changeEmitedValue: changeEmitedValue,
841
- addSubFormItem: addSubFormItem,
842
- removeSubFormItem: removeSubFormItem,
843
- loadAutoUpdateData: loadAutoUpdateData
844
- };
845
- });
846
-
847
- export { FormItemStore };