amis 1.4.2-beta.1 → 1.4.2-beta.15

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 (449) hide show
  1. package/lib/Schema.d.ts +11 -3
  2. package/lib/Schema.js.map +1 -1
  3. package/lib/components/AnchorNav.d.ts +22 -21
  4. package/lib/components/AnchorNav.js +7 -3
  5. package/lib/components/AnchorNav.js.map +2 -2
  6. package/lib/components/ArrayInput.d.ts +84 -84
  7. package/lib/components/AssociatedSelection.d.ts +930 -0
  8. package/lib/components/AssociatedSelection.js +89 -0
  9. package/lib/components/AssociatedSelection.js.map +13 -0
  10. package/lib/components/Badge.js +2 -2
  11. package/lib/components/Badge.js.map +2 -2
  12. package/lib/components/{ChainedCheckboxes.d.ts → ChainedSelection.d.ts} +267 -98
  13. package/lib/components/{ChainedCheckboxes.js → ChainedSelection.js} +30 -24
  14. package/lib/components/ChainedSelection.js.map +13 -0
  15. package/lib/components/Checkbox.d.ts +20 -20
  16. package/lib/components/Collapse.d.ts +51 -23
  17. package/lib/components/Collapse.js +69 -11
  18. package/lib/components/Collapse.js.map +2 -2
  19. package/lib/components/CollapseGroup.d.ts +88 -0
  20. package/lib/components/CollapseGroup.js +81 -0
  21. package/lib/components/CollapseGroup.js.map +13 -0
  22. package/lib/components/ColorPicker.d.ts +84 -84
  23. package/lib/components/DatePicker.d.ts +84 -84
  24. package/lib/components/DateRangePicker.d.ts +84 -84
  25. package/lib/components/Editor.d.ts +84 -84
  26. package/lib/components/GridNav.d.ts +52 -0
  27. package/lib/components/GridNav.js +123 -0
  28. package/lib/components/GridNav.js.map +13 -0
  29. package/lib/components/GroupedSelection.d.ts +907 -0
  30. package/lib/components/GroupedSelection.js +48 -0
  31. package/lib/components/GroupedSelection.js.map +13 -0
  32. package/lib/components/InputBox.d.ts +22 -21
  33. package/lib/components/InputBox.js +10 -2
  34. package/lib/components/InputBox.js.map +2 -2
  35. package/lib/components/Link.d.ts +29 -36
  36. package/lib/components/Link.js +14 -15
  37. package/lib/components/Link.js.map +2 -2
  38. package/lib/components/ListGroup.d.ts +21 -21
  39. package/lib/components/ModalManager.js +1 -1
  40. package/lib/components/ModalManager.js.map +2 -2
  41. package/lib/components/MonthRangePicker.d.ts +84 -84
  42. package/lib/components/NumberInput.d.ts +20 -20
  43. package/lib/components/PickerColumn.d.ts +514 -0
  44. package/lib/components/PickerColumn.js +279 -0
  45. package/lib/components/PickerColumn.js.map +13 -0
  46. package/lib/components/PickerContainer.d.ts +513 -0
  47. package/lib/components/PickerContainer.js +96 -0
  48. package/lib/components/PickerContainer.js.map +13 -0
  49. package/lib/components/Radios.d.ts +22 -21
  50. package/lib/components/Radios.js +1 -0
  51. package/lib/components/Radios.js.map +2 -2
  52. package/lib/components/Rating.d.ts +21 -21
  53. package/lib/components/ResultBox.d.ts +84 -84
  54. package/lib/components/ResultBox.js +10 -2
  55. package/lib/components/ResultBox.js.map +2 -2
  56. package/lib/components/SearchBox.d.ts +84 -84
  57. package/lib/components/SearchBox.js +4 -4
  58. package/lib/components/SearchBox.js.map +2 -2
  59. package/lib/components/Select.d.ts +245 -237
  60. package/lib/components/Select.js +25 -4
  61. package/lib/components/Select.js.map +2 -2
  62. package/lib/components/{Checkboxes.d.ts → Selection.d.ts} +273 -98
  63. package/lib/components/Selection.js +134 -0
  64. package/lib/components/Selection.js.map +13 -0
  65. package/lib/components/{TableCheckboxes.d.ts → TableSelection.d.ts} +266 -96
  66. package/lib/components/{TableCheckboxes.js → TableSelection.js} +30 -30
  67. package/lib/components/TableSelection.js.map +13 -0
  68. package/lib/components/Tabs.d.ts +20 -20
  69. package/lib/components/TabsTransfer.d.ts +84 -84
  70. package/lib/components/TabsTransfer.js +9 -9
  71. package/lib/components/TabsTransfer.js.map +2 -2
  72. package/lib/components/TabsTransferPicker.d.ts +489 -0
  73. package/lib/components/TabsTransferPicker.js +60 -0
  74. package/lib/components/TabsTransferPicker.js.map +13 -0
  75. package/lib/components/Toast.d.ts +86 -85
  76. package/lib/components/Toast.js +6 -3
  77. package/lib/components/Toast.js.map +2 -2
  78. package/lib/components/Transfer.d.ts +908 -274
  79. package/lib/components/Transfer.js +31 -24
  80. package/lib/components/Transfer.js.map +2 -2
  81. package/lib/components/TransferDropDown.d.ts +488 -0
  82. package/lib/components/TransferDropDown.js +59 -0
  83. package/lib/components/TransferDropDown.js.map +13 -0
  84. package/lib/components/TransferPicker.d.ts +493 -0
  85. package/lib/components/TransferPicker.js +60 -0
  86. package/lib/components/TransferPicker.js.map +13 -0
  87. package/lib/components/Tree.d.ts +115 -84
  88. package/lib/components/Tree.js +183 -30
  89. package/lib/components/Tree.js.map +2 -2
  90. package/lib/components/{TreeCheckboxes.d.ts → TreeSelection.d.ts} +269 -99
  91. package/lib/components/{TreeCheckboxes.js → TreeSelection.js} +36 -32
  92. package/lib/components/TreeSelection.js.map +13 -0
  93. package/lib/components/WithRemoteConfig.js +1 -1
  94. package/lib/components/WithRemoteConfig.js.map +2 -2
  95. package/lib/components/condition-builder/Field.js +5 -2
  96. package/lib/components/condition-builder/Field.js.map +2 -2
  97. package/lib/components/condition-builder/Func.js +2 -2
  98. package/lib/components/condition-builder/Func.js.map +2 -2
  99. package/lib/components/condition-builder/InputSwitch.js +2 -2
  100. package/lib/components/condition-builder/InputSwitch.js.map +2 -2
  101. package/lib/components/condition-builder/Item.js +3 -3
  102. package/lib/components/condition-builder/Item.js.map +2 -2
  103. package/lib/components/icons.js +2 -0
  104. package/lib/components/icons.js.map +2 -2
  105. package/lib/components/index.d.ts +8 -8
  106. package/lib/components/index.js +16 -16
  107. package/lib/components/index.js.map +2 -2
  108. package/lib/envOverwrite.d.ts +1 -1
  109. package/lib/envOverwrite.js +24 -9
  110. package/lib/envOverwrite.js.map +2 -2
  111. package/lib/factory.d.ts +15 -1
  112. package/lib/factory.js +35 -6
  113. package/lib/factory.js.map +2 -2
  114. package/lib/helper.css.map +1 -1
  115. package/lib/hooks/index.d.ts +5 -0
  116. package/lib/hooks/index.js +14 -0
  117. package/lib/hooks/index.js.map +13 -0
  118. package/lib/hooks/use-set-state.d.ts +2 -0
  119. package/lib/hooks/use-set-state.js +15 -0
  120. package/lib/hooks/use-set-state.js.map +13 -0
  121. package/lib/hooks/use-touch.d.ts +16 -0
  122. package/lib/hooks/use-touch.js +73 -0
  123. package/lib/hooks/use-touch.js.map +13 -0
  124. package/lib/hooks/use-update-effect.d.ts +3 -0
  125. package/lib/hooks/use-update-effect.js +17 -0
  126. package/lib/hooks/use-update-effect.js.map +13 -0
  127. package/lib/icons/download.js +7 -0
  128. package/lib/icons/drag-bar.js +10 -3
  129. package/lib/index.d.ts +5 -0
  130. package/lib/index.js +6 -1
  131. package/lib/index.js.map +2 -2
  132. package/lib/locale/de-DE.js +2 -0
  133. package/lib/locale/de-DE.js.map +2 -2
  134. package/lib/locale/en-US.js +3 -0
  135. package/lib/locale/en-US.js.map +2 -2
  136. package/lib/locale/zh-CN.js +5 -2
  137. package/lib/locale/zh-CN.js.map +2 -2
  138. package/lib/renderers/Action.d.ts +4 -3
  139. package/lib/renderers/Action.js +17 -4
  140. package/lib/renderers/Action.js.map +2 -2
  141. package/lib/renderers/AnchorNav.d.ts +1 -0
  142. package/lib/renderers/AnchorNav.js +2 -2
  143. package/lib/renderers/AnchorNav.js.map +2 -2
  144. package/lib/renderers/Avatar.js +3 -3
  145. package/lib/renderers/Avatar.js.map +2 -2
  146. package/lib/renderers/Breadcrumb.js +1 -1
  147. package/lib/renderers/Breadcrumb.js.map +2 -2
  148. package/lib/renderers/CRUD.d.ts +9 -0
  149. package/lib/renderers/CRUD.js +24 -4
  150. package/lib/renderers/CRUD.js.map +2 -2
  151. package/lib/renderers/Card.d.ts +4 -0
  152. package/lib/renderers/Card.js +29 -23
  153. package/lib/renderers/Card.js.map +2 -2
  154. package/lib/renderers/Chart.js +1 -1
  155. package/lib/renderers/Chart.js.map +2 -2
  156. package/lib/renderers/Collapse.d.ts +25 -20
  157. package/lib/renderers/Collapse.js +10 -72
  158. package/lib/renderers/Collapse.js.map +2 -2
  159. package/lib/renderers/CollapseGroup.d.ts +42 -0
  160. package/lib/renderers/CollapseGroup.js +33 -0
  161. package/lib/renderers/CollapseGroup.js.map +13 -0
  162. package/lib/renderers/DropDownButton.js +1 -1
  163. package/lib/renderers/DropDownButton.js.map +2 -2
  164. package/lib/renderers/Form/DiffEditor.d.ts +4 -3
  165. package/lib/renderers/Form/Editor.d.ts +3 -2
  166. package/lib/renderers/Form/InputCity.d.ts +84 -84
  167. package/lib/renderers/Form/InputCity.js +7 -6
  168. package/lib/renderers/Form/InputCity.js.map +2 -2
  169. package/lib/renderers/Form/InputColor.d.ts +84 -84
  170. package/lib/renderers/Form/InputFile.d.ts +6 -0
  171. package/lib/renderers/Form/InputFile.js +28 -8
  172. package/lib/renderers/Form/InputFile.js.map +2 -2
  173. package/lib/renderers/Form/InputImage.js +11 -4
  174. package/lib/renderers/Form/InputImage.js.map +2 -2
  175. package/lib/renderers/Form/Item.d.ts +1 -1
  176. package/lib/renderers/Form/Item.js +2 -1
  177. package/lib/renderers/Form/Item.js.map +2 -2
  178. package/lib/renderers/Form/Options.js +13 -3
  179. package/lib/renderers/Form/Options.js.map +2 -2
  180. package/lib/renderers/Form/Select.d.ts +42 -4
  181. package/lib/renderers/Form/Select.js +37 -3
  182. package/lib/renderers/Form/Select.js.map +2 -2
  183. package/lib/renderers/Form/TabsTransferPicker.d.ts +48 -0
  184. package/lib/renderers/Form/TabsTransferPicker.js +29 -0
  185. package/lib/renderers/Form/TabsTransferPicker.js.map +13 -0
  186. package/lib/renderers/Form/Transfer.js +18 -3
  187. package/lib/renderers/Form/Transfer.js.map +2 -2
  188. package/lib/renderers/Form/TransferPicker.d.ts +52 -0
  189. package/lib/renderers/Form/TransferPicker.js +43 -0
  190. package/lib/renderers/Form/TransferPicker.js.map +13 -0
  191. package/lib/renderers/Form/TreeSelect.js +2 -2
  192. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  193. package/lib/renderers/Form/index.d.ts +5 -0
  194. package/lib/renderers/Form/index.js +5 -3
  195. package/lib/renderers/Form/index.js.map +2 -2
  196. package/lib/renderers/Form/wrapControl.js +13 -1
  197. package/lib/renderers/Form/wrapControl.js.map +2 -2
  198. package/lib/renderers/GridNav.d.ts +99 -0
  199. package/lib/renderers/GridNav.js +82 -0
  200. package/lib/renderers/GridNav.js.map +13 -0
  201. package/lib/renderers/IFrame.js +1 -3
  202. package/lib/renderers/IFrame.js.map +2 -2
  203. package/lib/renderers/Json.d.ts +4 -0
  204. package/lib/renderers/Json.js +4 -13
  205. package/lib/renderers/Json.js.map +2 -2
  206. package/lib/renderers/Link.d.ts +4 -2
  207. package/lib/renderers/Link.js +15 -6
  208. package/lib/renderers/Link.js.map +2 -2
  209. package/lib/renderers/List.js +1 -1
  210. package/lib/renderers/List.js.map +2 -2
  211. package/lib/renderers/Mapping.d.ts +9 -2
  212. package/lib/renderers/Mapping.js +18 -6
  213. package/lib/renderers/Mapping.js.map +2 -2
  214. package/lib/renderers/Nav.d.ts +21 -21
  215. package/lib/renderers/Nav.js +39 -21
  216. package/lib/renderers/Nav.js.map +2 -2
  217. package/lib/renderers/Portlet.d.ts +125 -0
  218. package/lib/renderers/Portlet.js +156 -0
  219. package/lib/renderers/Portlet.js.map +13 -0
  220. package/lib/renderers/Property.js +2 -1
  221. package/lib/renderers/Property.js.map +2 -2
  222. package/lib/renderers/SearchBox.d.ts +6 -1
  223. package/lib/renderers/SearchBox.js +19 -5
  224. package/lib/renderers/SearchBox.js.map +2 -2
  225. package/lib/renderers/Table/TableContent.d.ts +4 -1
  226. package/lib/renderers/Table/TableContent.js +21 -1
  227. package/lib/renderers/Table/TableContent.js.map +2 -2
  228. package/lib/renderers/Table/index.d.ts +5 -1
  229. package/lib/renderers/Table/index.js +65 -30
  230. package/lib/renderers/Table/index.js.map +2 -2
  231. package/lib/renderers/Tabs.js +9 -1
  232. package/lib/renderers/Tabs.js.map +2 -2
  233. package/lib/renderers/WebComponent.js +1 -1
  234. package/lib/renderers/WebComponent.js.map +2 -2
  235. package/lib/store/combo.d.ts +2 -16
  236. package/lib/store/crud.js +3 -7
  237. package/lib/store/crud.js.map +2 -2
  238. package/lib/store/form.d.ts +1 -1
  239. package/lib/store/form.js +5 -6
  240. package/lib/store/form.js.map +2 -2
  241. package/lib/store/formItem.js +44 -4
  242. package/lib/store/formItem.js.map +2 -2
  243. package/lib/store/service.js +5 -4
  244. package/lib/store/service.js.map +2 -2
  245. package/lib/store/table.d.ts +3 -2
  246. package/lib/store/table.js +35 -12
  247. package/lib/store/table.js.map +2 -2
  248. package/lib/themes/ang-ie11.css +689 -175
  249. package/lib/themes/ang.css +689 -175
  250. package/lib/themes/ang.css.map +1 -1
  251. package/lib/themes/antd-ie11.css +689 -175
  252. package/lib/themes/antd.css +689 -175
  253. package/lib/themes/antd.css.map +1 -1
  254. package/lib/themes/cxd-ie11.css +728 -213
  255. package/lib/themes/cxd.css +728 -213
  256. package/lib/themes/cxd.css.map +1 -1
  257. package/lib/themes/dark-ie11.css +689 -175
  258. package/lib/themes/dark.css +689 -175
  259. package/lib/themes/dark.css.map +1 -1
  260. package/lib/themes/default.css +728 -213
  261. package/lib/themes/default.css.map +1 -1
  262. package/lib/types.d.ts +38 -1
  263. package/lib/types.js +0 -5
  264. package/lib/types.js.map +2 -2
  265. package/lib/utils/api.d.ts +4 -2
  266. package/lib/utils/api.js +104 -17
  267. package/lib/utils/api.js.map +2 -2
  268. package/lib/utils/dom.d.ts +4 -0
  269. package/lib/utils/dom.js +11 -1
  270. package/lib/utils/dom.js.map +2 -2
  271. package/lib/utils/helper.d.ts +8 -0
  272. package/lib/utils/helper.js +28 -2
  273. package/lib/utils/helper.js.map +2 -2
  274. package/lib/utils/icon.js +3 -0
  275. package/lib/utils/icon.js.map +2 -2
  276. package/package.json +1 -1
  277. package/schema.json +3326 -836
  278. package/scss/_mixins.scss +1 -3
  279. package/scss/_properties.scss +25 -1
  280. package/scss/base/_common.scss +3 -0
  281. package/scss/base/_normalize.scss +2 -0
  282. package/scss/components/_anchor-nav.scss +89 -29
  283. package/scss/components/_card.scss +8 -14
  284. package/scss/components/_collapse-group.scss +11 -0
  285. package/scss/components/_collapse.scss +48 -22
  286. package/scss/components/_grid-nav.scss +128 -0
  287. package/scss/components/_input-box.scss +1 -0
  288. package/scss/components/_mapping.scss +6 -0
  289. package/scss/components/_nav.scss +2 -2
  290. package/scss/components/_picker-columns.scss +124 -0
  291. package/scss/components/_popover.scss +13 -0
  292. package/scss/components/_portlet.scss +51 -0
  293. package/scss/components/_result-box.scss +1 -0
  294. package/scss/components/_spinner.scss +5 -4
  295. package/scss/components/_status.scss +1 -1
  296. package/scss/components/_table.scss +32 -0
  297. package/scss/components/form/_checks.scss +0 -351
  298. package/scss/components/form/_combo.scss +4 -0
  299. package/scss/components/form/_fieldset.scss +5 -1
  300. package/scss/components/form/_file.scss +11 -0
  301. package/scss/components/form/_form.scss +48 -0
  302. package/scss/components/form/_selection.scss +354 -0
  303. package/scss/components/form/_transfer.scss +75 -18
  304. package/scss/components/form/_tree.scss +42 -0
  305. package/scss/themes/_common.scss +7 -0
  306. package/scss/themes/_cxd-variables.scss +8 -6
  307. package/scss/themes/cxd.scss +17 -12
  308. package/sdk/ang-ie11.css +786 -196
  309. package/sdk/ang.css +820 -213
  310. package/sdk/antd-ie11.css +786 -196
  311. package/sdk/antd.css +820 -213
  312. package/sdk/charts.js +13 -13
  313. package/sdk/color-picker.js +65 -69
  314. package/sdk/cropperjs.js +2 -2
  315. package/sdk/cxd-ie11.css +825 -236
  316. package/sdk/cxd.css +862 -254
  317. package/sdk/dark-ie11.css +787 -197
  318. package/sdk/dark.css +820 -213
  319. package/sdk/exceljs.js +1 -1
  320. package/sdk/helper.css.map +1 -1
  321. package/sdk/iconfont.svg +2513 -0
  322. package/sdk/iconfont.ttf +0 -0
  323. package/sdk/iconfont.woff +0 -0
  324. package/sdk/locale/de-DE.js +2 -0
  325. package/sdk/markdown.js +69 -69
  326. package/sdk/papaparse.js +1 -1
  327. package/sdk/renderers/Form/CityDB.js +1 -1
  328. package/sdk/rest.js +20 -28
  329. package/sdk/rich-text.js +62 -62
  330. package/sdk/sdk-ie11.css +825 -236
  331. package/sdk/sdk.css +862 -254
  332. package/sdk/sdk.js +1243 -1175
  333. package/sdk/thirds/hls.js/hls.js +1 -1
  334. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  335. package/sdk/tinymce.js +57 -57
  336. package/src/Schema.ts +19 -1
  337. package/src/components/AnchorNav.tsx +15 -4
  338. package/src/components/{AssociatedCheckboxes.tsx → AssociatedSelection.tsx} +43 -37
  339. package/src/components/Badge.tsx +3 -3
  340. package/src/components/{ChainedCheckboxes.tsx → ChainedSelection.tsx} +57 -40
  341. package/src/components/Collapse.tsx +144 -20
  342. package/src/components/CollapseGroup.tsx +130 -0
  343. package/src/components/GridNav.tsx +233 -0
  344. package/src/components/{ListCheckboxes.tsx → GroupedSelection.tsx} +26 -21
  345. package/src/components/InputBox.tsx +10 -9
  346. package/src/components/Link.tsx +28 -37
  347. package/src/components/ModalManager.ts +1 -1
  348. package/src/components/PickerColumn.tsx +429 -0
  349. package/src/components/PickerContainer.tsx +128 -0
  350. package/src/components/Radios.tsx +3 -8
  351. package/src/components/ResultBox.tsx +9 -9
  352. package/src/components/SearchBox.tsx +4 -5
  353. package/src/components/Select.tsx +57 -5
  354. package/src/components/{Checkboxes.tsx → Selection.tsx} +75 -21
  355. package/src/components/{TableCheckboxes.tsx → TableSelection.tsx} +46 -25
  356. package/src/components/TabsTransfer.tsx +13 -7
  357. package/src/components/TabsTransferPicker.tsx +85 -0
  358. package/src/components/Toast.tsx +23 -16
  359. package/src/components/Transfer.tsx +71 -50
  360. package/src/components/TransferDropDown.tsx +120 -0
  361. package/src/components/TransferPicker.tsx +91 -0
  362. package/src/components/Tree.tsx +194 -8
  363. package/src/components/{TreeCheckboxes.tsx → TreeSelection.tsx} +33 -26
  364. package/src/components/WithRemoteConfig.tsx +7 -2
  365. package/src/components/condition-builder/Field.tsx +5 -5
  366. package/src/components/condition-builder/Func.tsx +3 -3
  367. package/src/components/condition-builder/InputSwitch.tsx +3 -3
  368. package/src/components/condition-builder/Item.tsx +5 -12
  369. package/src/components/icons.tsx +2 -0
  370. package/src/components/index.tsx +13 -13
  371. package/src/envOverwrite.ts +20 -8
  372. package/src/factory.tsx +70 -9
  373. package/src/hooks/index.ts +5 -0
  374. package/src/hooks/use-set-state.ts +19 -0
  375. package/src/hooks/use-touch.ts +100 -0
  376. package/src/hooks/use-update-effect.ts +16 -0
  377. package/src/icons/download.svg +4 -0
  378. package/src/icons/drag-bar.svg +12 -6
  379. package/src/index.tsx +5 -0
  380. package/src/locale/de-DE.ts +2 -0
  381. package/src/locale/en-US.ts +3 -0
  382. package/src/locale/zh-CN.ts +5 -2
  383. package/src/renderers/Action.tsx +28 -2
  384. package/src/renderers/AnchorNav.tsx +4 -0
  385. package/src/renderers/Avatar.tsx +8 -4
  386. package/src/renderers/Breadcrumb.tsx +5 -1
  387. package/src/renderers/CRUD.tsx +33 -3
  388. package/src/renderers/Card.tsx +63 -34
  389. package/src/renderers/Chart.tsx +6 -2
  390. package/src/renderers/Collapse.tsx +70 -115
  391. package/src/renderers/CollapseGroup.tsx +80 -0
  392. package/src/renderers/DropDownButton.tsx +1 -1
  393. package/src/renderers/Form/InputCity.tsx +4 -8
  394. package/src/renderers/Form/InputFile.tsx +65 -24
  395. package/src/renderers/Form/InputImage.tsx +11 -3
  396. package/src/renderers/Form/Item.tsx +3 -2
  397. package/src/renderers/Form/Options.tsx +16 -2
  398. package/src/renderers/Form/Select.tsx +162 -21
  399. package/src/renderers/Form/TabsTransferPicker.tsx +123 -0
  400. package/src/renderers/Form/Transfer.tsx +19 -4
  401. package/src/renderers/Form/TransferPicker.tsx +145 -0
  402. package/src/renderers/Form/TreeSelect.tsx +25 -0
  403. package/src/renderers/Form/index.tsx +15 -2
  404. package/src/renderers/Form/wrapControl.tsx +26 -1
  405. package/src/renderers/GridNav.tsx +204 -0
  406. package/src/renderers/IFrame.tsx +2 -4
  407. package/src/renderers/Json.tsx +9 -9
  408. package/src/renderers/Link.tsx +27 -13
  409. package/src/renderers/List.tsx +1 -1
  410. package/src/renderers/Mapping.tsx +27 -11
  411. package/src/renderers/Nav.tsx +108 -60
  412. package/src/renderers/Portlet.tsx +423 -0
  413. package/src/renderers/Property.tsx +3 -2
  414. package/src/renderers/SearchBox.tsx +23 -4
  415. package/src/renderers/Table/TableContent.tsx +40 -2
  416. package/src/renderers/Table/index.tsx +88 -43
  417. package/src/renderers/Tabs.tsx +9 -1
  418. package/src/renderers/WebComponent.tsx +2 -2
  419. package/src/store/crud.ts +3 -8
  420. package/src/store/form.ts +5 -10
  421. package/src/store/formItem.ts +94 -2
  422. package/src/store/service.ts +5 -4
  423. package/src/store/table.ts +55 -14
  424. package/src/types.ts +58 -1
  425. package/src/utils/api.ts +133 -26
  426. package/src/utils/dom.tsx +12 -0
  427. package/src/utils/helper.ts +27 -0
  428. package/src/utils/icon.tsx +4 -0
  429. package/tsconfig-for-declaration.json +1 -1
  430. package/dump.rdb +0 -0
  431. package/lib/components/AssociatedCheckboxes.d.ts +0 -762
  432. package/lib/components/AssociatedCheckboxes.js +0 -90
  433. package/lib/components/AssociatedCheckboxes.js.map +0 -13
  434. package/lib/components/ChainedCheckboxes.js.map +0 -13
  435. package/lib/components/Checkboxes.js +0 -101
  436. package/lib/components/Checkboxes.js.map +0 -13
  437. package/lib/components/ListCheckboxes.d.ts +0 -739
  438. package/lib/components/ListCheckboxes.js +0 -48
  439. package/lib/components/ListCheckboxes.js.map +0 -13
  440. package/lib/components/ListRadios.d.ts +0 -763
  441. package/lib/components/ListRadios.js +0 -86
  442. package/lib/components/ListRadios.js.map +0 -13
  443. package/lib/components/TableCheckboxes.js.map +0 -13
  444. package/lib/components/TreeCheckboxes.js.map +0 -13
  445. package/lib/components/TreeRadios.d.ts +0 -838
  446. package/lib/components/TreeRadios.js +0 -116
  447. package/lib/components/TreeRadios.js.map +0 -13
  448. package/src/components/ListRadios.tsx +0 -159
  449. package/src/components/TreeRadios.tsx +0 -202
package/lib/types.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  /// <reference types="react" />
2
+ import type { ActionSchema } from './renderers/Action';
2
3
  import { SchemaApiObject } from './Schema';
3
4
  export interface ApiObject extends SchemaApiObject {
4
5
  config?: {
@@ -28,7 +29,7 @@ export interface fetcherResult {
28
29
  headers: object;
29
30
  }
30
31
  export interface fetchOptions {
31
- method?: 'get' | 'post' | 'put' | 'patch' | 'delete';
32
+ method?: 'get' | 'post' | 'put' | 'patch' | 'delete' | 'jsonp';
32
33
  successMessage?: string;
33
34
  errorMessage?: string;
34
35
  autoAppend?: boolean;
@@ -118,4 +119,40 @@ export declare type FunctionPropertyNames<T> = {
118
119
  export interface JSONSchema {
119
120
  [propsName: string]: any;
120
121
  }
122
+ /**
123
+ * 事件跟踪的定义
124
+ */
125
+ export interface EventTrack {
126
+ /**
127
+ * 事件类型,目前有以下几种
128
+ *
129
+ * api: 所有 fetcher 前调用
130
+ * url: 打开外部链接,组件有可能是 action 也有可能是 link
131
+ * link: 打开内部链接
132
+ * dialog: action 的弹框
133
+ * drawer: action 的抽出式弹框
134
+ * copy: action 里的复制
135
+ * reload: action 里的 reload
136
+ * email: action 里的 email
137
+ * prev: action 里的 prev
138
+ * next: action 里的 next
139
+ * cancel: action 里的 cancel
140
+ * close: action 里的 close
141
+ * submit: 有可能是 action 里的 submit,也有可能是表单提交
142
+ * confirm: action 里的 confirm
143
+ * add: action 里的 add
144
+ * reset: action 里的 reset
145
+ * reset-and-submit: action 里的 reset-and-submit
146
+ * formItemChange: 表单项内容变化
147
+ * formError: 表单验证失败
148
+ * formSubmit: 表单成功提交,在表单验证成功之后才会触发,这个可能会和 api 重合
149
+ * tabChange: tab 切换
150
+ * netError: api 报错
151
+ */
152
+ eventType: 'api' | 'url' | 'link' | 'dialog' | 'drawer' | 'copy' | 'reload' | 'email' | 'prev' | 'next' | 'cancel' | 'close' | 'submit' | 'confirm' | 'reset' | 'reset-and-submit' | 'formItemChange' | 'tabChange';
153
+ /**
154
+ * 事件数据
155
+ */
156
+ eventData: ActionSchema | Api;
157
+ }
121
158
  export {};
package/lib/types.js CHANGED
@@ -1,8 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- // export type Omit<T, K extends keyof T & any> = Pick<T, Exclude<keyof T, K>>;
4
- // export type Override<M, N> = Omit<M, Extract<keyof M, keyof N>> & N;
5
- // export type ExtractProps<
6
- // TComponentOrTProps
7
- // > = TComponentOrTProps extends React.ComponentType<infer P> ? P : never;
8
3
  //# sourceMappingURL=./types.js.map
package/lib/types.js.map CHANGED
@@ -6,8 +6,8 @@
6
6
  "/src/types.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";;AA0JA,+EAA+E;AAC/E,uEAAuE;AACvE,4BAA4B;AAC5B,uBAAuB;AACvB,2EAA2E",
9
+ "mappings": "",
10
10
  "sourcesContent": [
11
- "import {SchemaApiObject} from './Schema';\n\nexport interface ApiObject extends SchemaApiObject {\n config?: {\n withCredentials?: boolean;\n cancelExecutor?: (cancel: Function) => void;\n };\n body?: PlainObject;\n query?: PlainObject;\n adaptor?: (payload: object, response: fetcherResult, api: ApiObject) => any;\n requestAdaptor?: (api: ApiObject) => ApiObject;\n}\nexport type ApiString = string;\nexport type Api = ApiString | ApiObject;\n\nexport interface fetcherResult {\n data?: {\n data: object;\n status: number;\n msg: string;\n msgTimeout?: number;\n errors?: {\n [propName: string]: string;\n };\n type?: string;\n [propName: string]: any; // 为了兼容其他返回格式\n };\n status: number;\n headers: object;\n}\n\nexport interface fetchOptions {\n method?: 'get' | 'post' | 'put' | 'patch' | 'delete';\n successMessage?: string;\n errorMessage?: string;\n autoAppend?: boolean;\n beforeSend?: (data: any) => any;\n onSuccess?: (json: Payload) => any;\n onFailed?: (json: Payload) => any;\n silent?: boolean;\n [propName: string]: any;\n}\n\nexport interface Payload {\n ok: boolean;\n msg: string;\n msgTimeout?: number;\n data: any;\n status: number;\n errors?: {\n [propName: string]: string;\n };\n}\n\nexport interface Schema {\n type: string;\n detectField?: string;\n visibleOn?: string;\n hiddenOn?: string;\n children?: JSX.Element | ((props: any, schema?: any) => JSX.Element) | null;\n definitions?: Definitions;\n [propName: string]: any;\n}\n\nexport interface Button {\n type: 'submit' | 'button' | 'reset';\n label?: string;\n icon?: string;\n size?: string;\n disabled?: boolean;\n className?: string;\n}\n\nexport type SchemaNode = Schema | string | Array<Schema | string>;\nexport interface SchemaArray extends Array<SchemaNode> {}\nexport interface Definitions {\n [propName: string]: SchemaNode;\n}\nexport interface Action extends Button {\n actionType?:\n | 'submit'\n | 'copy'\n | 'reload'\n | 'ajax'\n | 'dialog'\n | 'drawer'\n | 'jump'\n | 'link'\n | 'url'\n | 'email'\n | 'close'\n | 'confirm'\n | 'add'\n | 'remove'\n | 'delete'\n | 'edit'\n | 'cancel'\n | 'next'\n | 'prev'\n | 'reset'\n | 'reset-and-submit'\n | 'clear'\n | 'clear-and-submit';\n api?: Api;\n asyncApi?: Api;\n payload?: any;\n dialog?: SchemaNode;\n to?: string;\n target?: string;\n link?: string;\n url?: string;\n cc?: string;\n bcc?: string;\n subject?: string;\n body?: string;\n mergeData?: boolean;\n reload?: string;\n messages?: {\n success?: string;\n failed?: string;\n };\n feedback?: any;\n required?: Array<string>;\n [propName: string]: any;\n}\n\nexport interface Location {\n pathname: string;\n search: string;\n state: any;\n hash: string;\n key?: string;\n query?: any;\n}\n\nexport interface PlainObject {\n [propsName: string]: any;\n}\n\nexport interface RendererData {\n [propsName: string]: any;\n __prev?: RendererDataAlias;\n __super?: RendererData;\n}\ntype RendererDataAlias = RendererData;\n\nexport type FunctionPropertyNames<T> = {\n [K in keyof T]: T[K] extends Function ? K : never;\n}[keyof T];\n\nexport interface JSONSchema {\n [propsName: string]: any;\n}\n\n// export type Omit<T, K extends keyof T & any> = Pick<T, Exclude<keyof T, K>>;\n// export type Override<M, N> = Omit<M, Extract<keyof M, keyof N>> & N;\n// export type ExtractProps<\n// TComponentOrTProps\n// > = TComponentOrTProps extends React.ComponentType<infer P> ? P : never;\n"
11
+ "import type {ActionSchema} from './renderers/Action';\nimport {SchemaApiObject} from './Schema';\n\nexport interface ApiObject extends SchemaApiObject {\n config?: {\n withCredentials?: boolean;\n cancelExecutor?: (cancel: Function) => void;\n };\n body?: PlainObject;\n query?: PlainObject;\n adaptor?: (payload: object, response: fetcherResult, api: ApiObject) => any;\n requestAdaptor?: (api: ApiObject) => ApiObject;\n}\nexport type ApiString = string;\nexport type Api = ApiString | ApiObject;\n\nexport interface fetcherResult {\n data?: {\n data: object;\n status: number;\n msg: string;\n msgTimeout?: number;\n errors?: {\n [propName: string]: string;\n };\n type?: string;\n [propName: string]: any; // 为了兼容其他返回格式\n };\n status: number;\n headers: object;\n}\n\nexport interface fetchOptions {\n method?: 'get' | 'post' | 'put' | 'patch' | 'delete' | 'jsonp';\n successMessage?: string;\n errorMessage?: string;\n autoAppend?: boolean;\n beforeSend?: (data: any) => any;\n onSuccess?: (json: Payload) => any;\n onFailed?: (json: Payload) => any;\n silent?: boolean;\n [propName: string]: any;\n}\n\nexport interface Payload {\n ok: boolean;\n msg: string;\n msgTimeout?: number;\n data: any;\n status: number;\n errors?: {\n [propName: string]: string;\n };\n}\n\nexport interface Schema {\n type: string;\n detectField?: string;\n visibleOn?: string;\n hiddenOn?: string;\n children?: JSX.Element | ((props: any, schema?: any) => JSX.Element) | null;\n definitions?: Definitions;\n [propName: string]: any;\n}\n\nexport interface Button {\n type: 'submit' | 'button' | 'reset';\n label?: string;\n icon?: string;\n size?: string;\n disabled?: boolean;\n className?: string;\n}\n\nexport type SchemaNode = Schema | string | Array<Schema | string>;\nexport interface SchemaArray extends Array<SchemaNode> {}\nexport interface Definitions {\n [propName: string]: SchemaNode;\n}\nexport interface Action extends Button {\n actionType?:\n | 'submit'\n | 'copy'\n | 'reload'\n | 'ajax'\n | 'dialog'\n | 'drawer'\n | 'jump'\n | 'link'\n | 'url'\n | 'email'\n | 'close'\n | 'confirm'\n | 'add'\n | 'remove'\n | 'delete'\n | 'edit'\n | 'cancel'\n | 'next'\n | 'prev'\n | 'reset'\n | 'reset-and-submit'\n | 'clear'\n | 'clear-and-submit';\n api?: Api;\n asyncApi?: Api;\n payload?: any;\n dialog?: SchemaNode;\n to?: string;\n target?: string;\n link?: string;\n url?: string;\n cc?: string;\n bcc?: string;\n subject?: string;\n body?: string;\n mergeData?: boolean;\n reload?: string;\n messages?: {\n success?: string;\n failed?: string;\n };\n feedback?: any;\n required?: Array<string>;\n [propName: string]: any;\n}\n\nexport interface Location {\n pathname: string;\n search: string;\n state: any;\n hash: string;\n key?: string;\n query?: any;\n}\n\nexport interface PlainObject {\n [propsName: string]: any;\n}\n\nexport interface RendererData {\n [propsName: string]: any;\n __prev?: RendererDataAlias;\n __super?: RendererData;\n}\ntype RendererDataAlias = RendererData;\n\nexport type FunctionPropertyNames<T> = {\n [K in keyof T]: T[K] extends Function ? K : never;\n}[keyof T];\n\nexport interface JSONSchema {\n [propsName: string]: any;\n}\n\n// export type Omit<T, K extends keyof T & any> = Pick<T, Exclude<keyof T, K>>;\n// export type Override<M, N> = Omit<M, Extract<keyof M, keyof N>> & N;\n// export type ExtractProps<\n// TComponentOrTProps\n// > = TComponentOrTProps extends React.ComponentType<infer P> ? P : never;\n\n/**\n * 事件跟踪的定义\n */\nexport interface EventTrack {\n /**\n * 事件类型,目前有以下几种\n *\n * api: 所有 fetcher 前调用\n * url: 打开外部链接,组件有可能是 action 也有可能是 link\n * link: 打开内部链接\n * dialog: action 的弹框\n * drawer: action 的抽出式弹框\n * copy: action 里的复制\n * reload: action 里的 reload\n * email: action 里的 email\n * prev: action 里的 prev\n * next: action 里的 next\n * cancel: action 里的 cancel\n * close: action 里的 close\n * submit: 有可能是 action 里的 submit,也有可能是表单提交\n * confirm: action 里的 confirm\n * add: action 里的 add\n * reset: action 里的 reset\n * reset-and-submit: action 里的 reset-and-submit\n * formItemChange: 表单项内容变化\n * formError: 表单验证失败\n * formSubmit: 表单成功提交,在表单验证成功之后才会触发,这个可能会和 api 重合\n * tabChange: tab 切换\n * netError: api 报错\n */\n eventType:\n | 'api'\n | 'url'\n | 'link'\n | 'dialog'\n | 'drawer'\n | 'copy'\n | 'reload'\n | 'email'\n | 'prev'\n | 'next'\n | 'cancel'\n | 'close'\n | 'submit'\n | 'confirm'\n | 'reset'\n | 'reset-and-submit'\n | 'formItemChange'\n | 'tabChange';\n\n /**\n * 事件数据\n */\n eventData: ActionSchema | Api;\n}\n"
12
12
  ]
13
13
  }
@@ -1,4 +1,4 @@
1
- import { Api, ApiObject, fetcherResult, Payload } from '../types';
1
+ import { Api, ApiObject, EventTrack, fetcherResult, Payload } from '../types';
2
2
  import { fetcherConfig } from '../factory';
3
3
  interface ApiCacheConfig extends ApiObject {
4
4
  cachedPromise: Promise<any>;
@@ -13,8 +13,9 @@ export declare function buildApi(api: Api, data?: object, options?: {
13
13
  export declare function str2function(contents: string, ...args: Array<string>): Function | null;
14
14
  export declare function str2AsyncFunction(contents: string, ...args: Array<string>): Function | null;
15
15
  export declare function responseAdaptor(ret: fetcherResult, api: ApiObject): Payload;
16
- export declare function wrapFetcher(fn: (config: fetcherConfig) => Promise<fetcherResult>): (api: Api, data: object, options?: object) => Promise<Payload | void>;
16
+ export declare function wrapFetcher(fn: (config: fetcherConfig) => Promise<fetcherResult>, tracker?: (eventTrack: EventTrack, data: any) => void): (api: Api, data: object, options?: object) => Promise<Payload | void>;
17
17
  export declare function wrapAdaptor(promise: Promise<fetcherResult>, api: ApiObject): Promise<Payload>;
18
+ export declare function jsonpFetcher(api: ApiObject): Promise<fetcherResult>;
18
19
  export declare function isApiOutdated(prevApi: Api | undefined, nextApi: Api | undefined, prevData: any, nextData: any): nextApi is Api;
19
20
  export declare function isValidApi(api: string): boolean | "";
20
21
  export declare function isEffectiveApi(api?: Api, data?: any, initFetch?: boolean, initFetchOn?: string): api is Api;
@@ -22,4 +23,5 @@ export declare function isSameApi(apiA: ApiObject | ApiCacheConfig, apiB: ApiObj
22
23
  export declare function getApiCache(api: ApiObject): ApiCacheConfig | undefined;
23
24
  export declare function setApiCache(api: ApiObject, promise: Promise<any>): Promise<any>;
24
25
  export declare function clearApiCache(): void;
26
+ export declare function normalizeApiResponseData(data: any): any;
25
27
  export {};
package/lib/utils/api.js CHANGED
@@ -1,11 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.clearApiCache = exports.setApiCache = exports.getApiCache = exports.isSameApi = exports.isEffectiveApi = exports.isValidApi = exports.isApiOutdated = exports.wrapAdaptor = exports.wrapFetcher = exports.responseAdaptor = exports.str2AsyncFunction = exports.str2function = exports.buildApi = exports.normalizeApi = void 0;
3
+ exports.normalizeApiResponseData = exports.clearApiCache = exports.setApiCache = exports.getApiCache = exports.isSameApi = exports.isEffectiveApi = exports.isValidApi = exports.isApiOutdated = exports.jsonpFetcher = exports.wrapAdaptor = exports.wrapFetcher = exports.responseAdaptor = exports.str2AsyncFunction = exports.str2function = exports.buildApi = exports.normalizeApi = void 0;
4
4
  var tslib_1 = require("tslib");
5
+ var omit_1 = (0, tslib_1.__importDefault)(require("lodash/omit"));
5
6
  var tpl_builtin_1 = require("./tpl-builtin");
6
7
  var tpl_1 = require("./tpl");
7
8
  var helper_1 = require("./helper");
8
- var rSchema = /(?:^|raw\:)(get|post|put|delete|patch|options|head):/i;
9
+ var isPlainObject_1 = (0, tslib_1.__importDefault)(require("lodash/isPlainObject"));
10
+ var rSchema = /(?:^|raw\:)(get|post|put|delete|patch|options|head|jsonp):/i;
9
11
  var apiCaches = [];
10
12
  var isIE = !!document.documentMode;
11
13
  function normalizeApi(api, defaultMethod) {
@@ -30,6 +32,15 @@ function buildApi(api, data, options) {
30
32
  var autoAppend = options.autoAppend, ignoreData = options.ignoreData, rest = (0, tslib_1.__rest)(options, ["autoAppend", "ignoreData"]);
31
33
  api.config = (0, tslib_1.__assign)({}, rest);
32
34
  api.method = (api.method || options.method || 'get').toLowerCase();
35
+ if (api.headers) {
36
+ api.headers = (0, tpl_builtin_1.dataMapping)(api.headers, data, undefined, false);
37
+ }
38
+ if (api.requestAdaptor && typeof api.requestAdaptor === 'string') {
39
+ api.requestAdaptor = str2function(api.requestAdaptor, 'api');
40
+ }
41
+ if (api.adaptor && typeof api.adaptor === 'string') {
42
+ api.adaptor = str2function(api.adaptor, 'payload', 'response', 'api');
43
+ }
33
44
  if (!data) {
34
45
  return api;
35
46
  }
@@ -62,7 +73,7 @@ function buildApi(api, data, options) {
62
73
  api.body = api.data = (0, helper_1.cloneObject)(data);
63
74
  }
64
75
  // get 类请求,把 data 附带到 url 上。
65
- if (api.method === 'get') {
76
+ if (api.method === 'get' || api.method === 'jsonp') {
66
77
  if (!~raw.indexOf('$') && !api.data && autoAppend) {
67
78
  api.query = api.data = data;
68
79
  }
@@ -93,15 +104,6 @@ function buildApi(api, data, options) {
93
104
  delete api.data;
94
105
  }
95
106
  }
96
- if (api.headers) {
97
- api.headers = (0, tpl_builtin_1.dataMapping)(api.headers, data, undefined, false);
98
- }
99
- if (api.requestAdaptor && typeof api.requestAdaptor === 'string') {
100
- api.requestAdaptor = str2function(api.requestAdaptor, 'api');
101
- }
102
- if (api.adaptor && typeof api.adaptor === 'string') {
103
- api.adaptor = str2function(api.adaptor, 'payload', 'response', 'api');
104
- }
105
107
  return api;
106
108
  }
107
109
  exports.buildApi = buildApi;
@@ -144,7 +146,21 @@ function responseAdaptor(ret, api) {
144
146
  var data = ret.data;
145
147
  var hasStatusField = true;
146
148
  if (!data) {
147
- throw new Error('Response is empty!');
149
+ throw new Error('Response is empty');
150
+ }
151
+ if (typeof data === 'string') {
152
+ try {
153
+ data = JSON.parse(data);
154
+ if (typeof data === 'undefined') {
155
+ throw new Error('Response should be JSON');
156
+ }
157
+ }
158
+ catch (e) {
159
+ var responseBrief = typeof data === 'string'
160
+ ? (0, tpl_builtin_1.escapeHtml)(data.substring(0, 100))
161
+ : '';
162
+ throw new Error("Response should be JSON\n " + responseBrief);
163
+ }
148
164
  }
149
165
  // 兼容几种常见写法
150
166
  if (data.hasOwnProperty('errorCode')) {
@@ -190,18 +206,20 @@ function responseAdaptor(ret, api) {
190
206
  payload.errors = data.errors;
191
207
  }
192
208
  if (payload.ok && api.responseData) {
193
- payload.data = (0, tpl_builtin_1.dataMapping)(api.responseData, (0, helper_1.createObject)({ api: api }, (Array.isArray(payload.data)
209
+ var responseData = (0, tpl_builtin_1.dataMapping)(api.responseData, (0, helper_1.createObject)({ api: api }, (Array.isArray(payload.data)
194
210
  ? {
195
211
  items: payload.data
196
212
  }
197
213
  : payload.data) || {}), undefined, api.convertKeyToPath);
214
+ console.debug('responseData', responseData);
215
+ payload.data = responseData;
198
216
  }
199
217
  return payload;
200
218
  }
201
219
  exports.responseAdaptor = responseAdaptor;
202
- function wrapFetcher(fn) {
220
+ function wrapFetcher(fn, tracker) {
203
221
  return function (api, data, options) {
204
- var _a;
222
+ var _a, _b;
205
223
  api = buildApi(api, data, options);
206
224
  api.requestAdaptor && (api = api.requestAdaptor(api) || api);
207
225
  if (api.data && ((0, helper_1.hasFile)(api.data) || api.dataType === 'form-data')) {
@@ -224,6 +242,10 @@ function wrapFetcher(fn) {
224
242
  api.headers = api.headers || (api.headers = {});
225
243
  api.headers['Content-Type'] = 'application/json';
226
244
  }
245
+ tracker === null || tracker === void 0 ? void 0 : tracker({ eventType: 'api', eventData: (0, omit_1.default)(api, ['config', 'data', 'body']) }, api.data);
246
+ if (((_a = api.method) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) === 'jsonp') {
247
+ return wrapAdaptor(jsonpFetcher(api), api);
248
+ }
227
249
  if (typeof api.cache === 'number' && api.cache > 0) {
228
250
  var apiCache = getApiCache(api);
229
251
  return wrapAdaptor(apiCache
@@ -231,7 +253,7 @@ function wrapFetcher(fn) {
231
253
  : setApiCache(api, fn(api)), api);
232
254
  }
233
255
  // IE 下 get 请求会被缓存,所以自动加个时间戳
234
- if (isIE && api && ((_a = api.method) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) === 'get') {
256
+ if (isIE && api && ((_b = api.method) === null || _b === void 0 ? void 0 : _b.toLocaleLowerCase()) === 'get') {
235
257
  var timeStamp = "_t=" + Date.now();
236
258
  if (api.url.indexOf('?') === -1) {
237
259
  api.url = api.url + ("?" + timeStamp);
@@ -268,6 +290,58 @@ function wrapAdaptor(promise, api) {
268
290
  : promise.then(function (ret) { return responseAdaptor(ret, api); });
269
291
  }
270
292
  exports.wrapAdaptor = wrapAdaptor;
293
+ function jsonpFetcher(api) {
294
+ return new Promise(function (resolve, reject) {
295
+ var _a;
296
+ var script = document.createElement('script');
297
+ var src = api.url;
298
+ script.async = true;
299
+ function remove() {
300
+ if (script) {
301
+ // @ts-ignore
302
+ script.onload = script.onreadystatechange = script.onerror = null;
303
+ if (script.parentNode) {
304
+ script.parentNode.removeChild(script);
305
+ }
306
+ script = null;
307
+ }
308
+ }
309
+ var jsonp = ((_a = api.query) === null || _a === void 0 ? void 0 : _a.callback) || 'axiosJsonpCallback' + (0, helper_1.uuid)();
310
+ var old = window[jsonp];
311
+ window[jsonp] = function (responseData) {
312
+ window[jsonp] = old;
313
+ var response = {
314
+ data: responseData,
315
+ status: 200,
316
+ headers: {}
317
+ };
318
+ resolve(response);
319
+ };
320
+ var additionalParams = {
321
+ _: new Date().getTime(),
322
+ _callback: jsonp
323
+ };
324
+ src += (src.indexOf('?') >= 0 ? '&' : '?') + (0, helper_1.qsstringify)(additionalParams);
325
+ // @ts-ignore IE 为script.onreadystatechange
326
+ script.onload = script.onreadystatechange = function () {
327
+ // @ts-ignore
328
+ if (!script.readyState || /loaded|complete/.test(script.readyState)) {
329
+ remove();
330
+ }
331
+ };
332
+ script.onerror = function () {
333
+ remove();
334
+ var errResponse = {
335
+ status: 0,
336
+ headers: {}
337
+ };
338
+ reject(errResponse);
339
+ };
340
+ script.src = src;
341
+ document.head.appendChild(script);
342
+ });
343
+ }
344
+ exports.jsonpFetcher = jsonpFetcher;
271
345
  function isApiOutdated(prevApi, nextApi, prevData, nextData) {
272
346
  var _a;
273
347
  if (!nextApi) {
@@ -365,5 +439,18 @@ function clearApiCache() {
365
439
  apiCaches.splice(0, apiCaches.length);
366
440
  }
367
441
  exports.clearApiCache = clearApiCache;
442
+ function normalizeApiResponseData(data) {
443
+ var _a;
444
+ if (typeof data === 'undefined') {
445
+ data = {};
446
+ }
447
+ else if (!(0, isPlainObject_1.default)(data)) {
448
+ data = (_a = {},
449
+ _a[Array.isArray(data) ? 'items' : 'result'] = data,
450
+ _a);
451
+ }
452
+ return data;
453
+ }
454
+ exports.normalizeApiResponseData = normalizeApiResponseData;
368
455
  // window.apiCaches = apiCaches;
369
456
  //# sourceMappingURL=./utils/api.js.map
@@ -6,8 +6,8 @@
6
6
  "/src/utils/api.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": ";;;;AAAA,kEAA+B;AAG/B,6CAAgE;AAChE,6BAAqC;AACrC,mCAUkB;AAClB,oFAAiD;AAEjD,IAAM,OAAO,GAAG,6DAA6D,CAAC;AAO9E,IAAM,SAAS,GAA0B,EAAE,CAAC;AAE5C,IAAM,IAAI,GAAG,CAAC,CAAE,QAAgB,CAAC,YAAY,CAAC;AAE9C,SAAgB,YAAY,CAC1B,GAAQ,EACR,aAA6B;IAA7B,8BAAA,EAAA,qBAA6B;IAE7B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,IAAI,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QAEhD,GAAG,GAAG;YACJ,MAAM,EAAE,CAAC,MAAM,IAAI,aAAa,CAAQ;YACxC,GAAG,EAAE,GAAG;SACT,CAAC;KACH;SAAM;QACL,GAAG,6BACE,GAAG,CACP,CAAC;KACH;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAlBD,oCAkBC;AAED,SAAgB,QAAQ,CACtB,GAAQ,EACR,IAAa,EACb,OAIM;IAJN,wBAAA,EAAA,YAIM;IAEN,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACjC,IAAA,UAAU,GAAyB,OAAO,WAAhC,EAAE,UAAU,GAAa,OAAO,WAApB,EAAK,IAAI,uBAAI,OAAO,EAA3C,4BAAiC,CAAD,CAAY;IAElD,GAAG,CAAC,MAAM,6BACL,IAAI,CACR,CAAC;IACF,GAAG,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,IAAK,OAAe,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IAE5E,IAAI,GAAG,CAAC,OAAO,EAAE;QACf,GAAG,CAAC,OAAO,GAAG,IAAA,yBAAW,EAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;KAChE;IAED,IAAI,GAAG,CAAC,cAAc,IAAI,OAAO,GAAG,CAAC,cAAc,KAAK,QAAQ,EAAE;QAChE,GAAG,CAAC,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAQ,CAAC;KACrE;IAED,IAAI,GAAG,CAAC,OAAO,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE;QAClD,GAAG,CAAC,OAAO,GAAG,YAAY,CACxB,GAAG,CAAC,OAAO,EACX,SAAS,EACT,UAAU,EACV,KAAK,CACC,CAAC;KACV;IAED,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,GAAG,CAAC;KACZ;SAAM,IACL,IAAI,YAAY,QAAQ;QACxB,IAAI,YAAY,IAAI;QACpB,IAAI,YAAY,WAAW,EAC3B;QACA,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;QAChB,OAAO,GAAG,CAAC;KACZ;IAED,IAAM,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IACtC,IAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEjC,IAAI,CAAC,GAAG,EAAE;QACR,IAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,IAAM,MAAM,GAAG,IAAA,gBAAO,EACpB,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAC3D,CAAC;QACF,GAAG,CAAC,GAAG;YACL,IAAA,sBAAQ,EAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC;gBAC7D,IAAA,oBAAW,EACT,CAAC,GAAG,CAAC,KAAK,GAAG,IAAA,yBAAW,EAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC,CACzE;gBACD,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;KAChD;SAAM;QACL,GAAG,CAAC,GAAG,GAAG,IAAA,sBAAQ,EAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;KACnD;IAED,IAAI,UAAU,EAAE;QACd,OAAO,GAAG,CAAC;KACZ;IAED,IAAI,GAAG,CAAC,IAAI,EAAE;QACZ,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAA,yBAAW,EAC/B,GAAG,CAAC,IAAI,EACR,IAAI,EACJ,SAAS,EACT,GAAG,CAAC,gBAAgB,CACrB,CAAC;KACH;SAAM,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE;QACxD,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;KACzC;IAED,4BAA4B;IAC5B,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,KAAK,OAAO,EAAE;QAClD,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,UAAU,EAAE;YACjD,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;SAC7B;aAAM,IACL,GAAG,CAAC,iBAAiB,KAAK,KAAK;YAC/B,GAAG,CAAC,IAAI;YACR,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC;YAClB,UAAU,EACV;YACA,IAAM,KAAG,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,CAAC,KAAG,EAAE;gBACR,IAAI,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,mDAClB,IAAA,gBAAO,EAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,KAAG,GAAG,CAAC,CAAC,CAAC,GACnC,IAAI,CACR,CAAC,CAAC;gBACH,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,KAAG,CAAC,GAAG,GAAG,GAAG,IAAA,oBAAW,EAAC,MAAM,CAAC,CAAC;aACjE;iBAAM;gBACL,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC;gBACjB,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;aACpC;SACF;QAED,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,iBAAiB,KAAK,KAAK,EAAE;YAC/C,IAAM,KAAG,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,CAAC,KAAG,EAAE;gBACR,IAAI,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,mDAClB,IAAA,gBAAO,EAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,KAAG,GAAG,CAAC,CAAC,CAAC,GACnC,GAAG,CAAC,IAAI,CACZ,CAAC,CAAC;gBACH,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,KAAG,CAAC,GAAG,GAAG,GAAG,IAAA,oBAAW,EAAC,MAAM,CAAC,CAAC;aACjE;iBAAM;gBACL,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC;gBACrB,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG,IAAA,oBAAW,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACxC;YACD,OAAO,GAAG,CAAC,IAAI,CAAC;SACjB;KACF;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAtHD,4BAsHC;AAED,SAAgB,YAAY,CAC1B,QAAgB;IAChB,cAAsB;SAAtB,UAAsB,EAAtB,qBAAsB,EAAtB,IAAsB;QAAtB,6BAAsB;;IAEtB,IAAI;QACF,IAAI,EAAE,QAAO,QAAQ,YAAR,QAAQ,kEAAI,IAAI,WAAE,QAAQ,aAAC,CAAC;QACzC,OAAO,EAAE,CAAC;KACX;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAXD,oCAWC;AAED,IAAM,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC;;;;CAAoB,CAAC,CAAC,WAAW,CAAC;AAE9E,SAAgB,iBAAiB,CAC/B,QAAgB;IAChB,cAAsB;SAAtB,UAAsB,EAAtB,qBAAsB,EAAtB,IAAsB;QAAtB,6BAAsB;;IAEtB,IAAI;QACF,IAAI,EAAE,QAAO,aAAa,YAAb,aAAa,kEAAI,IAAI,WAAE,QAAQ,aAAC,CAAC;QAC9C,OAAO,EAAE,CAAC;KACX;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAXD,8CAWC;AAED,SAAgB,eAAe,CAAC,GAAkB,EAAE,GAAc;IAChE,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IACpB,IAAI,cAAc,GAAG,IAAI,CAAC;IAE1B,IAAI,CAAC,IAAI,EAAE;QACT,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;KACtC;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,IAAI;YACF,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACxB,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE;gBAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;aAC5C;SACF;QAAC,OAAO,CAAC,EAAE;YACV,IAAM,aAAa,GACjB,OAAO,IAAI,KAAK,QAAQ;gBACtB,CAAC,CAAC,IAAA,wBAAU,EAAE,IAAe,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;gBAChD,CAAC,CAAC,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,+BAA6B,aAAe,CAAC,CAAC;SAC/D;KACF;IAED,WAAW;IACX,IAAI,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE;QACpC,aAAa;QACb,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;KAC9B;SAAM,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;QACvC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC;KACnD;SAAM,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;QACpC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;QACtB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC;KACnC;SAAM,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;QACvC,oBAAoB;QACpB,gEAAgE;QAChE,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE;YACvE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YAC9B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;SAC/B;aAAM;YACL,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;YACzB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC;SACpC;KACF;IAED,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;QAClC,cAAc,GAAG,KAAK,CAAC;KACxB;IAED,IAAM,OAAO,GAAY;QACvB,EAAE,EAAE,cAAc,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC;QAChD,MAAM,EAAE,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM;QAClD,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO;QAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc;KACtE,CAAC;IAEF,4BAA4B;IAC5B,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;QACrB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;KACrB;IAED,IAAI,OAAO,CAAC,MAAM,IAAI,GAAG,EAAE;QACzB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;KAC9B;IAED,IAAI,OAAO,CAAC,EAAE,IAAI,GAAG,CAAC,YAAY,EAAE;QAClC,IAAM,YAAY,GAAG,IAAA,yBAAW,EAC9B,GAAG,CAAC,YAAY,EAEhB,IAAA,qBAAY,EACV,EAAC,GAAG,KAAA,EAAC,EACL,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;YAC1B,CAAC,CAAC;gBACE,KAAK,EAAE,OAAO,CAAC,IAAI;aACpB;YACH,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CACxB,EACD,SAAS,EACT,GAAG,CAAC,gBAAgB,CACrB,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,GAAG,YAAY,CAAC;KAC7B;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAvFD,0CAuFC;AAED,SAAgB,WAAW,CACzB,EAAqD,EACrD,OAAqD;IAErD,OAAO,UAAU,GAAG,EAAE,IAAI,EAAE,OAAO;;QACjC,GAAG,GAAG,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAc,CAAC;QAEhD,GAAG,CAAC,cAAc,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;QAE7D,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,IAAA,gBAAO,EAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,CAAC,EAAE;YACnE,GAAG,CAAC,IAAI;gBACN,GAAG,CAAC,IAAI,YAAY,QAAQ;oBAC1B,CAAC,CAAC,GAAG,CAAC,IAAI;oBACV,CAAC,CAAC,IAAA,wBAAe,EAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;SAChD;aAAM,IACL,GAAG,CAAC,IAAI;YACR,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;YAC5B,GAAG,CAAC,QAAQ,KAAK,MAAM,EACvB;YACA,GAAG,CAAC,IAAI,GAAG,IAAA,oBAAW,EAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,SAAS,CAAQ,CAAC;YACvD,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;YAChD,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,mCAAmC,CAAC;SACnE;aAAM,IACL,GAAG,CAAC,IAAI;YACR,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;YAC5B,GAAG,CAAC,QAAQ,KAAK,MAAM,EACvB;YACA,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAQ,CAAC;YAC3C,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;YAChD,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;SAClD;QAED,OAAO,aAAP,OAAO,uBAAP,OAAO,CACL,EAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAA,cAAI,EAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAC,EACpE,GAAG,CAAC,IAAI,CACT,CAAC;QAEF,IAAI,CAAA,MAAA,GAAG,CAAC,MAAM,0CAAE,iBAAiB,EAAE,MAAK,OAAO,EAAE;YAC/C,OAAO,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;SAC5C;QAED,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE;YAClD,IAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAClC,OAAO,WAAW,CAChB,QAAQ;gBACN,CAAC,CAAE,QAA2B,CAAC,aAAa;gBAC5C,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAC7B,GAAG,CACJ,CAAC;SACH;QACD,4BAA4B;QAC5B,IAAI,IAAI,IAAI,GAAG,IAAI,CAAA,MAAA,GAAG,CAAC,MAAM,0CAAE,iBAAiB,EAAE,MAAK,KAAK,EAAE;YAC5D,IAAM,SAAS,GAAG,QAAM,IAAI,CAAC,GAAG,EAAI,CAAC;YACrC,IAAI,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;gBAC/B,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAG,MAAI,SAAW,CAAA,CAAC;aACrC;iBAAM;gBACL,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAG,MAAI,SAAW,CAAA,CAAC;aACrC;SACF;QACD,OAAO,WAAW,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IACnC,CAAC,CAAC;AACJ,CAAC;AA7DD,kCA6DC;AAED,SAAgB,WAAW,CAAC,OAA+B,EAAE,GAAc;IAA3E,iBAkBC;IAjBC,IAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAC5B,OAAO,OAAO;QACZ,CAAC,CAAC,OAAO;aACJ,IAAI,CAAC,UAAM,QAAQ;;;;;wBACd,MAAM,GAAG,OAAO,CAAE,QAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;6BAExD,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAA,EAAZ,wBAAY;wBACL,qBAAM,MAAM,EAAA;;wBAArB,MAAM,GAAG,SAAY,CAAC;;4BAGxB,sEACK,QAAQ,KACX,IAAI,EAAE,MAAM,KACZ;;;aACH,CAAC;aACD,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,EAAzB,CAAyB,CAAC;QAC3C,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,GAAG,IAAI,OAAA,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,EAAzB,CAAyB,CAAC,CAAC;AACrD,CAAC;AAlBD,kCAkBC;AAED,SAAgB,YAAY,CAAC,GAAc;IACzC,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;;QACjC,IAAI,MAAM,GAA6B,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACxE,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC;QAElB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;QAEpB,SAAS,MAAM;YACb,IAAI,MAAM,EAAE;gBACV,aAAa;gBACb,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,kBAAkB,GAAG,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;gBAElE,IAAI,MAAM,CAAC,UAAU,EAAE;oBACrB,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;iBACvC;gBAED,MAAM,GAAG,IAAI,CAAC;aACf;QACH,CAAC;QAED,IAAM,KAAK,GAAG,CAAA,MAAA,GAAG,CAAC,KAAK,0CAAE,QAAQ,KAAI,oBAAoB,GAAG,IAAA,aAAI,GAAE,CAAC;QACnE,IAAM,GAAG,GAAI,MAAc,CAAC,KAAK,CAAC,CAAC;QAElC,MAAc,CAAC,KAAK,CAAC,GAAG,UAAU,YAAiB;YACjD,MAAc,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;YAE7B,IAAM,QAAQ,GAAG;gBACf,IAAI,EAAE,YAAY;gBAClB,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,EAAE;aACZ,CAAC;YAEF,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpB,CAAC,CAAC;QAEF,IAAM,gBAAgB,GAAQ;YAC5B,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE;YACvB,SAAS,EAAE,KAAK;SACjB,CAAC;QAEF,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAA,oBAAW,EAAC,gBAAgB,CAAC,CAAC;QAE3E,2CAA2C;QAC3C,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,kBAAkB,GAAG;YAC1C,aAAa;YACb,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;gBACnE,MAAM,EAAE,CAAC;aACV;QACH,CAAC,CAAC;QAEF,MAAM,CAAC,OAAO,GAAG;YACf,MAAM,EAAE,CAAC;YACT,IAAM,WAAW,GAAG;gBAClB,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,EAAE;aACZ,CAAC;YAEF,MAAM,CAAC,WAAW,CAAC,CAAC;QACtB,CAAC,CAAC;QAEF,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;QACjB,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC;AA/DD,oCA+DC;AAED,SAAgB,aAAa,CAC3B,OAAwB,EACxB,OAAwB,EACxB,QAAa,EACb,QAAa;;IAEb,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,KAAK,CAAC;KACd;SAAM,IAAI,CAAC,OAAO,EAAE;QACnB,OAAO,IAAI,CAAC;KACb;IAED,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAEhC,IAAI,OAAO,CAAC,WAAW,KAAK,KAAK,EAAE;QACjC,OAAO,KAAK,CAAC;KACd;IAED,IAAM,eAAe,GAAG,MAAA,OAAO,CAAC,eAAe,mCAAI,OAAO,CAAC,GAAG,CAAC;IAE/D,IAAI,OAAO,eAAe,KAAK,QAAQ,IAAI,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACzE,OAAO,KAAK,CAAC;KACd;IACD,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAEhC,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe,EAAE;QACtD,UAAU;YACR,IAAA,sBAAQ,EAAC,OAAO,CAAC,eAAe,IAAI,EAAE,EAAE,QAAQ,CAAC;gBACjD,IAAA,sBAAQ,EAAC,OAAO,CAAC,eAAe,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;KACrD;SAAM;QACL,OAAO,GAAG,QAAQ,CAAC,OAAc,EAAE,QAAkB,EAAE,EAAC,UAAU,EAAE,IAAI,EAAC,CAAC,CAAC;QAC3E,OAAO,GAAG,QAAQ,CAAC,OAAc,EAAE,QAAkB,EAAE,EAAC,UAAU,EAAE,IAAI,EAAC,CAAC,CAAC;QAC3E,UAAU,GAAG,OAAO,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC;KAC1C;IAED,OAAO,CAAC,CAAC,CACP,UAAU;QACV,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC;QACvB,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,IAAA,oBAAc,EAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAC9D,CAAC;AACJ,CAAC;AA1CD,sCA0CC;AAED,SAAgB,UAAU,CAAC,GAAW;IACpC,OAAO,CACL,GAAG;QACH,+DAA+D,CAAC,IAAI,CAAC,GAAG,CAAC,CAC1E,CAAC;AACJ,CAAC;AALD,gCAKC;AAED,SAAgB,cAAc,CAC5B,GAAS,EACT,IAAU,EACV,SAAmB,EACnB,WAAoB;IAEpB,IAAI,CAAC,GAAG,EAAE;QACR,OAAO,KAAK,CAAC;KACd;IACD,IAAI,SAAS,KAAK,KAAK,EAAE;QACvB,OAAO,KAAK,CAAC;KACd;IACD,IAAI,WAAW,IAAI,IAAI,IAAI,CAAC,IAAA,oBAAc,EAAC,WAAW,EAAE,IAAI,CAAC,EAAE;QAC7D,OAAO,KAAK,CAAC;KACd;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,EAAE;QACzC,OAAO,IAAI,CAAC;KACb;SAAM,IAAI,IAAA,iBAAQ,EAAC,GAAG,CAAC,IAAK,GAAiB,CAAC,GAAG,EAAE;QAClD,IACG,GAAiB,CAAC,MAAM;YACzB,IAAI;YACJ,CAAC,IAAA,oBAAc,EAAE,GAAiB,CAAC,MAAgB,EAAE,IAAI,CAAC,EAC1D;YACA,OAAO,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;KACb;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AA5BD,wCA4BC;AAED,SAAgB,SAAS,CACvB,IAAgC,EAChC,IAAgC;IAEhC,OAAO,CACL,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM;QAC3B,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG;QACrB,CAAC,IAAA,gCAAuB,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CACtD,CAAC;AACJ,CAAC;AATD,8BASC;AAED,SAAgB,WAAW,CAAC,GAAc;IACxC,YAAY;IACZ,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,IAAI,MAAkC,CAAC;IAEvC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE;QAC1D,IAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAEhC,IAAI,GAAG,GAAG,QAAQ,CAAC,WAAW,GAAI,QAAQ,CAAC,KAAgB,EAAE;YAC3D,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACzB,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,CAAC;YACN,SAAS;SACV;QAED,IAAI,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE;YAC5B,MAAM,GAAG,QAAQ,CAAC;YAClB,MAAM;SACP;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAtBD,kCAsBC;AAED,SAAgB,WAAW,CACzB,GAAc,EACd,OAAqB;IAErB,SAAS,CAAC,IAAI,iDACT,GAAG,KACN,aAAa,EAAE,OAAO,EACtB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,IACvB,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC;AAVD,kCAUC;AAED,SAAgB,aAAa;IAC3B,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;AAFD,sCAEC;AAED,SAAgB,wBAAwB,CAAC,IAAS;;IAChD,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE;QAC/B,IAAI,GAAG,EAAE,CAAC;KACX;SAAM,IAAI,CAAC,IAAA,uBAAa,EAAC,IAAI,CAAC,EAAE;QAC/B,IAAI;YACF,GAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,IAAG,IAAI;eACjD,CAAC;KACH;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAVD,4DAUC;AAED,gCAAgC",
10
10
  "sourcesContent": [
11
- "import {Api, ApiObject, fetcherResult, Payload} from '../types';\nimport {fetcherConfig} from '../factory';\nimport {tokenize, dataMapping} from './tpl-builtin';\nimport {evalExpression} from './tpl';\nimport {\n isObject,\n isObjectShallowModified,\n hasFile,\n object2formData,\n qsstringify,\n cloneObject,\n createObject,\n qsparse\n} from './helper';\n\nconst rSchema = /(?:^|raw\\:)(get|post|put|delete|patch|options|head):/i;\n\ninterface ApiCacheConfig extends ApiObject {\n cachedPromise: Promise<any>;\n requestTime: number;\n}\n\nconst apiCaches: Array<ApiCacheConfig> = [];\n\nconst isIE = !!(document as any).documentMode;\n\nexport function normalizeApi(\n api: Api,\n defaultMethod: string = 'get'\n): ApiObject {\n if (typeof api === 'string') {\n let method = rSchema.test(api) ? RegExp.$1 : '';\n method && (api = api.replace(method + ':', ''));\n\n api = {\n method: (method || defaultMethod) as any,\n url: api\n };\n } else {\n api = {\n ...api\n };\n }\n return api;\n}\n\nexport function buildApi(\n api: Api,\n data?: object,\n options: {\n autoAppend?: boolean;\n ignoreData?: boolean;\n [propName: string]: any;\n } = {}\n): ApiObject {\n api = normalizeApi(api, options.method);\n const {autoAppend, ignoreData, ...rest} = options;\n\n api.config = {\n ...rest\n };\n api.method = (api.method || (options as any).method || 'get').toLowerCase();\n\n if (!data) {\n return api;\n } else if (\n data instanceof FormData ||\n data instanceof Blob ||\n data instanceof ArrayBuffer\n ) {\n api.data = data;\n return api;\n }\n\n const raw = (api.url = api.url || '');\n const idx = api.url.indexOf('?');\n\n if (~idx) {\n const hashIdx = api.url.indexOf('#');\n const params = qsparse(\n api.url.substring(idx + 1, ~hashIdx ? hashIdx : undefined)\n );\n api.url =\n tokenize(api.url.substring(0, idx + 1), data, '| url_encode') +\n qsstringify(\n (api.query = dataMapping(params, data, undefined, api.convertKeyToPath))\n ) +\n (~hashIdx ? api.url.substring(hashIdx) : '');\n } else {\n api.url = tokenize(api.url, data, '| url_encode');\n }\n\n if (ignoreData) {\n return api;\n }\n\n if (api.data) {\n api.body = api.data = dataMapping(\n api.data,\n data,\n undefined,\n api.convertKeyToPath\n );\n } else if (api.method === 'post' || api.method === 'put') {\n api.body = api.data = cloneObject(data);\n }\n\n // get 类请求,把 data 附带到 url 上。\n if (api.method === 'get') {\n if (!~raw.indexOf('$') && !api.data && autoAppend) {\n api.query = api.data = data;\n } else if (\n api.attachDataToQuery === false &&\n api.data &&\n !~raw.indexOf('$') &&\n autoAppend\n ) {\n const idx = api.url.indexOf('?');\n if (~idx) {\n let params = (api.query = {\n ...qsparse(api.url.substring(idx + 1)),\n ...data\n });\n api.url = api.url.substring(0, idx) + '?' + qsstringify(params);\n } else {\n api.query = data;\n api.url += '?' + qsstringify(data);\n }\n }\n\n if (api.data && api.attachDataToQuery !== false) {\n const idx = api.url.indexOf('?');\n if (~idx) {\n let params = (api.query = {\n ...qsparse(api.url.substring(idx + 1)),\n ...api.data\n });\n api.url = api.url.substring(0, idx) + '?' + qsstringify(params);\n } else {\n api.query = api.data;\n api.url += '?' + qsstringify(api.data);\n }\n delete api.data;\n }\n }\n\n if (api.headers) {\n api.headers = dataMapping(api.headers, data, undefined, false);\n }\n\n if (api.requestAdaptor && typeof api.requestAdaptor === 'string') {\n api.requestAdaptor = str2function(api.requestAdaptor, 'api') as any;\n }\n\n if (api.adaptor && typeof api.adaptor === 'string') {\n api.adaptor = str2function(\n api.adaptor,\n 'payload',\n 'response',\n 'api'\n ) as any;\n }\n\n return api;\n}\n\nexport function str2function(\n contents: string,\n ...args: Array<string>\n): Function | null {\n try {\n let fn = new Function(...args, contents);\n return fn;\n } catch (e) {\n console.warn(e);\n return null;\n }\n}\n\nconst AsyncFunction = Object.getPrototypeOf(async function () {}).constructor;\n\nexport function str2AsyncFunction(\n contents: string,\n ...args: Array<string>\n): Function | null {\n try {\n let fn = new AsyncFunction(...args, contents);\n return fn;\n } catch (e) {\n console.warn(e);\n return null;\n }\n}\n\nexport function responseAdaptor(ret: fetcherResult, api: ApiObject) {\n const data = ret.data;\n let hasStatusField = true;\n\n if (!data) {\n throw new Error('Response is empty!');\n }\n\n // 兼容几种常见写法\n if (data.hasOwnProperty('errorCode')) {\n // 阿里 Java 规范\n data.status = data.errorCode;\n data.msg = data.errorMessage;\n } else if (data.hasOwnProperty('errno')) {\n data.status = data.errno;\n data.msg = data.errmsg || data.errstr || data.msg;\n } else if (data.hasOwnProperty('no')) {\n data.status = data.no;\n data.msg = data.error || data.msg;\n } else if (data.hasOwnProperty('error')) {\n // Google JSON guide\n // https://google.github.io/styleguide/jsoncstyleguide.xml#error\n if (typeof data.error === 'object' && data.error.hasOwnProperty('code')) {\n data.status = data.error.code;\n data.msg = data.error.message;\n } else {\n data.status = data.error;\n data.msg = data.errmsg || data.msg;\n }\n }\n\n if (!data.hasOwnProperty('status')) {\n hasStatusField = false;\n }\n\n const payload: Payload = {\n ok: hasStatusField === false || data.status == 0,\n status: hasStatusField === false ? 0 : data.status,\n msg: data.msg || data.message,\n msgTimeout: data.msgTimeout,\n data: !data.data && !hasStatusField ? data : data.data // 兼容直接返回数据的情况\n };\n\n // 兼容返回 schema 的情况,用于 app 模式\n if (data && data.type) {\n payload.data = data;\n }\n\n if (payload.status == 422) {\n payload.errors = data.errors;\n }\n\n if (payload.ok && api.responseData) {\n payload.data = dataMapping(\n api.responseData,\n\n createObject(\n {api},\n (Array.isArray(payload.data)\n ? {\n items: payload.data\n }\n : payload.data) || {}\n ),\n undefined,\n api.convertKeyToPath\n );\n }\n\n return payload;\n}\n\nexport function wrapFetcher(\n fn: (config: fetcherConfig) => Promise<fetcherResult>\n): (api: Api, data: object, options?: object) => Promise<Payload | void> {\n return function (api, data, options) {\n api = buildApi(api, data, options) as ApiObject;\n\n api.requestAdaptor && (api = api.requestAdaptor(api) || api);\n\n if (api.data && (hasFile(api.data) || api.dataType === 'form-data')) {\n api.data =\n api.data instanceof FormData\n ? api.data\n : object2formData(api.data, api.qsOptions);\n } else if (\n api.data &&\n typeof api.data !== 'string' &&\n api.dataType === 'form'\n ) {\n api.data = qsstringify(api.data, api.qsOptions) as any;\n api.headers = api.headers || (api.headers = {});\n api.headers['Content-Type'] = 'application/x-www-form-urlencoded';\n } else if (\n api.data &&\n typeof api.data !== 'string' &&\n api.dataType === 'json'\n ) {\n api.data = JSON.stringify(api.data) as any;\n api.headers = api.headers || (api.headers = {});\n api.headers['Content-Type'] = 'application/json';\n }\n\n if (typeof api.cache === 'number' && api.cache > 0) {\n const apiCache = getApiCache(api);\n return wrapAdaptor(\n apiCache\n ? (apiCache as ApiCacheConfig).cachedPromise\n : setApiCache(api, fn(api)),\n api\n );\n }\n // IE 下 get 请求会被缓存,所以自动加个时间戳\n if (isIE && api && api.method?.toLocaleLowerCase() === 'get') {\n const timeStamp = `_t=${Date.now()}`;\n if (api.url.indexOf('?') === -1) {\n api.url = api.url + `?${timeStamp}`;\n } else {\n api.url = api.url + `&${timeStamp}`;\n }\n }\n return wrapAdaptor(fn(api), api);\n };\n}\n\nexport function wrapAdaptor(promise: Promise<fetcherResult>, api: ApiObject) {\n const adaptor = api.adaptor;\n return adaptor\n ? promise\n .then(async response => {\n let result = adaptor((response as any).data, response, api);\n\n if (result?.then) {\n result = await result;\n }\n\n return {\n ...response,\n data: result\n };\n })\n .then(ret => responseAdaptor(ret, api))\n : promise.then(ret => responseAdaptor(ret, api));\n}\n\nexport function isApiOutdated(\n prevApi: Api | undefined,\n nextApi: Api | undefined,\n prevData: any,\n nextData: any\n): nextApi is Api {\n if (!nextApi) {\n return false;\n } else if (!prevApi) {\n return true;\n }\n\n nextApi = normalizeApi(nextApi);\n\n if (nextApi.autoRefresh === false) {\n return false;\n }\n\n const trackExpression = nextApi.trackExpression ?? nextApi.url;\n\n if (typeof trackExpression !== 'string' || !~trackExpression.indexOf('$')) {\n return false;\n }\n prevApi = normalizeApi(prevApi);\n\n let isModified = false;\n\n if (nextApi.trackExpression || prevApi.trackExpression) {\n isModified =\n tokenize(prevApi.trackExpression || '', prevData) !==\n tokenize(nextApi.trackExpression || '', nextData);\n } else {\n prevApi = buildApi(prevApi as Api, prevData as object, {ignoreData: true});\n nextApi = buildApi(nextApi as Api, nextData as object, {ignoreData: true});\n isModified = prevApi.url !== nextApi.url;\n }\n\n return !!(\n isModified &&\n isValidApi(nextApi.url) &&\n (!nextApi.sendOn || evalExpression(nextApi.sendOn, nextData))\n );\n}\n\nexport function isValidApi(api: string) {\n return (\n api &&\n /^(?:(https?|wss?|taf):\\/\\/[^\\/]+)?(\\/?[^\\s\\/\\?]*){1,}(\\?.*)?$/.test(api)\n );\n}\n\nexport function isEffectiveApi(\n api?: Api,\n data?: any,\n initFetch?: boolean,\n initFetchOn?: string\n): api is Api {\n if (!api) {\n return false;\n }\n if (initFetch === false) {\n return false;\n }\n if (initFetchOn && data && !evalExpression(initFetchOn, data)) {\n return false;\n }\n if (typeof api === 'string' && api.length) {\n return true;\n } else if (isObject(api) && (api as ApiObject).url) {\n if (\n (api as ApiObject).sendOn &&\n data &&\n !evalExpression((api as ApiObject).sendOn as string, data)\n ) {\n return false;\n }\n return true;\n }\n return false;\n}\n\nexport function isSameApi(\n apiA: ApiObject | ApiCacheConfig,\n apiB: ApiObject | ApiCacheConfig\n): boolean {\n return (\n apiA.method === apiB.method &&\n apiA.url === apiB.url &&\n !isObjectShallowModified(apiA.data, apiB.data, false)\n );\n}\n\nexport function getApiCache(api: ApiObject): ApiCacheConfig | undefined {\n // 清理过期cache\n const now = Date.now();\n let result: ApiCacheConfig | undefined;\n\n for (let idx = 0, len = apiCaches.length; idx < len; idx++) {\n const apiCache = apiCaches[idx];\n\n if (now - apiCache.requestTime > (apiCache.cache as number)) {\n apiCaches.splice(idx, 1);\n len--;\n idx--;\n continue;\n }\n\n if (isSameApi(api, apiCache)) {\n result = apiCache;\n break;\n }\n }\n\n return result;\n}\n\nexport function setApiCache(\n api: ApiObject,\n promise: Promise<any>\n): Promise<any> {\n apiCaches.push({\n ...api,\n cachedPromise: promise,\n requestTime: Date.now()\n });\n return promise;\n}\n\nexport function clearApiCache() {\n apiCaches.splice(0, apiCaches.length);\n}\n\n// window.apiCaches = apiCaches;\n"
11
+ "import omit from 'lodash/omit';\nimport {Api, ApiObject, EventTrack, fetcherResult, Payload} from '../types';\nimport {fetcherConfig} from '../factory';\nimport {tokenize, dataMapping, escapeHtml} from './tpl-builtin';\nimport {evalExpression} from './tpl';\nimport {\n isObject,\n isObjectShallowModified,\n hasFile,\n object2formData,\n qsstringify,\n cloneObject,\n createObject,\n qsparse,\n uuid\n} from './helper';\nimport isPlainObject from 'lodash/isPlainObject';\n\nconst rSchema = /(?:^|raw\\:)(get|post|put|delete|patch|options|head|jsonp):/i;\n\ninterface ApiCacheConfig extends ApiObject {\n cachedPromise: Promise<any>;\n requestTime: number;\n}\n\nconst apiCaches: Array<ApiCacheConfig> = [];\n\nconst isIE = !!(document as any).documentMode;\n\nexport function normalizeApi(\n api: Api,\n defaultMethod: string = 'get'\n): ApiObject {\n if (typeof api === 'string') {\n let method = rSchema.test(api) ? RegExp.$1 : '';\n method && (api = api.replace(method + ':', ''));\n\n api = {\n method: (method || defaultMethod) as any,\n url: api\n };\n } else {\n api = {\n ...api\n };\n }\n return api;\n}\n\nexport function buildApi(\n api: Api,\n data?: object,\n options: {\n autoAppend?: boolean;\n ignoreData?: boolean;\n [propName: string]: any;\n } = {}\n): ApiObject {\n api = normalizeApi(api, options.method);\n const {autoAppend, ignoreData, ...rest} = options;\n\n api.config = {\n ...rest\n };\n api.method = (api.method || (options as any).method || 'get').toLowerCase();\n\n if (api.headers) {\n api.headers = dataMapping(api.headers, data, undefined, false);\n }\n\n if (api.requestAdaptor && typeof api.requestAdaptor === 'string') {\n api.requestAdaptor = str2function(api.requestAdaptor, 'api') as any;\n }\n\n if (api.adaptor && typeof api.adaptor === 'string') {\n api.adaptor = str2function(\n api.adaptor,\n 'payload',\n 'response',\n 'api'\n ) as any;\n }\n\n if (!data) {\n return api;\n } else if (\n data instanceof FormData ||\n data instanceof Blob ||\n data instanceof ArrayBuffer\n ) {\n api.data = data;\n return api;\n }\n\n const raw = (api.url = api.url || '');\n const idx = api.url.indexOf('?');\n\n if (~idx) {\n const hashIdx = api.url.indexOf('#');\n const params = qsparse(\n api.url.substring(idx + 1, ~hashIdx ? hashIdx : undefined)\n );\n api.url =\n tokenize(api.url.substring(0, idx + 1), data, '| url_encode') +\n qsstringify(\n (api.query = dataMapping(params, data, undefined, api.convertKeyToPath))\n ) +\n (~hashIdx ? api.url.substring(hashIdx) : '');\n } else {\n api.url = tokenize(api.url, data, '| url_encode');\n }\n\n if (ignoreData) {\n return api;\n }\n\n if (api.data) {\n api.body = api.data = dataMapping(\n api.data,\n data,\n undefined,\n api.convertKeyToPath\n );\n } else if (api.method === 'post' || api.method === 'put') {\n api.body = api.data = cloneObject(data);\n }\n\n // get 类请求,把 data 附带到 url 上。\n if (api.method === 'get' || api.method === 'jsonp') {\n if (!~raw.indexOf('$') && !api.data && autoAppend) {\n api.query = api.data = data;\n } else if (\n api.attachDataToQuery === false &&\n api.data &&\n !~raw.indexOf('$') &&\n autoAppend\n ) {\n const idx = api.url.indexOf('?');\n if (~idx) {\n let params = (api.query = {\n ...qsparse(api.url.substring(idx + 1)),\n ...data\n });\n api.url = api.url.substring(0, idx) + '?' + qsstringify(params);\n } else {\n api.query = data;\n api.url += '?' + qsstringify(data);\n }\n }\n\n if (api.data && api.attachDataToQuery !== false) {\n const idx = api.url.indexOf('?');\n if (~idx) {\n let params = (api.query = {\n ...qsparse(api.url.substring(idx + 1)),\n ...api.data\n });\n api.url = api.url.substring(0, idx) + '?' + qsstringify(params);\n } else {\n api.query = api.data;\n api.url += '?' + qsstringify(api.data);\n }\n delete api.data;\n }\n }\n\n return api;\n}\n\nexport function str2function(\n contents: string,\n ...args: Array<string>\n): Function | null {\n try {\n let fn = new Function(...args, contents);\n return fn;\n } catch (e) {\n console.warn(e);\n return null;\n }\n}\n\nconst AsyncFunction = Object.getPrototypeOf(async function () {}).constructor;\n\nexport function str2AsyncFunction(\n contents: string,\n ...args: Array<string>\n): Function | null {\n try {\n let fn = new AsyncFunction(...args, contents);\n return fn;\n } catch (e) {\n console.warn(e);\n return null;\n }\n}\n\nexport function responseAdaptor(ret: fetcherResult, api: ApiObject) {\n let data = ret.data;\n let hasStatusField = true;\n\n if (!data) {\n throw new Error('Response is empty');\n }\n\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n if (typeof data === 'undefined') {\n throw new Error('Response should be JSON');\n }\n } catch (e) {\n const responseBrief =\n typeof data === 'string'\n ? escapeHtml((data as string).substring(0, 100))\n : '';\n throw new Error(`Response should be JSON\\n ${responseBrief}`);\n }\n }\n\n // 兼容几种常见写法\n if (data.hasOwnProperty('errorCode')) {\n // 阿里 Java 规范\n data.status = data.errorCode;\n data.msg = data.errorMessage;\n } else if (data.hasOwnProperty('errno')) {\n data.status = data.errno;\n data.msg = data.errmsg || data.errstr || data.msg;\n } else if (data.hasOwnProperty('no')) {\n data.status = data.no;\n data.msg = data.error || data.msg;\n } else if (data.hasOwnProperty('error')) {\n // Google JSON guide\n // https://google.github.io/styleguide/jsoncstyleguide.xml#error\n if (typeof data.error === 'object' && data.error.hasOwnProperty('code')) {\n data.status = data.error.code;\n data.msg = data.error.message;\n } else {\n data.status = data.error;\n data.msg = data.errmsg || data.msg;\n }\n }\n\n if (!data.hasOwnProperty('status')) {\n hasStatusField = false;\n }\n\n const payload: Payload = {\n ok: hasStatusField === false || data.status == 0,\n status: hasStatusField === false ? 0 : data.status,\n msg: data.msg || data.message,\n msgTimeout: data.msgTimeout,\n data: !data.data && !hasStatusField ? data : data.data // 兼容直接返回数据的情况\n };\n\n // 兼容返回 schema 的情况,用于 app 模式\n if (data && data.type) {\n payload.data = data;\n }\n\n if (payload.status == 422) {\n payload.errors = data.errors;\n }\n\n if (payload.ok && api.responseData) {\n const responseData = dataMapping(\n api.responseData,\n\n createObject(\n {api},\n (Array.isArray(payload.data)\n ? {\n items: payload.data\n }\n : payload.data) || {}\n ),\n undefined,\n api.convertKeyToPath\n );\n console.debug('responseData', responseData);\n payload.data = responseData;\n }\n\n return payload;\n}\n\nexport function wrapFetcher(\n fn: (config: fetcherConfig) => Promise<fetcherResult>,\n tracker?: (eventTrack: EventTrack, data: any) => void\n): (api: Api, data: object, options?: object) => Promise<Payload | void> {\n return function (api, data, options) {\n api = buildApi(api, data, options) as ApiObject;\n\n api.requestAdaptor && (api = api.requestAdaptor(api) || api);\n\n if (api.data && (hasFile(api.data) || api.dataType === 'form-data')) {\n api.data =\n api.data instanceof FormData\n ? api.data\n : object2formData(api.data, api.qsOptions);\n } else if (\n api.data &&\n typeof api.data !== 'string' &&\n api.dataType === 'form'\n ) {\n api.data = qsstringify(api.data, api.qsOptions) as any;\n api.headers = api.headers || (api.headers = {});\n api.headers['Content-Type'] = 'application/x-www-form-urlencoded';\n } else if (\n api.data &&\n typeof api.data !== 'string' &&\n api.dataType === 'json'\n ) {\n api.data = JSON.stringify(api.data) as any;\n api.headers = api.headers || (api.headers = {});\n api.headers['Content-Type'] = 'application/json';\n }\n\n tracker?.(\n {eventType: 'api', eventData: omit(api, ['config', 'data', 'body'])},\n api.data\n );\n\n if (api.method?.toLocaleLowerCase() === 'jsonp') {\n return wrapAdaptor(jsonpFetcher(api), api);\n }\n\n if (typeof api.cache === 'number' && api.cache > 0) {\n const apiCache = getApiCache(api);\n return wrapAdaptor(\n apiCache\n ? (apiCache as ApiCacheConfig).cachedPromise\n : setApiCache(api, fn(api)),\n api\n );\n }\n // IE 下 get 请求会被缓存,所以自动加个时间戳\n if (isIE && api && api.method?.toLocaleLowerCase() === 'get') {\n const timeStamp = `_t=${Date.now()}`;\n if (api.url.indexOf('?') === -1) {\n api.url = api.url + `?${timeStamp}`;\n } else {\n api.url = api.url + `&${timeStamp}`;\n }\n }\n return wrapAdaptor(fn(api), api);\n };\n}\n\nexport function wrapAdaptor(promise: Promise<fetcherResult>, api: ApiObject) {\n const adaptor = api.adaptor;\n return adaptor\n ? promise\n .then(async response => {\n let result = adaptor((response as any).data, response, api);\n\n if (result?.then) {\n result = await result;\n }\n\n return {\n ...response,\n data: result\n };\n })\n .then(ret => responseAdaptor(ret, api))\n : promise.then(ret => responseAdaptor(ret, api));\n}\n\nexport function jsonpFetcher(api: ApiObject): Promise<fetcherResult> {\n return new Promise((resolve, reject) => {\n let script: HTMLScriptElement | null = document.createElement('script');\n let src = api.url;\n\n script.async = true;\n\n function remove() {\n if (script) {\n // @ts-ignore\n script.onload = script.onreadystatechange = script.onerror = null;\n\n if (script.parentNode) {\n script.parentNode.removeChild(script);\n }\n\n script = null;\n }\n }\n\n const jsonp = api.query?.callback || 'axiosJsonpCallback' + uuid();\n const old = (window as any)[jsonp];\n\n (window as any)[jsonp] = function (responseData: any) {\n (window as any)[jsonp] = old;\n\n const response = {\n data: responseData,\n status: 200,\n headers: {}\n };\n\n resolve(response);\n };\n\n const additionalParams: any = {\n _: new Date().getTime(),\n _callback: jsonp\n };\n\n src += (src.indexOf('?') >= 0 ? '&' : '?') + qsstringify(additionalParams);\n\n // @ts-ignore IE 为script.onreadystatechange\n script.onload = script.onreadystatechange = function () {\n // @ts-ignore\n if (!script.readyState || /loaded|complete/.test(script.readyState)) {\n remove();\n }\n };\n\n script.onerror = function () {\n remove();\n const errResponse = {\n status: 0,\n headers: {}\n };\n\n reject(errResponse);\n };\n\n script.src = src;\n document.head.appendChild(script);\n });\n}\n\nexport function isApiOutdated(\n prevApi: Api | undefined,\n nextApi: Api | undefined,\n prevData: any,\n nextData: any\n): nextApi is Api {\n if (!nextApi) {\n return false;\n } else if (!prevApi) {\n return true;\n }\n\n nextApi = normalizeApi(nextApi);\n\n if (nextApi.autoRefresh === false) {\n return false;\n }\n\n const trackExpression = nextApi.trackExpression ?? nextApi.url;\n\n if (typeof trackExpression !== 'string' || !~trackExpression.indexOf('$')) {\n return false;\n }\n prevApi = normalizeApi(prevApi);\n\n let isModified = false;\n\n if (nextApi.trackExpression || prevApi.trackExpression) {\n isModified =\n tokenize(prevApi.trackExpression || '', prevData) !==\n tokenize(nextApi.trackExpression || '', nextData);\n } else {\n prevApi = buildApi(prevApi as Api, prevData as object, {ignoreData: true});\n nextApi = buildApi(nextApi as Api, nextData as object, {ignoreData: true});\n isModified = prevApi.url !== nextApi.url;\n }\n\n return !!(\n isModified &&\n isValidApi(nextApi.url) &&\n (!nextApi.sendOn || evalExpression(nextApi.sendOn, nextData))\n );\n}\n\nexport function isValidApi(api: string) {\n return (\n api &&\n /^(?:(https?|wss?|taf):\\/\\/[^\\/]+)?(\\/?[^\\s\\/\\?]*){1,}(\\?.*)?$/.test(api)\n );\n}\n\nexport function isEffectiveApi(\n api?: Api,\n data?: any,\n initFetch?: boolean,\n initFetchOn?: string\n): api is Api {\n if (!api) {\n return false;\n }\n if (initFetch === false) {\n return false;\n }\n if (initFetchOn && data && !evalExpression(initFetchOn, data)) {\n return false;\n }\n if (typeof api === 'string' && api.length) {\n return true;\n } else if (isObject(api) && (api as ApiObject).url) {\n if (\n (api as ApiObject).sendOn &&\n data &&\n !evalExpression((api as ApiObject).sendOn as string, data)\n ) {\n return false;\n }\n return true;\n }\n return false;\n}\n\nexport function isSameApi(\n apiA: ApiObject | ApiCacheConfig,\n apiB: ApiObject | ApiCacheConfig\n): boolean {\n return (\n apiA.method === apiB.method &&\n apiA.url === apiB.url &&\n !isObjectShallowModified(apiA.data, apiB.data, false)\n );\n}\n\nexport function getApiCache(api: ApiObject): ApiCacheConfig | undefined {\n // 清理过期cache\n const now = Date.now();\n let result: ApiCacheConfig | undefined;\n\n for (let idx = 0, len = apiCaches.length; idx < len; idx++) {\n const apiCache = apiCaches[idx];\n\n if (now - apiCache.requestTime > (apiCache.cache as number)) {\n apiCaches.splice(idx, 1);\n len--;\n idx--;\n continue;\n }\n\n if (isSameApi(api, apiCache)) {\n result = apiCache;\n break;\n }\n }\n\n return result;\n}\n\nexport function setApiCache(\n api: ApiObject,\n promise: Promise<any>\n): Promise<any> {\n apiCaches.push({\n ...api,\n cachedPromise: promise,\n requestTime: Date.now()\n });\n return promise;\n}\n\nexport function clearApiCache() {\n apiCaches.splice(0, apiCaches.length);\n}\n\nexport function normalizeApiResponseData(data: any) {\n if (typeof data === 'undefined') {\n data = {};\n } else if (!isPlainObject(data)) {\n data = {\n [Array.isArray(data) ? 'items' : 'result']: data\n };\n }\n\n return data;\n}\n\n// window.apiCaches = apiCaches;\n"
12
12
  ]
13
13
  }
@@ -26,3 +26,7 @@ export declare function calculatePosition(placement: any, overlayNode: any, targ
26
26
  arrowOffsetTop: number;
27
27
  activePlacement: string;
28
28
  };
29
+ /**
30
+ * 专门用来获取样式的像素值,默认返回 0
31
+ */
32
+ export declare function getStyleNumber(element: HTMLElement, styleName: string): number;
package/lib/utils/dom.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.calculatePosition = exports.ownerDocument = exports.getContainer = exports.props2BsPropsHoc = exports.props2BsProps = void 0;
3
+ exports.getStyleNumber = exports.calculatePosition = exports.ownerDocument = exports.getContainer = exports.props2BsPropsHoc = exports.props2BsProps = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var react_1 = (0, tslib_1.__importDefault)(require("react"));
6
6
  var react_dom_1 = (0, tslib_1.__importDefault)(require("react-dom"));
@@ -214,4 +214,14 @@ function calculatePosition(placement, overlayNode, target, container, padding) {
214
214
  };
215
215
  }
216
216
  exports.calculatePosition = calculatePosition;
217
+ /**
218
+ * 专门用来获取样式的像素值,默认返回 0
219
+ */
220
+ function getStyleNumber(element, styleName) {
221
+ if (!element) {
222
+ return 0;
223
+ }
224
+ return (parseInt(getComputedStyle(element).getPropertyValue(styleName), 10) || 0);
225
+ }
226
+ exports.getStyleNumber = getStyleNumber;
217
227
  //# sourceMappingURL=./utils/dom.js.map
@@ -6,8 +6,8 @@
6
6
  "/src/utils/dom.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport ReactDOM from 'react-dom';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport getOffset from './offset';\nimport getPosition from './position';\n\nconst bsMapping: {\n [propName: string]: string;\n} = {\n level: 'bsStyle',\n classPrefix: 'bsClass',\n size: 'bsSize'\n};\n\n/**\n * 主要目的是希望在是用 bootstrap 组件的时候不需要带 bs 前缀。\n *\n * @param {Object} rawProps 原始属性对象。\n * @return {Object}\n */\nexport const props2BsProps = (rawProps: {[propName: string]: any}) => {\n let props: {[propName: string]: any} = {};\n\n Object.keys(rawProps).forEach(\n key => (props[bsMapping[key] || key] = rawProps[key])\n );\n\n return props;\n};\n\n/**\n * props2BsProps 的 hoc 版本\n *\n * @param {*} ComposedComponent 组合组件\n * @return {Component}\n */\nexport const props2BsPropsHoc: (\n ComposedComponent: React.ComponentType<any>\n) => React.ComponentType<any> = ComposedComponent => {\n class BsComponent extends React.Component<any> {\n render() {\n return <ComposedComponent {...props2BsProps(this.props)} />;\n }\n }\n\n hoistNonReactStatic(BsComponent, ComposedComponent);\n return BsComponent;\n};\n\nexport function getContainer(container: any, defaultContainer: any) {\n container = typeof container === 'function' ? container() : container;\n return ReactDOM.findDOMNode(container) || defaultContainer;\n}\n\nexport function ownerDocument(componentOrElement: any) {\n return (\n (ReactDOM.findDOMNode(componentOrElement) as Element)?.ownerDocument ||\n document\n );\n}\n\nfunction getContainerDimensions(containerNode: any) {\n let width, height, scroll;\n\n if (containerNode.tagName === 'BODY') {\n width = window.innerWidth;\n height = window.innerHeight;\n\n scroll =\n ownerDocument(containerNode).documentElement.scrollTop ||\n containerNode?.scrollTop;\n } else {\n ({width, height} = getOffset(containerNode) as any);\n scroll = containerNode.scrollTop;\n }\n\n return {width, height, scroll};\n}\n\nfunction getTopDelta(\n top: any,\n overlayHeight: any,\n container: any,\n padding: any\n) {\n const containerDimensions = getContainerDimensions(container);\n const containerScroll = containerDimensions.scroll;\n const containerHeight = containerDimensions.height;\n\n const topEdgeOffset = top - padding - containerScroll;\n const bottomEdgeOffset = top + padding - containerScroll + overlayHeight;\n\n if (topEdgeOffset < 0) {\n return -topEdgeOffset;\n } else if (bottomEdgeOffset > containerHeight) {\n return containerHeight - bottomEdgeOffset;\n } else {\n return 0;\n }\n}\n\nfunction getLeftDelta(\n left: any,\n overlayWidth: any,\n container: any,\n padding: any\n) {\n const containerDimensions = getContainerDimensions(container);\n const containerWidth = containerDimensions.width;\n\n const leftEdgeOffset = left - padding;\n const rightEdgeOffset = left + padding + overlayWidth;\n\n if (leftEdgeOffset < 0) {\n return -leftEdgeOffset;\n } else if (rightEdgeOffset > containerWidth) {\n return containerWidth - rightEdgeOffset;\n }\n\n return 0;\n}\n\nexport function calculatePosition(\n placement: any,\n overlayNode: any,\n target: HTMLElement,\n container: any,\n padding: any = 0\n) {\n const childOffset: any =\n container.tagName === 'BODY'\n ? getOffset(target)\n : getPosition(target, container);\n const {height: overlayHeight, width: overlayWidth} = getOffset(\n overlayNode\n ) as any;\n\n const clip = container.getBoundingClientRect();\n const clip2 = overlayNode.getBoundingClientRect();\n const scaleX = overlayNode.offsetWidth\n ? clip2.width / overlayNode.offsetWidth\n : 1;\n const scaleY = overlayNode.offsetHeight\n ? clip2.height / overlayNode.offsetHeight\n : 1;\n\n // auto 尝试四个方向对齐。\n placement =\n placement === 'auto'\n ? 'left-bottom-left-top right-bottom-right-top left-top-left-bottom right-top-right-bottom left-bottom-left-top'\n : placement;\n\n let positionLeft = 0,\n positionTop = 0,\n arrowOffsetLeft: any = '',\n arrowOffsetTop: any = '',\n activePlacement: string = placement;\n\n if (~placement.indexOf('-')) {\n const tests = placement.split(/\\s+/);\n\n while (tests.length) {\n const current = (activePlacement = tests.shift());\n let [atX, atY, myX, myY] = current.split('-');\n myX = myX || atX;\n myY = myY || atY;\n\n positionLeft =\n atX === 'left'\n ? childOffset.left\n : atX === 'right'\n ? childOffset.left + childOffset.width\n : childOffset.left + childOffset.width / 2;\n positionTop =\n atY === 'top'\n ? childOffset.top\n : atY === 'bottom'\n ? childOffset.top + childOffset.height\n : childOffset.top + childOffset.height / 2;\n\n positionLeft -=\n myX === 'left' ? 0 : myX === 'right' ? overlayWidth : overlayWidth / 2;\n positionTop -=\n myY === 'top'\n ? 0\n : myY === 'bottom'\n ? overlayHeight\n : overlayHeight / 2;\n\n // 如果还有其他可选项,则做位置判断,是否在可视区域,不完全在则继续看其他定位情况。\n if (tests.length) {\n const transformed = {\n x: clip.x + positionLeft / scaleX,\n y: clip.y + positionTop / scaleY,\n width: overlayWidth,\n height: overlayHeight\n };\n\n if (\n transformed.x > 0 &&\n transformed.x + transformed.width < window.innerWidth &&\n transformed.y > 0 &&\n transformed.y + transformed.height < window.innerHeight\n ) {\n break;\n }\n }\n }\n\n // todo arrow 位置支持\n } else if (placement === 'left' || placement === 'right') {\n // atX = placement;\n // atY = myY = 'center';\n // myX = placement === 'left' ? 'right' : 'left';\n if (placement === 'left') {\n positionLeft = childOffset.left - overlayWidth;\n } else {\n positionLeft = childOffset.left + childOffset.width;\n }\n\n positionTop = childOffset.top + (childOffset.height - overlayHeight) / 2;\n const topDelta = getTopDelta(\n positionTop,\n overlayHeight,\n container,\n padding\n );\n\n positionTop += topDelta;\n arrowOffsetTop = 50 * (1 - (2 * topDelta) / overlayHeight) + '%';\n } else if (placement === 'top' || placement === 'bottom') {\n // atY = placement;\n // atX = myX = 'center';\n // myY = placement === 'top' ? 'bottom': 'top';\n if (placement === 'top') {\n positionTop = childOffset.top - overlayHeight;\n } else {\n positionTop = childOffset.top + childOffset.height;\n }\n\n positionLeft = childOffset.left + (childOffset.width - overlayWidth) / 2;\n const leftDelta = getLeftDelta(\n positionLeft,\n overlayWidth,\n container,\n padding\n );\n\n positionLeft += leftDelta;\n arrowOffsetLeft = 50 * (1 - (2 * leftDelta) / overlayHeight) + '%';\n } else if (placement === 'center') {\n // atX = atY = myX = myY = 'center';\n positionLeft = childOffset.left + (childOffset.width - overlayWidth) / 2;\n positionTop = childOffset.top + (childOffset.height - overlayHeight) / 2;\n arrowOffsetLeft = arrowOffsetTop = void 0;\n } else {\n throw new Error(\n `calcOverlayPosition(): No such placement of \"${placement}\" found.`\n );\n }\n\n return {\n positionLeft: positionLeft / scaleX,\n positionTop: positionTop / scaleY,\n arrowOffsetLeft: arrowOffsetLeft / scaleX,\n arrowOffsetTop: arrowOffsetTop / scaleY,\n activePlacement\n };\n}\n"
11
+ "import React from 'react';\nimport ReactDOM from 'react-dom';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport getOffset from './offset';\nimport getPosition from './position';\n\nconst bsMapping: {\n [propName: string]: string;\n} = {\n level: 'bsStyle',\n classPrefix: 'bsClass',\n size: 'bsSize'\n};\n\n/**\n * 主要目的是希望在是用 bootstrap 组件的时候不需要带 bs 前缀。\n *\n * @param {Object} rawProps 原始属性对象。\n * @return {Object}\n */\nexport const props2BsProps = (rawProps: {[propName: string]: any}) => {\n let props: {[propName: string]: any} = {};\n\n Object.keys(rawProps).forEach(\n key => (props[bsMapping[key] || key] = rawProps[key])\n );\n\n return props;\n};\n\n/**\n * props2BsProps 的 hoc 版本\n *\n * @param {*} ComposedComponent 组合组件\n * @return {Component}\n */\nexport const props2BsPropsHoc: (\n ComposedComponent: React.ComponentType<any>\n) => React.ComponentType<any> = ComposedComponent => {\n class BsComponent extends React.Component<any> {\n render() {\n return <ComposedComponent {...props2BsProps(this.props)} />;\n }\n }\n\n hoistNonReactStatic(BsComponent, ComposedComponent);\n return BsComponent;\n};\n\nexport function getContainer(container: any, defaultContainer: any) {\n container = typeof container === 'function' ? container() : container;\n return ReactDOM.findDOMNode(container) || defaultContainer;\n}\n\nexport function ownerDocument(componentOrElement: any) {\n return (\n (ReactDOM.findDOMNode(componentOrElement) as Element)?.ownerDocument ||\n document\n );\n}\n\nfunction getContainerDimensions(containerNode: any) {\n let width, height, scroll;\n\n if (containerNode.tagName === 'BODY') {\n width = window.innerWidth;\n height = window.innerHeight;\n\n scroll =\n ownerDocument(containerNode).documentElement.scrollTop ||\n containerNode?.scrollTop;\n } else {\n ({width, height} = getOffset(containerNode) as any);\n scroll = containerNode.scrollTop;\n }\n\n return {width, height, scroll};\n}\n\nfunction getTopDelta(\n top: any,\n overlayHeight: any,\n container: any,\n padding: any\n) {\n const containerDimensions = getContainerDimensions(container);\n const containerScroll = containerDimensions.scroll;\n const containerHeight = containerDimensions.height;\n\n const topEdgeOffset = top - padding - containerScroll;\n const bottomEdgeOffset = top + padding - containerScroll + overlayHeight;\n\n if (topEdgeOffset < 0) {\n return -topEdgeOffset;\n } else if (bottomEdgeOffset > containerHeight) {\n return containerHeight - bottomEdgeOffset;\n } else {\n return 0;\n }\n}\n\nfunction getLeftDelta(\n left: any,\n overlayWidth: any,\n container: any,\n padding: any\n) {\n const containerDimensions = getContainerDimensions(container);\n const containerWidth = containerDimensions.width;\n\n const leftEdgeOffset = left - padding;\n const rightEdgeOffset = left + padding + overlayWidth;\n\n if (leftEdgeOffset < 0) {\n return -leftEdgeOffset;\n } else if (rightEdgeOffset > containerWidth) {\n return containerWidth - rightEdgeOffset;\n }\n\n return 0;\n}\n\nexport function calculatePosition(\n placement: any,\n overlayNode: any,\n target: HTMLElement,\n container: any,\n padding: any = 0\n) {\n const childOffset: any =\n container.tagName === 'BODY'\n ? getOffset(target)\n : getPosition(target, container);\n const {height: overlayHeight, width: overlayWidth} = getOffset(\n overlayNode\n ) as any;\n\n const clip = container.getBoundingClientRect();\n const clip2 = overlayNode.getBoundingClientRect();\n const scaleX = overlayNode.offsetWidth\n ? clip2.width / overlayNode.offsetWidth\n : 1;\n const scaleY = overlayNode.offsetHeight\n ? clip2.height / overlayNode.offsetHeight\n : 1;\n\n // auto 尝试四个方向对齐。\n placement =\n placement === 'auto'\n ? 'left-bottom-left-top right-bottom-right-top left-top-left-bottom right-top-right-bottom left-bottom-left-top'\n : placement;\n\n let positionLeft = 0,\n positionTop = 0,\n arrowOffsetLeft: any = '',\n arrowOffsetTop: any = '',\n activePlacement: string = placement;\n\n if (~placement.indexOf('-')) {\n const tests = placement.split(/\\s+/);\n\n while (tests.length) {\n const current = (activePlacement = tests.shift());\n let [atX, atY, myX, myY] = current.split('-');\n myX = myX || atX;\n myY = myY || atY;\n\n positionLeft =\n atX === 'left'\n ? childOffset.left\n : atX === 'right'\n ? childOffset.left + childOffset.width\n : childOffset.left + childOffset.width / 2;\n positionTop =\n atY === 'top'\n ? childOffset.top\n : atY === 'bottom'\n ? childOffset.top + childOffset.height\n : childOffset.top + childOffset.height / 2;\n\n positionLeft -=\n myX === 'left' ? 0 : myX === 'right' ? overlayWidth : overlayWidth / 2;\n positionTop -=\n myY === 'top'\n ? 0\n : myY === 'bottom'\n ? overlayHeight\n : overlayHeight / 2;\n\n // 如果还有其他可选项,则做位置判断,是否在可视区域,不完全在则继续看其他定位情况。\n if (tests.length) {\n const transformed = {\n x: clip.x + positionLeft / scaleX,\n y: clip.y + positionTop / scaleY,\n width: overlayWidth,\n height: overlayHeight\n };\n\n if (\n transformed.x > 0 &&\n transformed.x + transformed.width < window.innerWidth &&\n transformed.y > 0 &&\n transformed.y + transformed.height < window.innerHeight\n ) {\n break;\n }\n }\n }\n\n // todo arrow 位置支持\n } else if (placement === 'left' || placement === 'right') {\n // atX = placement;\n // atY = myY = 'center';\n // myX = placement === 'left' ? 'right' : 'left';\n if (placement === 'left') {\n positionLeft = childOffset.left - overlayWidth;\n } else {\n positionLeft = childOffset.left + childOffset.width;\n }\n\n positionTop = childOffset.top + (childOffset.height - overlayHeight) / 2;\n const topDelta = getTopDelta(\n positionTop,\n overlayHeight,\n container,\n padding\n );\n\n positionTop += topDelta;\n arrowOffsetTop = 50 * (1 - (2 * topDelta) / overlayHeight) + '%';\n } else if (placement === 'top' || placement === 'bottom') {\n // atY = placement;\n // atX = myX = 'center';\n // myY = placement === 'top' ? 'bottom': 'top';\n if (placement === 'top') {\n positionTop = childOffset.top - overlayHeight;\n } else {\n positionTop = childOffset.top + childOffset.height;\n }\n\n positionLeft = childOffset.left + (childOffset.width - overlayWidth) / 2;\n const leftDelta = getLeftDelta(\n positionLeft,\n overlayWidth,\n container,\n padding\n );\n\n positionLeft += leftDelta;\n arrowOffsetLeft = 50 * (1 - (2 * leftDelta) / overlayHeight) + '%';\n } else if (placement === 'center') {\n // atX = atY = myX = myY = 'center';\n positionLeft = childOffset.left + (childOffset.width - overlayWidth) / 2;\n positionTop = childOffset.top + (childOffset.height - overlayHeight) / 2;\n arrowOffsetLeft = arrowOffsetTop = void 0;\n } else {\n throw new Error(\n `calcOverlayPosition(): No such placement of \"${placement}\" found.`\n );\n }\n\n return {\n positionLeft: positionLeft / scaleX,\n positionTop: positionTop / scaleY,\n arrowOffsetLeft: arrowOffsetLeft / scaleX,\n arrowOffsetTop: arrowOffsetTop / scaleY,\n activePlacement\n };\n}\n\n/**\n * 专门用来获取样式的像素值,默认返回 0\n */\nexport function getStyleNumber(element: HTMLElement, styleName: string) {\n if (!element) {\n return 0;\n }\n return (\n parseInt(getComputedStyle(element).getPropertyValue(styleName), 10) || 0\n );\n}\n"
12
12
  ]
13
13
  }
@@ -3,6 +3,8 @@ import { Schema, PlainObject, FunctionPropertyNames } from '../types';
3
3
  import qs from 'qs';
4
4
  import { IIRendererStore } from '../store';
5
5
  import { autobindMethod } from './autobind';
6
+ export declare function isMobile(): any;
7
+ export declare function range(num: number, min: number, max: number): number;
6
8
  export declare function createObject(superProps?: {
7
9
  [propName: string]: any;
8
10
  }, props?: {
@@ -289,3 +291,9 @@ export declare function normalizeNodePath(value: any, enableNodePath: boolean, l
289
291
  nodePathArray: any[];
290
292
  };
291
293
  export declare function isClickOnInput(e: React.MouseEvent<HTMLElement>): boolean;
294
+ /**
295
+ * 遍历 schema
296
+ * @param json
297
+ * @param mapper
298
+ */
299
+ export declare function JSONTraverse(json: any, mapper: (value: any, key: string | number, host: Object) => any): void;