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
package/esm/utils/tpl.js DELETED
@@ -1,131 +0,0 @@
1
- /**
2
- * amis-core v2.6.0
3
- * Copyright 2018-2022 fex
4
- */
5
-
6
- import { __spreadArray } from 'tslib';
7
- import { register } from './tpl-builtin.js';
8
- import { register as register$1 } from './tpl-lodash.js';
9
- import { getFilters, parse, evaluate } from 'amis-formula';
10
-
11
- var enginers = {};
12
- function registerTplEnginer(name, enginer) {
13
- enginers[name] = enginer;
14
- }
15
- function filter(tpl, data) {
16
- if (data === void 0) { data = {}; }
17
- var rest = [];
18
- for (var _i = 2; _i < arguments.length; _i++) {
19
- rest[_i - 2] = arguments[_i];
20
- }
21
- if (!tpl || typeof tpl !== 'string') {
22
- return '';
23
- }
24
- var keys = Object.keys(enginers);
25
- for (var i = 0, len = keys.length; i < len; i++) {
26
- var enginer = enginers[keys[i]];
27
- if (enginer.test(tpl)) {
28
- return enginer.compile.apply(enginer, __spreadArray([tpl, data], rest, false));
29
- }
30
- else if (enginer.removeEscapeToken) {
31
- tpl = enginer.removeEscapeToken(tpl);
32
- }
33
- }
34
- return tpl;
35
- }
36
- // 缓存一下提升性能
37
- var EVAL_CACHE = {};
38
- var customEvalExpressionFn;
39
- function setCustomEvalExpression(fn) {
40
- customEvalExpressionFn = fn;
41
- }
42
- // 几乎所有的 visibleOn requiredOn 都是通过这个方法判断出来结果,很粗暴也存在风险,建议自己实现。
43
- // 如果想自己实现,请通过 setCustomEvalExpression 来替换。
44
- function evalExpression(expression, data) {
45
- if (typeof customEvalExpressionFn === 'function') {
46
- return customEvalExpressionFn(expression, data);
47
- }
48
- if (!expression || typeof expression !== 'string') {
49
- return false;
50
- }
51
- /* jshint evil:true */
52
- try {
53
- if (typeof expression === 'string' &&
54
- expression.substring(0, 2) === '${' &&
55
- expression[expression.length - 1] === '}') {
56
- // 启用新版本的公式表达式
57
- return !!evalFormula(expression, data);
58
- }
59
- // 后续改用 FormulaExec['js']
60
- var debug = false;
61
- var idx = expression.indexOf('debugger');
62
- if (~idx) {
63
- debug = true;
64
- expression = expression.replace(/debugger;?/, '');
65
- }
66
- var fn = void 0;
67
- if (expression in EVAL_CACHE) {
68
- fn = EVAL_CACHE[expression];
69
- }
70
- else {
71
- fn = new Function('data', 'utils', "with(data) {".concat(debug ? 'debugger;' : '', "return !!(").concat(expression, ");}"));
72
- EVAL_CACHE[expression] = fn;
73
- }
74
- data = data || {};
75
- return fn.call(data, data, getFilters());
76
- }
77
- catch (e) {
78
- console.warn(expression, e);
79
- return false;
80
- }
81
- }
82
- var AST_CACHE = {};
83
- function evalFormula(expression, data) {
84
- var ast = AST_CACHE[expression] ||
85
- parse(expression, {
86
- evalMode: false
87
- });
88
- AST_CACHE[expression] = ast;
89
- return evaluate(ast, data, {
90
- defaultFilter: 'raw'
91
- });
92
- }
93
- var customEvalJsFn;
94
- function setCustomEvalJs(fn) {
95
- customEvalJsFn = fn;
96
- }
97
- // 这个主要用在 formula 里面,用来动态的改变某个值。也很粗暴,建议自己实现。
98
- // 如果想自己实现,请通过 setCustomEvalJs 来替换。
99
- function evalJS(js, data) {
100
- if (typeof customEvalJsFn === 'function') {
101
- return customEvalJsFn(js, data);
102
- }
103
- /* jshint evil:true */
104
- try {
105
- if (typeof js === 'string' &&
106
- js.substring(0, 2) === '${' &&
107
- js[js.length - 1] === '}') {
108
- // 启用新版本的公式表达式
109
- return evalFormula(js, data);
110
- }
111
- var fn = new Function('data', 'utils', "with(data) {".concat(/^\s*return\b/.test(js) ? '' : 'return ').concat(js, ";}"));
112
- data = data || {};
113
- return fn.call(data, data, getFilters());
114
- }
115
- catch (e) {
116
- console.warn(js, e);
117
- return null;
118
- }
119
- }
120
- [register, register$1].forEach(function (fn) {
121
- if (!fn)
122
- return;
123
- var info = fn();
124
- registerTplEnginer(info.name, {
125
- test: info.test,
126
- compile: info.compile,
127
- removeEscapeToken: info.removeEscapeToken
128
- });
129
- });
130
-
131
- export { evalExpression, evalJS, filter, registerTplEnginer, setCustomEvalExpression, setCustomEvalJs };
@@ -1,4 +0,0 @@
1
- /// <reference types="react" />
2
- export declare function uncontrollable<T extends React.ComponentType<any>, P extends {
3
- [propName: string]: any;
4
- }>(arg: T, config: P, mapping?: any): T;
@@ -1,14 +0,0 @@
1
- /**
2
- * amis-core v2.6.0
3
- * Copyright 2018-2022 fex
4
- */
5
-
6
- import { uncontrollable as uncontrollable$1 } from 'uncontrollable';
7
- import hoistNonReactStatic from 'hoist-non-react-statics';
8
-
9
- function uncontrollable(arg, config, mapping) {
10
- var result = uncontrollable$1(arg, config, mapping);
11
- return hoistNonReactStatic(result, arg);
12
- }
13
-
14
- export { uncontrollable };
@@ -1,39 +0,0 @@
1
- export interface ValidateFn {
2
- (values: {
3
- [propsName: string]: any;
4
- }, value: any, arg1?: any, arg2?: any, arg3?: any, arg4?: any, arg5?: any): boolean;
5
- }
6
- export declare const validations: {
7
- [propsName: string]: ValidateFn;
8
- };
9
- export declare function addRule(ruleName: string, fn: ValidateFn, message?: string): void;
10
- export declare const validateMessages: {
11
- [propName: string]: string;
12
- };
13
- export declare function validate(value: any, values: {
14
- [propName: string]: any;
15
- }, rules: {
16
- [propName: string]: any;
17
- }, messages?: {
18
- [propName: string]: string;
19
- }, __?: (str: string) => string): Array<{
20
- rule: string;
21
- msg: string;
22
- }>;
23
- export declare function validateObject(values: {
24
- [propName: string]: any;
25
- }, rules: {
26
- [propName: string]: any;
27
- }, messages?: {
28
- [propName: string]: string;
29
- }, __?: (str: string) => string): {
30
- [propName: string]: {
31
- rule: string;
32
- msg: string;
33
- }[];
34
- };
35
- export declare function str2rules(validations: string | {
36
- [propName: string]: any;
37
- }): {
38
- [propName: string]: any;
39
- };
@@ -1,440 +0,0 @@
1
- /**
2
- * amis-core v2.6.0
3
- * Copyright 2018-2022 fex
4
- */
5
-
6
- import { __assign, __spreadArray } from 'tslib';
7
- import moment from 'moment';
8
- import { filter } from './tpl.js';
9
- import 'amis-formula';
10
- import isPlainObject from 'lodash/isPlainObject';
11
- import { isPureVariable } from './isPureVariable.js';
12
- import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
13
- import './filter.js';
14
- import memoize from 'lodash/memoize';
15
-
16
- var isExisty = function (value) { return value !== null && value !== undefined; };
17
- var isEmpty = function (value) { return value === ''; };
18
- var makeRegexp = function (reg) {
19
- if (reg instanceof RegExp) {
20
- return reg;
21
- }
22
- else if (/^(?:matchRegexp\:)?\/(.+)\/([gimuy]*)$/.test(reg)) {
23
- return new RegExp(RegExp.$1, RegExp.$2 || '');
24
- }
25
- else if (typeof reg === 'string') {
26
- return new RegExp(reg);
27
- }
28
- return /^$/;
29
- };
30
- var makeUrlRegexp = memoize(function (options) {
31
- options = __assign({ schemes: ['http', 'https', 'ftp', 'sftp'], allowLocal: true, allowDataUrl: false }, (isPlainObject(options) ? options : {}));
32
- // https://github.com/ansman/validate.js/blob/master/validate.js#L1098-L1164
33
- var schemes = options.schemes, allowLocal = options.allowLocal, allowDataUrl = options.allowDataUrl;
34
- if (!Array.isArray(schemes)) {
35
- schemes = ['http', 'https', 'ftp', 'sftp'];
36
- }
37
- var regex = '^' +
38
- // protocol identifier
39
- '(?:(?:' +
40
- schemes.join('|') +
41
- ')://)' +
42
- // user:pass authentication
43
- '(?:\\S+(?::\\S*)?@)?' +
44
- '(?:';
45
- var tld = '(?:\\.(?:[a-z\\u00a1-\\uffff]{2,}))';
46
- if (allowLocal) {
47
- tld += '?';
48
- }
49
- else {
50
- regex +=
51
- // IP address exclusion
52
- // private & local networks
53
- '(?!(?:10|127)(?:\\.\\d{1,3}){3})' +
54
- '(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})' +
55
- '(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})';
56
- }
57
- regex +=
58
- // IP address dotted notation octets
59
- // excludes loopback network 0.0.0.0
60
- // excludes reserved space >= 224.0.0.0
61
- // excludes network & broacast addresses
62
- // (first & last IP address of each class)
63
- '(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])' +
64
- '(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}' +
65
- '(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))' +
66
- '|' +
67
- // host name
68
- '(?:(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)' +
69
- // domain name
70
- '(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*' +
71
- tld +
72
- ')' +
73
- // port number
74
- '(?::\\d{2,5})?' +
75
- // resource path
76
- '(?:[/?#]\\S*)?' +
77
- '$';
78
- if (allowDataUrl) {
79
- // RFC 2397
80
- var mediaType = '\\w+\\/[-+.\\w]+(?:;[\\w=]+)*';
81
- var urlchar = "[A-Za-z0-9-_.!~\\*'();\\/?:@&=+$,%]*";
82
- var dataurl = 'data:(?:' + mediaType + ')?(?:;base64)?,' + urlchar;
83
- regex = '(?:' + regex + ')|(?:^' + dataurl + '$)';
84
- }
85
- return new RegExp(regex, 'i');
86
- });
87
- var validations = {
88
- isRequired: function (values, value) {
89
- return (value !== undefined &&
90
- value !== '' &&
91
- value !== null &&
92
- (!Array.isArray(value) || !!value.length));
93
- },
94
- isExisty: function (values, value) {
95
- return isExisty(value);
96
- },
97
- matchRegexp: function (values, value, regexp) {
98
- return !isExisty(value) || isEmpty(value) || makeRegexp(regexp).test(value);
99
- },
100
- isUndefined: function (values, value) {
101
- return value === undefined;
102
- },
103
- isEmptyString: function (values, value) {
104
- return isEmpty(value);
105
- },
106
- isEmail: function (values, value) {
107
- return validations.matchRegexp(values, value, /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i);
108
- },
109
- isUrl: function (values, value, options) {
110
- return validations.matchRegexp(values, value, makeUrlRegexp(options));
111
- },
112
- isTrue: function (values, value) {
113
- return value === true;
114
- },
115
- isFalse: function (values, value) {
116
- return value === false;
117
- },
118
- isNumeric: function (values, value) {
119
- if (typeof value === 'number') {
120
- return true;
121
- }
122
- return validations.matchRegexp(values, value, /^[-+]?(?:\d*[.])?\d+$/);
123
- },
124
- isAlpha: function (values, value) {
125
- return validations.matchRegexp(values, value, /^[A-Z]+$/i);
126
- },
127
- isAlphanumeric: function (values, value) {
128
- return validations.matchRegexp(values, value, /^[0-9A-Z]+$/i);
129
- },
130
- isInt: function (values, value) {
131
- return validations.matchRegexp(values, value, /^(?:[-+]?(?:0|[1-9]\d*))$/);
132
- },
133
- isFloat: function (values, value) {
134
- return validations.matchRegexp(values, value, /^(?:[-+]?(?:\d+))?(?:\.\d*)?(?:[eE][\+\-]?(?:\d+))?$/);
135
- },
136
- isWords: function (values, value) {
137
- return validations.matchRegexp(values, value, /^[A-Z\s]+$/i);
138
- },
139
- isSpecialWords: function (values, value) {
140
- return validations.matchRegexp(values, value, /^[A-Z\s\u00C0-\u017F]+$/i);
141
- },
142
- isLength: function (values, value, length) {
143
- // 此方法应该判断文本长度,如果传入数据为number,导致 maxLength 和 maximum 表现一致了,默认转成string
144
- if (typeof value === 'number') {
145
- value = String(value);
146
- }
147
- return !isExisty(value) || isEmpty(value) || value.length === length;
148
- },
149
- equals: function (values, value, eql) {
150
- return !isExisty(value) || isEmpty(value) || value == eql;
151
- },
152
- equalsField: function (values, value, field) {
153
- return value == values[field];
154
- },
155
- maxLength: function (values, value, length) {
156
- // 此方法应该判断文本长度,如果传入数据为number,导致 maxLength 和 maximum 表现一致了,默认转成string
157
- if (typeof value === 'number') {
158
- value = String(value);
159
- }
160
- return !isExisty(value) || value.length <= length;
161
- },
162
- minLength: function (values, value, length) {
163
- // 此方法应该判断文本长度,如果传入数据为number,导致 maxLength 和 maximum 表现一致了,默认转成string
164
- if (typeof value === 'number') {
165
- value = String(value);
166
- }
167
- return !isExisty(value) || isEmpty(value) || value.length >= length;
168
- },
169
- isUrlPath: function (values, value, regexp) {
170
- return !isExisty(value) || isEmpty(value) || /^[a-z0-9_\\-]+$/i.test(value);
171
- },
172
- maximum: function (values, value, maximum) {
173
- return (!isExisty(value) ||
174
- isEmpty(value) ||
175
- (parseFloat(value) || 0) <= (parseFloat(maximum) || 0));
176
- },
177
- lt: function (values, value, maximum) {
178
- return (!isExisty(value) ||
179
- isEmpty(value) ||
180
- (parseFloat(value) || 0) < (parseFloat(maximum) || 0));
181
- },
182
- minimum: function (values, value, minimum) {
183
- return (!isExisty(value) ||
184
- isEmpty(value) ||
185
- (parseFloat(value) || 0) >= (parseFloat(minimum) || 0));
186
- },
187
- gt: function (values, value, minimum) {
188
- return (!isExisty(value) ||
189
- isEmpty(value) ||
190
- (parseFloat(value) || 0) > (parseFloat(minimum) || 0));
191
- },
192
- isJson: function (values, value, minimum) {
193
- if (isExisty(value) && !isEmpty(value) && typeof value === 'string') {
194
- try {
195
- var result = JSON.parse(value);
196
- if (typeof result === 'object' && result) {
197
- return true;
198
- }
199
- return false;
200
- }
201
- catch (e) {
202
- return false;
203
- }
204
- }
205
- return true;
206
- },
207
- isPhoneNumber: function (values, value) {
208
- return (!isExisty(value) || isEmpty(value) || /^[1]([3-9])[0-9]{9}$/.test(value));
209
- },
210
- isTelNumber: function (values, value) {
211
- return (!isExisty(value) ||
212
- isEmpty(value) ||
213
- /^(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}$/.test(value));
214
- },
215
- isZipcode: function (values, value) {
216
- return !isExisty(value) || isEmpty(value) || /^\d{6}$/.test(value);
217
- },
218
- isId: function (values, value) {
219
- return (!isExisty(value) ||
220
- isEmpty(value) ||
221
- /(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}$)/.test(value));
222
- },
223
- notEmptyString: function (values, value) {
224
- return !isExisty(value) || !(String(value) && String(value).trim() === '');
225
- },
226
- matchRegexp1: function (values, value, regexp) {
227
- return validations.matchRegexp(values, value, regexp);
228
- },
229
- matchRegexp2: function (values, value, regexp) {
230
- return validations.matchRegexp(values, value, regexp);
231
- },
232
- matchRegexp3: function (values, value, regexp) {
233
- return validations.matchRegexp(values, value, regexp);
234
- },
235
- matchRegexp4: function (values, value, regexp) {
236
- return validations.matchRegexp(values, value, regexp);
237
- },
238
- matchRegexp5: function (values, value, regexp) {
239
- return validations.matchRegexp(values, value, regexp);
240
- },
241
- matchRegexp6: function (values, value, regexp) {
242
- return validations.matchRegexp(values, value, regexp);
243
- },
244
- matchRegexp7: function (values, value, regexp) {
245
- return validations.matchRegexp(values, value, regexp);
246
- },
247
- matchRegexp8: function (values, value, regexp) {
248
- return validations.matchRegexp(values, value, regexp);
249
- },
250
- matchRegexp9: function (values, value, regexp) {
251
- return validations.matchRegexp(values, value, regexp);
252
- },
253
- /** ============================ 日期时间相关 ============================= */
254
- isDateTimeSame: function (values, value, targetDate, granularity) {
255
- return moment(value).isSame(moment(targetDate), granularity);
256
- },
257
- isDateTimeBefore: function (values, value, targetDate, granularity) {
258
- return moment(value).isBefore(moment(targetDate), granularity);
259
- },
260
- isDateTimeAfter: function (values, value, targetDate, granularity) {
261
- return moment(value).isAfter(moment(targetDate), granularity);
262
- },
263
- isDateTimeSameOrBefore: function (values, value, targetDate, granularity) {
264
- return moment(value).isSameOrBefore(moment(targetDate), granularity);
265
- },
266
- isDateTimeSameOrAfter: function (values, value, targetDate, granularity) {
267
- return moment(value).isSameOrAfter(moment(targetDate), granularity);
268
- },
269
- isDateTimeBetween: function (values, value, lhs, rhs, granularity, inclusivity) {
270
- return moment(value).isBetween(moment(lhs), moment(rhs), granularity, inclusivity);
271
- },
272
- /** ============================ 时间相关 ============================= */
273
- isTimeSame: function (values, value, targetTime, granularity, format) {
274
- // 直接使用时间构造的moment object是不合法的,所以需要额外指定一下格式
275
- format = format !== null && format !== void 0 ? format : 'hh:mm:ss';
276
- return moment(value, format).isSame(moment(targetTime, format), granularity);
277
- },
278
- isTimeBefore: function (values, value, targetTime, granularity, format) {
279
- format = format !== null && format !== void 0 ? format : 'hh:mm:ss';
280
- return moment(value, format).isBefore(moment(targetTime, format), granularity);
281
- },
282
- isTimeAfter: function (values, value, targetTime, granularity, format) {
283
- format = format !== null && format !== void 0 ? format : 'hh:mm:ss';
284
- return moment(value, format).isAfter(moment(targetTime, format), granularity);
285
- },
286
- isTimeSameOrBefore: function (values, value, targetTime, granularity, format) {
287
- format = format !== null && format !== void 0 ? format : 'hh:mm:ss';
288
- return moment(value, format).isSameOrBefore(moment(targetTime, format), granularity);
289
- },
290
- isTimeSameOrAfter: function (values, value, targetTime, granularity, format) {
291
- format = format !== null && format !== void 0 ? format : 'hh:mm:ss';
292
- return moment(value, format).isSameOrAfter(moment(targetTime, format), granularity);
293
- },
294
- isTimeBetween: function (values, value, lhs, rhs, granularity, inclusivity, format) {
295
- format = format !== null && format !== void 0 ? format : 'hh:mm:ss';
296
- return moment(value, format).isBetween(moment(lhs, format), moment(rhs, format), granularity, inclusivity);
297
- },
298
- isVariableName: function (values, value, regexp) {
299
- return validations.matchRegexp(values, value, regexp instanceof RegExp ? regexp : /^[a-zA-Z_]+[a-zA-Z0-9]*$/);
300
- }
301
- };
302
- function addRule(ruleName, fn, message) {
303
- if (message === void 0) { message = ''; }
304
- validations[ruleName] = fn;
305
- validateMessages[ruleName] = message;
306
- }
307
- var validateMessages = {
308
- isEmail: 'validate.isEmail',
309
- isRequired: 'validate.isRequired',
310
- isUrl: 'validate.isUrl',
311
- isInt: 'validate.isInt',
312
- isAlpha: 'validate.isAlpha',
313
- isNumeric: 'validate.isNumeric',
314
- isAlphanumeric: 'validate.isAlphanumeric',
315
- isFloat: 'validate.isFloat',
316
- isWords: 'validate.isWords',
317
- isUrlPath: 'validate.isUrlPath',
318
- matchRegexp: 'validate.matchRegexp',
319
- minLength: 'validate.minLength',
320
- maxLength: 'validate.maxLength',
321
- minLengthArray: 'validate.array.minLength',
322
- maxLengthArray: 'validate.array.maxLength',
323
- maximum: 'validate.maximum',
324
- lt: 'validate.lt',
325
- minimum: 'validate.minimum',
326
- gt: 'validate.gt',
327
- isJson: 'validate.isJson',
328
- isLength: 'validate.isLength',
329
- notEmptyString: 'validate.notEmptyString',
330
- equalsField: 'validate.equalsField',
331
- equals: 'validate.equals',
332
- isPhoneNumber: 'validate.isPhoneNumber',
333
- isTelNumber: 'validate.isTelNumber',
334
- isZipcode: 'validate.isZipcode',
335
- isId: 'validate.isId',
336
- isDateTimeSame: 'validate.isDateTimeSame',
337
- isDateTimeBefore: 'validate.isDateTimeBefore',
338
- isDateTimeAfter: 'validate.isDateTimeAfter',
339
- isDateTimeSameOrBefore: 'validate.isDateTimeSameOrBefore',
340
- isDateTimeSameOrAfter: 'validate.isDateTimeSameOrAfter',
341
- isDateTimeBetween: 'validate.isDateTimeBetween',
342
- isTimeSame: 'validate.isTimeSame',
343
- isTimeBefore: 'validate.isTimeBefore',
344
- isTimeAfter: 'validate.isTimeAfter',
345
- isTimeSameOrBefore: 'validate.isTimeSameOrBefore',
346
- isTimeSameOrAfter: 'validate.isTimeSameOrAfter',
347
- isTimeBetween: 'validate.isTimeBetween',
348
- isVariableName: 'validate.isVariableName'
349
- };
350
- function validate(value, values, rules, messages, __) {
351
- if (__ === void 0) { __ = function (str) { return str; }; }
352
- var errors = [];
353
- rules &&
354
- Object.keys(rules).forEach(function (ruleName) {
355
- if (!rules[ruleName] && rules[ruleName] !== 0) {
356
- return;
357
- }
358
- else if (typeof validations[ruleName] !== 'function') {
359
- throw new Error('Validation `' + ruleName + '` not exists!');
360
- }
361
- var fn = validations[ruleName];
362
- var args = (Array.isArray(rules[ruleName]) ? rules[ruleName] : [rules[ruleName]]).map(function (item) {
363
- if (typeof item === 'string' && isPureVariable(item)) {
364
- return resolveVariableAndFilter(item, values, '|raw');
365
- }
366
- return item;
367
- });
368
- if (!fn.apply(void 0, __spreadArray([values, value], args, false))) {
369
- var msgRuleName = ruleName;
370
- if (Array.isArray(value)) {
371
- msgRuleName = "".concat(ruleName, "Array");
372
- }
373
- errors.push({
374
- rule: ruleName,
375
- msg: filter(__((messages && messages[ruleName]) ||
376
- validateMessages[msgRuleName] ||
377
- validateMessages[ruleName]), __assign({}, [''].concat(args)))
378
- });
379
- }
380
- });
381
- return errors;
382
- }
383
- function validateObject(values, rules, messages, __) {
384
- if (__ === void 0) { __ = function (str) { return str; }; }
385
- var ret = {};
386
- Object.keys(rules).forEach(function (key) {
387
- var msgs = validate(values[key], values, rules[key] === true
388
- ? {
389
- isRequired: true
390
- }
391
- : rules[key], messages, __);
392
- if (msgs.length) {
393
- ret[key] = msgs;
394
- }
395
- });
396
- return ret;
397
- }
398
- var splitValidations = function (str) {
399
- var i = 0;
400
- var placeholder = {};
401
- return str
402
- .replace(/matchRegexp\d*\s*\:\s*\/.*?\/[igm]*/g, function (raw) {
403
- placeholder["__".concat(i)] = raw;
404
- return "__".concat(i++);
405
- })
406
- .split(/,(?![^{\[]*[}\]])/g)
407
- .map(function (str) { return (/^__\d+$/.test(str) ? placeholder[str] : str.trim()); });
408
- };
409
- function str2rules(validations) {
410
- if (typeof validations === 'string') {
411
- return validations
412
- ? splitValidations(validations).reduce(function (validations, validation) {
413
- var idx = validation.indexOf(':');
414
- var validateMethod = validation;
415
- var args = [];
416
- if (~idx) {
417
- validateMethod = validation.substring(0, idx);
418
- args = /^matchRegexp/.test(validateMethod)
419
- ? [validation.substring(idx + 1).trim()]
420
- : validation
421
- .substring(idx + 1)
422
- .split(',')
423
- .map(function (arg) {
424
- try {
425
- return JSON.parse(arg);
426
- }
427
- catch (e) {
428
- return arg;
429
- }
430
- });
431
- }
432
- validations[validateMethod] = args.length ? args : true;
433
- return validations;
434
- }, {})
435
- : {};
436
- }
437
- return validations || {};
438
- }
439
-
440
- export { addRule, str2rules, validate, validateMessages, validateObject, validations };
package/lib/Root.d.ts DELETED
@@ -1,46 +0,0 @@
1
- import React from 'react';
2
- import { RendererEnv } from './env';
3
- import { RendererProps } from './factory';
4
- import { TranslateFn } from './locale';
5
- import { IRendererStore } from './store';
6
- import { SchemaNode } from './types';
7
- export interface RootRenderProps {
8
- location?: Location;
9
- theme?: string;
10
- [propName: string]: any;
11
- }
12
- export interface RootProps {
13
- schema: SchemaNode;
14
- rootStore: IRendererStore;
15
- env: RendererEnv;
16
- theme: string;
17
- pathPrefix?: string;
18
- locale?: string;
19
- translate?: TranslateFn;
20
- [propName: string]: any;
21
- }
22
- export interface RootWrapperProps {
23
- env: RendererEnv;
24
- children: React.ReactNode;
25
- schema: SchemaNode;
26
- rootStore: IRendererStore;
27
- theme: string;
28
- [propName: string]: any;
29
- }
30
- export declare function addRootWrapper(fn: (props: RootWrapperProps) => React.ReactNode): void;
31
- export declare class Root extends React.Component<RootProps> {
32
- resolveDefinitions(name: string): {} | undefined;
33
- render(): JSX.Element;
34
- }
35
- export interface renderChildProps extends Partial<RendererProps> {
36
- env: RendererEnv;
37
- }
38
- export type ReactElement = React.ReactNode[] | JSX.Element | null | false;
39
- export declare function renderChildren(prefix: string, node: SchemaNode, props: renderChildProps): ReactElement;
40
- export declare function renderChild(prefix: string, node: SchemaNode, props: renderChildProps): ReactElement;
41
- declare const _default: React.ComponentType<RootProps & {
42
- scopeRef?: ((ref: any) => void) | undefined;
43
- }> & {
44
- ComposedComponent: React.ComponentType<RootProps>;
45
- };
46
- export default _default;