tntd 2.7.3 → 2.7.4

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 (383) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +72 -0
  3. package/es/actions/index.js +12 -0
  4. package/es/actions/index.js.map +1 -0
  5. package/es/actions/index.less +70 -0
  6. package/es/check-card/group.js +149 -0
  7. package/es/check-card/group.js.map +1 -0
  8. package/es/check-card/index.js +120 -0
  9. package/es/check-card/index.js.map +1 -0
  10. package/es/check-card/index.less +179 -0
  11. package/es/color-picker/ColorPicker.js +1 -1
  12. package/es/color-picker/ColorPicker.js.map +1 -1
  13. package/es/color-picker/index.less +1 -1
  14. package/es/ellipsis/index.js +13 -3
  15. package/es/ellipsis/index.js.map +1 -1
  16. package/es/ellipsis/index.less +2 -2
  17. package/es/handle/index.js +20 -9
  18. package/es/handle/index.js.map +1 -1
  19. package/es/handle/index.less +1 -1
  20. package/es/index.js +7 -0
  21. package/es/index.js.map +1 -1
  22. package/es/index.less +5 -0
  23. package/es/locale/en_US.js +3 -1
  24. package/es/locale/en_US.js.map +1 -1
  25. package/es/locale/zh_CN.js +3 -1
  26. package/es/locale/zh_CN.js.map +1 -1
  27. package/es/mention/index.js +4 -0
  28. package/es/mention/index.js.map +1 -0
  29. package/es/page/Box.js +1 -1
  30. package/es/page/Box.js.map +1 -1
  31. package/es/page/index.js +1 -1
  32. package/es/page/index.js.map +1 -1
  33. package/es/page/index.less +5 -5
  34. package/es/prev-locale.js +1 -1
  35. package/es/prev-locale.js.map +1 -1
  36. package/es/query-form/Field/SelectInput.js +2 -2
  37. package/es/query-form/Field/SelectInput.js.map +1 -1
  38. package/es/query-form/Field/index.js +2 -1
  39. package/es/query-form/Field/index.js.map +1 -1
  40. package/es/query-list-scene/QueryForm.js +2 -2
  41. package/es/query-list-scene/QueryForm.js.map +1 -1
  42. package/es/segmented/index.js +50 -0
  43. package/es/segmented/index.js.map +1 -0
  44. package/es/segmented/index.less +138 -0
  45. package/es/table/constants.js +53 -0
  46. package/es/table/constants.js.map +1 -1
  47. package/es/table/context.js.map +1 -1
  48. package/es/table/hooks/use-column-setting.js.map +1 -1
  49. package/es/table/table.js +107 -6
  50. package/es/table/table.js.map +1 -1
  51. package/es/table/table.less +3 -1
  52. package/es/table/total-shower.js +6 -0
  53. package/es/table/total-shower.js.map +1 -0
  54. package/es/title/index.js +5 -5
  55. package/es/title/index.js.map +1 -1
  56. package/es/title/index.less +10 -10
  57. package/es/tntd-form/Form.js +1 -1
  58. package/es/tntd-form/Form.js.map +1 -1
  59. package/es/tntd-form/TntdForm/components/Item.js +42 -30
  60. package/es/tntd-form/TntdForm/components/ItemComp.js +167 -158
  61. package/es/tntd-form/TntdForm/components/List.js +89 -78
  62. package/es/tntd-form/TntdForm/index.js +38 -33
  63. package/es/tntd-form/TntdForm/interface.js +1 -2
  64. package/es/tntd-form/TntdForm/store.js +1 -2
  65. package/es/tntd-form/TntdForm/utils.js +158 -168
  66. package/es/tntd-modal/index.js +54 -21
  67. package/es/tntd-modal/index.js.map +1 -1
  68. package/es/tntd-modal/index.less +83 -63
  69. package/es/utils/index.js +1 -0
  70. package/es/utils/index.js.map +1 -1
  71. package/es/utils/simple-template.js +11 -0
  72. package/es/utils/simple-template.js.map +1 -0
  73. package/es/water-mark/index.js +99 -0
  74. package/es/water-mark/index.js.map +1 -0
  75. package/lib/actions/index.d.ts +15 -0
  76. package/lib/actions/index.d.ts.map +1 -0
  77. package/lib/actions/index.js +17 -0
  78. package/lib/actions/index.js.map +1 -0
  79. package/lib/actions/index.less +70 -0
  80. package/lib/check-card/group.d.ts +130 -0
  81. package/lib/check-card/group.d.ts.map +1 -0
  82. package/lib/check-card/group.js +179 -0
  83. package/lib/check-card/group.js.map +1 -0
  84. package/lib/check-card/index.d.ts +136 -0
  85. package/lib/check-card/index.d.ts.map +1 -0
  86. package/lib/check-card/index.js +148 -0
  87. package/lib/check-card/index.js.map +1 -0
  88. package/lib/check-card/index.less +179 -0
  89. package/lib/color-picker/ColorPicker.js +1 -1
  90. package/lib/color-picker/ColorPicker.js.map +1 -1
  91. package/lib/color-picker/index.less +1 -1
  92. package/lib/ellipsis/index.d.ts.map +1 -1
  93. package/lib/ellipsis/index.js +13 -3
  94. package/lib/ellipsis/index.js.map +1 -1
  95. package/lib/ellipsis/index.less +2 -2
  96. package/lib/handle/index.d.ts.map +1 -1
  97. package/lib/handle/index.js +20 -9
  98. package/lib/handle/index.js.map +1 -1
  99. package/lib/handle/index.less +1 -1
  100. package/lib/index.d.ts +7 -0
  101. package/lib/index.d.ts.map +1 -1
  102. package/lib/index.js +11 -1
  103. package/lib/index.js.map +1 -1
  104. package/lib/index.less +5 -0
  105. package/lib/locale/default.d.ts +1 -0
  106. package/lib/locale/default.d.ts.map +1 -1
  107. package/lib/locale/en_US.d.ts +1 -0
  108. package/lib/locale/en_US.d.ts.map +1 -1
  109. package/lib/locale/en_US.js +3 -1
  110. package/lib/locale/en_US.js.map +1 -1
  111. package/lib/locale/zh_CN.d.ts +1 -0
  112. package/lib/locale/zh_CN.d.ts.map +1 -1
  113. package/lib/locale/zh_CN.js +3 -1
  114. package/lib/locale/zh_CN.js.map +1 -1
  115. package/lib/mention/index.js +25 -0
  116. package/lib/page/Box.js +1 -1
  117. package/lib/page/Box.js.map +1 -1
  118. package/lib/page/index.js +1 -1
  119. package/lib/page/index.js.map +1 -1
  120. package/lib/page/index.less +5 -5
  121. package/lib/prev-locale.js +1 -1
  122. package/lib/prev-locale.js.map +1 -1
  123. package/lib/query-form/Field/SelectInput.d.ts.map +1 -1
  124. package/lib/query-form/Field/SelectInput.js +2 -2
  125. package/lib/query-form/Field/SelectInput.js.map +1 -1
  126. package/lib/query-form/Field/index.d.ts.map +1 -1
  127. package/lib/query-form/Field/index.js +2 -1
  128. package/lib/query-form/Field/index.js.map +1 -1
  129. package/lib/query-list-scene/QueryForm.d.ts +1 -1
  130. package/lib/query-list-scene/QueryForm.d.ts.map +1 -1
  131. package/lib/query-list-scene/QueryForm.js +2 -2
  132. package/lib/query-list-scene/QueryForm.js.map +1 -1
  133. package/lib/segmented/index.d.ts +23 -0
  134. package/lib/segmented/index.d.ts.map +1 -0
  135. package/lib/segmented/index.js +78 -0
  136. package/lib/segmented/index.js.map +1 -0
  137. package/lib/segmented/index.less +138 -0
  138. package/lib/table/constants.d.ts +2 -0
  139. package/lib/table/constants.d.ts.map +1 -1
  140. package/lib/table/constants.js +54 -1
  141. package/lib/table/constants.js.map +1 -1
  142. package/lib/table/context.d.ts +1 -0
  143. package/lib/table/context.d.ts.map +1 -1
  144. package/lib/table/context.js.map +1 -1
  145. package/lib/table/hooks/use-column-setting.d.ts +4 -1
  146. package/lib/table/hooks/use-column-setting.d.ts.map +1 -1
  147. package/lib/table/hooks/use-column-setting.js.map +1 -1
  148. package/lib/table/table.d.ts +2 -1
  149. package/lib/table/table.d.ts.map +1 -1
  150. package/lib/table/table.js +107 -6
  151. package/lib/table/table.js.map +1 -1
  152. package/lib/table/table.less +3 -1
  153. package/lib/table/total-shower.d.ts +9 -0
  154. package/lib/table/total-shower.d.ts.map +1 -0
  155. package/lib/table/total-shower.js +13 -0
  156. package/lib/table/total-shower.js.map +1 -0
  157. package/lib/title/index.d.ts +11 -1
  158. package/lib/title/index.d.ts.map +1 -1
  159. package/lib/title/index.js +5 -5
  160. package/lib/title/index.js.map +1 -1
  161. package/lib/title/index.less +10 -10
  162. package/lib/tntd-form/Form.js +1 -1
  163. package/lib/tntd-form/Form.js.map +1 -1
  164. package/lib/tntd-form/TntdForm/components/Item.js +55 -61
  165. package/lib/tntd-form/TntdForm/components/ItemComp.js +203 -190
  166. package/lib/tntd-form/TntdForm/components/List.js +118 -111
  167. package/lib/tntd-form/TntdForm/index.js +61 -67
  168. package/lib/tntd-form/TntdForm/interface.js +4 -2
  169. package/lib/tntd-form/TntdForm/store.js +8 -7
  170. package/lib/tntd-form/TntdForm/utils.js +182 -184
  171. package/lib/tntd-modal/index.d.ts +15 -2
  172. package/lib/tntd-modal/index.d.ts.map +1 -1
  173. package/lib/tntd-modal/index.js +58 -23
  174. package/lib/tntd-modal/index.js.map +1 -1
  175. package/lib/tntd-modal/index.less +83 -63
  176. package/lib/utils/index.d.ts +1 -0
  177. package/lib/utils/index.d.ts.map +1 -1
  178. package/lib/utils/index.js +1 -0
  179. package/lib/utils/index.js.map +1 -1
  180. package/lib/utils/simple-template.d.ts +9 -0
  181. package/lib/utils/simple-template.d.ts.map +1 -0
  182. package/lib/utils/simple-template.js +15 -0
  183. package/lib/utils/simple-template.js.map +1 -0
  184. package/lib/water-mark/index.d.ts +49 -0
  185. package/lib/water-mark/index.d.ts.map +1 -0
  186. package/lib/water-mark/index.js +129 -0
  187. package/lib/water-mark/index.js.map +1 -0
  188. package/package.json +21 -3
  189. package/es/_util/colors.js +0 -3
  190. package/es/_util/colors.js.map +0 -1
  191. package/es/_util/easings.js +0 -9
  192. package/es/_util/easings.js.map +0 -1
  193. package/es/_util/getDataOrAriaProps.js +0 -8
  194. package/es/_util/getDataOrAriaProps.js.map +0 -1
  195. package/es/_util/getScroll.js +0 -14
  196. package/es/_util/getScroll.js.map +0 -1
  197. package/es/_util/interopDefault.js +0 -5
  198. package/es/_util/interopDefault.js.map +0 -1
  199. package/es/_util/isNumeric.js +0 -4
  200. package/es/_util/isNumeric.js.map +0 -1
  201. package/es/_util/motion.js +0 -22
  202. package/es/_util/motion.js.map +0 -1
  203. package/es/_util/openAnimation.js +0 -51
  204. package/es/_util/openAnimation.js.map +0 -1
  205. package/es/_util/raf.js +0 -25
  206. package/es/_util/raf.js.map +0 -1
  207. package/es/_util/reactNode.js +0 -6
  208. package/es/_util/reactNode.js.map +0 -1
  209. package/es/_util/ref.js +0 -15
  210. package/es/_util/ref.js.map +0 -1
  211. package/es/_util/responsiveObserve.js +0 -82
  212. package/es/_util/responsiveObserve.js.map +0 -1
  213. package/es/_util/scrollTo.js +0 -29
  214. package/es/_util/scrollTo.js.map +0 -1
  215. package/es/_util/styleChecker.js +0 -12
  216. package/es/_util/styleChecker.js.map +0 -1
  217. package/es/_util/throttleByAnimationFrame.js +0 -40
  218. package/es/_util/throttleByAnimationFrame.js.map +0 -1
  219. package/es/_util/transButton.js +0 -103
  220. package/es/_util/transButton.js.map +0 -1
  221. package/es/_util/triggerEvent.js +0 -8
  222. package/es/_util/triggerEvent.js.map +0 -1
  223. package/es/_util/type.js +0 -3
  224. package/es/_util/type.js.map +0 -1
  225. package/es/_util/warning.js +0 -5
  226. package/es/_util/warning.js.map +0 -1
  227. package/es/_util/wave.js +0 -228
  228. package/es/_util/wave.js.map +0 -1
  229. package/es/config-provider/context.js +0 -41
  230. package/es/config-provider/context.js.map +0 -1
  231. package/es/tntd-form/__tests__/demo-extend.test.js +0 -3
  232. package/es/tntd-form/__tests__/demo-extend.test.js.map +0 -1
  233. package/es/tntd-form/__tests__/demo.test.js +0 -3
  234. package/es/tntd-form/__tests__/demo.test.js.map +0 -1
  235. package/es/tntd-form/__tests__/image.test.js +0 -5
  236. package/es/tntd-form/__tests__/image.test.js.map +0 -1
  237. package/es/tntd-form/__tests__/index.test.js +0 -957
  238. package/es/tntd-form/__tests__/index.test.js.map +0 -1
  239. package/es/tntd-form/__tests__/list-noStyle.test.js +0 -41
  240. package/es/tntd-form/__tests__/list-noStyle.test.js.map +0 -1
  241. package/es/tntd-form/__tests__/list.test.js +0 -164
  242. package/es/tntd-form/__tests__/list.test.js.map +0 -1
  243. package/es/tntd-form/__tests__/ref.test.js +0 -45
  244. package/es/tntd-form/__tests__/ref.test.js.map +0 -1
  245. package/es/tntd-form/__tests__/type.test.js +0 -74
  246. package/es/tntd-form/__tests__/type.test.js.map +0 -1
  247. package/lib/_util/colors.d.ts +0 -3
  248. package/lib/_util/colors.d.ts.map +0 -1
  249. package/lib/_util/colors.js +0 -7
  250. package/lib/_util/colors.js.map +0 -1
  251. package/lib/_util/easings.d.ts +0 -2
  252. package/lib/_util/easings.d.ts.map +0 -1
  253. package/lib/_util/easings.js +0 -14
  254. package/lib/_util/easings.js.map +0 -1
  255. package/lib/_util/getDataOrAriaProps.d.ts +0 -2
  256. package/lib/_util/getDataOrAriaProps.d.ts.map +0 -1
  257. package/lib/_util/getDataOrAriaProps.js +0 -13
  258. package/lib/_util/getDataOrAriaProps.js.map +0 -1
  259. package/lib/_util/getScroll.d.ts +0 -2
  260. package/lib/_util/getScroll.d.ts.map +0 -1
  261. package/lib/_util/getScroll.js +0 -18
  262. package/lib/_util/getScroll.js.map +0 -1
  263. package/lib/_util/interopDefault.d.ts +0 -2
  264. package/lib/_util/interopDefault.d.ts.map +0 -1
  265. package/lib/_util/interopDefault.js +0 -9
  266. package/lib/_util/interopDefault.js.map +0 -1
  267. package/lib/_util/isNumeric.d.ts +0 -3
  268. package/lib/_util/isNumeric.d.ts.map +0 -1
  269. package/lib/_util/isNumeric.js +0 -7
  270. package/lib/_util/isNumeric.js.map +0 -1
  271. package/lib/_util/motion.d.ts +0 -24
  272. package/lib/_util/motion.d.ts.map +0 -1
  273. package/lib/_util/motion.js +0 -17
  274. package/lib/_util/motion.js.map +0 -1
  275. package/lib/_util/openAnimation.d.ts +0 -7
  276. package/lib/_util/openAnimation.d.ts.map +0 -1
  277. package/lib/_util/openAnimation.js +0 -58
  278. package/lib/_util/openAnimation.js.map +0 -1
  279. package/lib/_util/raf.d.ts +0 -10
  280. package/lib/_util/raf.d.ts.map +0 -1
  281. package/lib/_util/raf.js +0 -34
  282. package/lib/_util/raf.js.map +0 -1
  283. package/lib/_util/reactNode.d.ts +0 -3
  284. package/lib/_util/reactNode.d.ts.map +0 -1
  285. package/lib/_util/reactNode.js +0 -31
  286. package/lib/_util/reactNode.js.map +0 -1
  287. package/lib/_util/ref.d.ts +0 -4
  288. package/lib/_util/ref.d.ts.map +0 -1
  289. package/lib/_util/ref.js +0 -22
  290. package/lib/_util/ref.js.map +0 -1
  291. package/lib/_util/responsiveObserve.d.ts +0 -14
  292. package/lib/_util/responsiveObserve.d.ts.map +0 -1
  293. package/lib/_util/responsiveObserve.js +0 -83
  294. package/lib/_util/responsiveObserve.js.map +0 -1
  295. package/lib/_util/scrollTo.d.ts +0 -11
  296. package/lib/_util/scrollTo.d.ts.map +0 -1
  297. package/lib/_util/scrollTo.js +0 -34
  298. package/lib/_util/scrollTo.js.map +0 -1
  299. package/lib/_util/styleChecker.d.ts +0 -4
  300. package/lib/_util/styleChecker.d.ts.map +0 -1
  301. package/lib/_util/styleChecker.js +0 -14
  302. package/lib/_util/styleChecker.js.map +0 -1
  303. package/lib/_util/throttleByAnimationFrame.d.ts +0 -6
  304. package/lib/_util/throttleByAnimationFrame.d.ts.map +0 -1
  305. package/lib/_util/throttleByAnimationFrame.js +0 -49
  306. package/lib/_util/throttleByAnimationFrame.js.map +0 -1
  307. package/lib/_util/transButton.d.ts +0 -21
  308. package/lib/_util/transButton.d.ts.map +0 -1
  309. package/lib/_util/transButton.js +0 -112
  310. package/lib/_util/transButton.js.map +0 -1
  311. package/lib/_util/triggerEvent.d.ts +0 -2
  312. package/lib/_util/triggerEvent.d.ts.map +0 -1
  313. package/lib/_util/triggerEvent.js +0 -12
  314. package/lib/_util/triggerEvent.js.map +0 -1
  315. package/lib/_util/type.d.ts +0 -4
  316. package/lib/_util/type.d.ts.map +0 -1
  317. package/lib/_util/type.js +0 -9
  318. package/lib/_util/type.js.map +0 -1
  319. package/lib/_util/warning.d.ts +0 -5
  320. package/lib/_util/warning.d.ts.map +0 -1
  321. package/lib/_util/warning.js +0 -28
  322. package/lib/_util/warning.js.map +0 -1
  323. package/lib/_util/wave.d.ts +0 -26
  324. package/lib/_util/wave.d.ts.map +0 -1
  325. package/lib/_util/wave.js +0 -249
  326. package/lib/_util/wave.js.map +0 -1
  327. package/lib/config-provider/context.d.ts +0 -61
  328. package/lib/config-provider/context.d.ts.map +0 -1
  329. package/lib/config-provider/context.js +0 -64
  330. package/lib/config-provider/context.js.map +0 -1
  331. package/lib/tntd-form/TntdForm/components/Item.d.ts +0 -5
  332. package/lib/tntd-form/TntdForm/components/Item.d.ts.map +0 -1
  333. package/lib/tntd-form/TntdForm/components/Item.js.map +0 -1
  334. package/lib/tntd-form/TntdForm/components/ItemComp.d.ts +0 -5
  335. package/lib/tntd-form/TntdForm/components/ItemComp.d.ts.map +0 -1
  336. package/lib/tntd-form/TntdForm/components/ItemComp.js.map +0 -1
  337. package/lib/tntd-form/TntdForm/components/List.d.ts +0 -5
  338. package/lib/tntd-form/TntdForm/components/List.d.ts.map +0 -1
  339. package/lib/tntd-form/TntdForm/components/List.js.map +0 -1
  340. package/lib/tntd-form/TntdForm/index.d.ts +0 -10
  341. package/lib/tntd-form/TntdForm/index.d.ts.map +0 -1
  342. package/lib/tntd-form/TntdForm/index.js.map +0 -1
  343. package/lib/tntd-form/TntdForm/interface.d.ts +0 -93
  344. package/lib/tntd-form/TntdForm/interface.d.ts.map +0 -1
  345. package/lib/tntd-form/TntdForm/interface.js.map +0 -1
  346. package/lib/tntd-form/TntdForm/store.d.ts +0 -4
  347. package/lib/tntd-form/TntdForm/store.d.ts.map +0 -1
  348. package/lib/tntd-form/TntdForm/store.js.map +0 -1
  349. package/lib/tntd-form/TntdForm/utils.d.ts +0 -48
  350. package/lib/tntd-form/TntdForm/utils.d.ts.map +0 -1
  351. package/lib/tntd-form/TntdForm/utils.js.map +0 -1
  352. package/lib/tntd-form/__tests__/demo-extend.test.d.ts +0 -2
  353. package/lib/tntd-form/__tests__/demo-extend.test.d.ts.map +0 -1
  354. package/lib/tntd-form/__tests__/demo-extend.test.js +0 -5
  355. package/lib/tntd-form/__tests__/demo-extend.test.js.map +0 -1
  356. package/lib/tntd-form/__tests__/demo.test.d.ts +0 -2
  357. package/lib/tntd-form/__tests__/demo.test.d.ts.map +0 -1
  358. package/lib/tntd-form/__tests__/demo.test.js +0 -8
  359. package/lib/tntd-form/__tests__/demo.test.js.map +0 -1
  360. package/lib/tntd-form/__tests__/image.test.d.ts +0 -2
  361. package/lib/tntd-form/__tests__/image.test.d.ts.map +0 -1
  362. package/lib/tntd-form/__tests__/image.test.js +0 -7
  363. package/lib/tntd-form/__tests__/image.test.js.map +0 -1
  364. package/lib/tntd-form/__tests__/index.test.d.ts +0 -2
  365. package/lib/tntd-form/__tests__/index.test.d.ts.map +0 -1
  366. package/lib/tntd-form/__tests__/index.test.js +0 -981
  367. package/lib/tntd-form/__tests__/index.test.js.map +0 -1
  368. package/lib/tntd-form/__tests__/list-noStyle.test.d.ts +0 -2
  369. package/lib/tntd-form/__tests__/list-noStyle.test.d.ts.map +0 -1
  370. package/lib/tntd-form/__tests__/list-noStyle.test.js +0 -46
  371. package/lib/tntd-form/__tests__/list-noStyle.test.js.map +0 -1
  372. package/lib/tntd-form/__tests__/list.test.d.ts +0 -2
  373. package/lib/tntd-form/__tests__/list.test.d.ts.map +0 -1
  374. package/lib/tntd-form/__tests__/list.test.js +0 -169
  375. package/lib/tntd-form/__tests__/list.test.js.map +0 -1
  376. package/lib/tntd-form/__tests__/ref.test.d.ts +0 -2
  377. package/lib/tntd-form/__tests__/ref.test.d.ts.map +0 -1
  378. package/lib/tntd-form/__tests__/ref.test.js +0 -50
  379. package/lib/tntd-form/__tests__/ref.test.js.map +0 -1
  380. package/lib/tntd-form/__tests__/type.test.d.ts +0 -2
  381. package/lib/tntd-form/__tests__/type.test.d.ts.map +0 -1
  382. package/lib/tntd-form/__tests__/type.test.js +0 -98
  383. package/lib/tntd-form/__tests__/type.test.js.map +0 -1
@@ -1,86 +1,106 @@
1
- .tnt-modal {
2
- &.ant-modal {
3
- max-width: 100vw;
4
- padding-bottom: 0;
1
+ .ant-modal {
2
+ &.fullscreen {
3
+ // color: red;
5
4
  }
6
-
7
- .ant-modal-content {
8
- height: 100%;
9
- display: flex;
10
- flex-direction: column;
11
-
12
- .ant-modal-close {
13
- display: none;
14
- }
5
+ &.support-fullscreen.no-header .ant-modal-header{
6
+ padding: 0;
7
+ border-bottom: none;
15
8
  }
9
+ &.support-fullscreen {
10
+ .ant-modal-content {
11
+ height: inherit;
12
+ display: flex;
13
+ flex-direction: column;
16
14
 
17
- .ant-modal-header {
18
- position: relative;
19
- padding: 8px 20px;
15
+ .ant-modal-close {
16
+ display: none;
17
+ }
18
+ }
20
19
 
21
- .tnt-modal-header-actions {
22
- position: absolute;
23
- top: 0;
24
- right: 0;
25
- height: 40px;
26
- line-height: 40px;
20
+ .ant-modal-header {
21
+ position: relative;
22
+ padding: 12px 20px;
27
23
 
28
- .tnt-icon {
29
- width: 40px;
24
+ .ant-modal-header-actions {
25
+ position: absolute;
26
+ top: 0;
27
+ right: 0;
30
28
  height: 40px;
31
29
  line-height: 40px;
32
- cursor: pointer;
33
- text-align: center;
34
- display: inline-block;
35
- }
36
30
 
37
- i.fullscreen:hover {
38
- color: #2e81f7;
39
- }
31
+ a {
32
+ width: 46px;
33
+ height: 46px;
34
+ line-height: 46px;
35
+ font-size: 15px;
36
+ cursor: pointer;
37
+ text-align: center;
38
+ display: inline-block;
39
+ color: inherit;
40
+ }
40
41
 
41
- i.close:hover {
42
- color: red;
42
+ .modal-fullscreen-wrap {
43
+ &:hover {
44
+ color: #2e81f7;
45
+ }
46
+ }
47
+
48
+ .modal-close-wrap {
49
+ &:hover {
50
+ color: red;
51
+ }
52
+ }
43
53
  }
44
54
  }
45
- }
46
55
 
47
- .ant-modal-title {
48
- .link {
49
- margin-left: 10px;
50
- font-size: 12px;
51
- color: #999;
56
+ .ant-modal-title {
57
+ & {
58
+ font-weight: 400;
59
+ line-height: 22px;
60
+ }
61
+ .link {
62
+ margin-left: 10px;
63
+ font-size: 12px;
64
+ color: #999;
52
65
 
53
- &:hover {
54
- color: #2e81f7;
66
+ &:hover {
67
+ color: #2e81f7;
68
+ }
69
+ }
70
+
71
+ img {
72
+ position: relative;
73
+ width: 18px;
74
+ height: 18px;
75
+ margin-right: 8px;
76
+ vertical-align: text-top;
55
77
  }
56
78
  }
57
79
 
58
- img {
59
- position: relative;
60
- width: 18px;
61
- height: 18px;
62
- margin-right: 8px;
63
- vertical-align: text-top;
80
+ .ant-modal-body {
81
+ height: 100%;
82
+ overflow: auto;
64
83
  }
65
- }
66
84
 
67
- .ant-modal-body {
68
- padding: 0;
69
- // height: calc(100% - 39px);
70
- flex: 1;
71
- overflow: auto;
85
+ // iframe {
86
+ // border: none;
87
+ // width: 100%;
88
+ // height: 100%;
89
+ // }
72
90
  }
73
-
74
- &.fullscreen {
75
- .ant-modal-body {
76
- height: calc(100vh - 39px);
77
- background: #fff;
91
+ &.support-fullscreen {
92
+ &.fullscreen {
93
+ .ant-modal-content {
94
+ height: 100vh;
95
+ }
78
96
  }
79
97
  }
80
-
81
- iframe {
82
- border: none;
83
- width: 100%;
84
- height: 100%;
98
+ .ant-modal-title {
99
+ font-weight: 400;
100
+ // .move-handle {}
101
+ }
102
+ &.ant-modal {
103
+ max-width: 100vw;
104
+ padding-bottom: 0;
85
105
  }
86
106
  }
package/es/utils/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from './checkAuth';
2
2
  export * from './findMenuInfoByPath';
3
+ export * from './simple-template';
3
4
  export const isGroupMenu = (menu) => (menu === null || menu === void 0 ? void 0 : menu.children) && !(menu === null || menu === void 0 ? void 0 : menu.path);
4
5
  export const getSelectedMenuInfo = (selectedKey, menus = []) => {
5
6
  let subMenu;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.js"],"names":[],"mappings":"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","sourcesContent":["export * from './checkAuth'\nexport * from './findMenuInfoByPath'\n\nexport const isGroupMenu = (menu) => menu?.children && !menu?.path\n\nexport const getSelectedMenuInfo = (selectedKey, menus = []) => {\n let subMenu\n let menu\n let parentMenus = []\n\n if (selectedKey) {\n traverseTree(menus, (node, pnode, pnodes) => {\n if (!isGroupMenu(node) && node.code === selectedKey) {\n subMenu = node\n menu = pnode\n parentMenus = pnodes\n return false\n }\n })\n } else {\n // 默认找到第一个菜单项\n traverseTree(menus, (node, pnode, pnodes) => {\n if (!isGroupMenu(node)) {\n subMenu = node\n menu = pnode\n parentMenus = pnodes\n return false\n }\n })\n }\n\n return {\n subMenu,\n menu,\n parentMenus,\n }\n}\n\nexport const hasLevel3 = (menus) => {\n return menus?.some((menu) => menu?.children?.some((item) => item?.children?.length))\n}\n\nexport const isNewTabMenu = (menu) => {\n const { target, path } = menu || {}\n\n return target === '_blank' || (/^http/i.test(path) && /blankType=newTarget/.test(path))\n}\n\nexport const openInNewTab = (path) => {\n window.open(path, '_blank')\n}\n\nexport const traverseTree = (treeData, callback, pnode, pnodes = []) => {\n ;(treeData || []).every((node, index) => {\n let result\n\n if (callback) {\n result = callback(\n node,\n pnode,\n pnodes?.length ? pnodes : [pnode].filter((item) => !!item),\n index\n )\n }\n\n // 回调函数返回false则终止遍历\n if (result !== false) {\n node && traverseTree(node.children || [], callback, node, [node, ...pnodes])\n }\n\n return result !== false\n })\n\n return treeData\n}\n\nexport const safeParseJSON = (str, defaultObj) => {\n let result\n\n try {\n result = JSON.parse(str)\n } catch (err) {\n console.warn('json parse error:', err)\n result = typeof defaultObj === 'undefined' ? str : defaultObj\n }\n\n return result || defaultObj\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.js"],"names":[],"mappings":"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","sourcesContent":["export * from './checkAuth'\nexport * from './findMenuInfoByPath'\nexport * from './simple-template'\n\nexport const isGroupMenu = (menu) => menu?.children && !menu?.path\n\nexport const getSelectedMenuInfo = (selectedKey, menus = []) => {\n let subMenu\n let menu\n let parentMenus = []\n\n if (selectedKey) {\n traverseTree(menus, (node, pnode, pnodes) => {\n if (!isGroupMenu(node) && node.code === selectedKey) {\n subMenu = node\n menu = pnode\n parentMenus = pnodes\n return false\n }\n })\n } else {\n // 默认找到第一个菜单项\n traverseTree(menus, (node, pnode, pnodes) => {\n if (!isGroupMenu(node)) {\n subMenu = node\n menu = pnode\n parentMenus = pnodes\n return false\n }\n })\n }\n\n return {\n subMenu,\n menu,\n parentMenus,\n }\n}\n\nexport const hasLevel3 = (menus) => {\n return menus?.some((menu) => menu?.children?.some((item) => item?.children?.length))\n}\n\nexport const isNewTabMenu = (menu) => {\n const { target, path } = menu || {}\n\n return target === '_blank' || (/^http/i.test(path) && /blankType=newTarget/.test(path))\n}\n\nexport const openInNewTab = (path) => {\n window.open(path, '_blank')\n}\n\nexport const traverseTree = (treeData, callback, pnode, pnodes = []) => {\n ;(treeData || []).every((node, index) => {\n let result\n\n if (callback) {\n result = callback(\n node,\n pnode,\n pnodes?.length ? pnodes : [pnode].filter((item) => !!item),\n index\n )\n }\n\n // 回调函数返回false则终止遍历\n if (result !== false) {\n node && traverseTree(node.children || [], callback, node, [node, ...pnodes])\n }\n\n return result !== false\n })\n\n return treeData\n}\n\nexport const safeParseJSON = (str, defaultObj) => {\n let result\n\n try {\n result = JSON.parse(str)\n } catch (err) {\n console.warn('json parse error:', err)\n result = typeof defaultObj === 'undefined' ? str : defaultObj\n }\n\n return result || defaultObj\n}\n"]}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * 简单的模板替换
3
+ *
4
+ * @param template
5
+ * @param data
6
+ * @returns
7
+ */
8
+ export function simpleTemplate(template, data = {}) {
9
+ return template === null || template === void 0 ? void 0 : template.replace(/\${(.*?)}/g, (match, key) => data[key.trim()].toString());
10
+ }
11
+ //# sourceMappingURL=simple-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple-template.js","sourceRoot":"","sources":["../../src/utils/simple-template.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,QAAiB,EAAE,OAAwC,EAAE;IAC1F,OAAO,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;AACrF,CAAC","sourcesContent":["/**\n * 简单的模板替换\n *\n * @param template\n * @param data\n * @returns\n */\nexport function simpleTemplate(template?: string, data: Record<string, string | number> = {}) {\n return template?.replace(/\\${(.*?)}/g, (match, key) => data[key.trim()].toString())\n}\n"]}
@@ -0,0 +1,99 @@
1
+ import cn from 'classnames';
2
+ import React, { useEffect, useState } from 'react';
3
+ /**
4
+ * 返回当前显示设备的物理像素分辨率与CSS像素分辨率之比
5
+ *
6
+ * @param context
7
+ * @see api 有些废弃了,其实类型 CanvasRenderingContext2D
8
+ */
9
+ const getPixelRatio = (context) => {
10
+ if (!context) {
11
+ return 1;
12
+ }
13
+ const backingStore = context.backingStorePixelRatio ||
14
+ context.webkitBackingStorePixelRatio ||
15
+ context.mozBackingStorePixelRatio ||
16
+ context.msBackingStorePixelRatio ||
17
+ context.oBackingStorePixelRatio ||
18
+ 1;
19
+ return (window.devicePixelRatio || 1) / backingStore;
20
+ };
21
+ export const Watermark = (props) => {
22
+ const { children, style, className, markStyle, markClassName,
23
+ // antd 内容层 zIndex 基本上在 10 以下 https://github.com/ant-design/ant-design/blob/6192403b2ce517c017f9e58a32d58774921c10cd/components/style/themes/default.less#L335
24
+ zIndex = 9, gapX = 212, gapY = 222, width = 120, height = 64, rotate = -22, // 默认旋转 -22 度
25
+ image, content, offsetLeft, offsetTop, fontStyle = 'normal', textAlign = 'center', fontWeight = 'normal', fontColor = 'rgba(0,0,0,.15)', fontSize = 14, fontFamily = 'sans-serif', prefixCls = 'tntd-watermark', } = props;
26
+ const wrapperCls = cn([`${prefixCls}-wrapper`, className]);
27
+ const watermarkCls = cn([prefixCls, markClassName]);
28
+ const [base64Url, setBase64Url] = useState('');
29
+ useEffect(() => {
30
+ const canvas = document.createElement('canvas');
31
+ const ctx = canvas.getContext('2d');
32
+ const ratio = getPixelRatio(ctx);
33
+ const canvasWidth = `${(gapX + width) * ratio}px`;
34
+ const canvasHeight = `${(gapY + height) * ratio}px`;
35
+ const canvasOffsetLeft = offsetLeft || gapX / 2;
36
+ const canvasOffsetTop = offsetTop || gapY / 2;
37
+ canvas.setAttribute('width', canvasWidth);
38
+ canvas.setAttribute('height', canvasHeight);
39
+ if (ctx) {
40
+ // 旋转字符 rotate
41
+ ctx.translate(canvasOffsetLeft * ratio, canvasOffsetTop * ratio);
42
+ ctx.rotate((Math.PI / 180) * Number(rotate));
43
+ const markWidth = width * ratio;
44
+ const markHeight = height * ratio;
45
+ if (image) {
46
+ const img = new Image();
47
+ img.crossOrigin = 'anonymous';
48
+ img.referrerPolicy = 'no-referrer';
49
+ img.src = image;
50
+ img.onload = () => {
51
+ ctx.drawImage(img, 0, 0, markWidth, markHeight);
52
+ setBase64Url(canvas.toDataURL());
53
+ };
54
+ }
55
+ else if (content) {
56
+ const markSize = Number(fontSize) * ratio;
57
+ ctx.font = `${fontStyle} normal ${fontWeight} ${markSize}px/${markHeight}px ${fontFamily}`;
58
+ ctx.fillStyle = fontColor;
59
+ ctx.textAlign = textAlign;
60
+ if (Array.isArray(content)) {
61
+ content === null || content === void 0 ? void 0 : content.forEach((item, index) => ctx.fillText(item, 0, index * markSize));
62
+ }
63
+ else {
64
+ ctx.fillText(content, 0, 0);
65
+ }
66
+ setBase64Url(canvas.toDataURL());
67
+ }
68
+ }
69
+ else {
70
+ // eslint-disable-next-line no-console
71
+ console.error('当前环境不支持Canvas');
72
+ }
73
+ }, [
74
+ gapX,
75
+ gapY,
76
+ offsetLeft,
77
+ offsetTop,
78
+ rotate,
79
+ fontStyle,
80
+ textAlign,
81
+ fontWeight,
82
+ width,
83
+ height,
84
+ fontFamily,
85
+ fontColor,
86
+ image,
87
+ content,
88
+ fontSize,
89
+ ]);
90
+ return (React.createElement("div", { style: Object.assign({ position: 'relative' }, style), className: wrapperCls },
91
+ children,
92
+ React.createElement("div", { className: watermarkCls, style: Object.assign(Object.assign({ zIndex, position: 'absolute', left: 0, top: 0, width: '100%', height: '100%', backgroundSize: `${gapX + width}px`, pointerEvents: 'none', backgroundRepeat: 'repeat' }, (base64Url
93
+ ? {
94
+ backgroundImage: `url('${base64Url}')`,
95
+ }
96
+ : {})), markStyle) })));
97
+ };
98
+ export default Watermark;
99
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/water-mark/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import cn from 'classnames'\nimport React, { useEffect, useState } from 'react'\n\nexport interface WatermarkProps {\n /** 类名 */\n className?: string\n /** 样式 */\n style?: React.CSSProperties\n /** 水印样式 */\n markStyle?: React.CSSProperties\n /** 水印类名 */\n markClassName?: string\n /** 水印之间的水平间距 */\n gapX?: number\n /** 水印之间的垂直间距 */\n gapY?: number\n /** 追加的水印元素的z-index */\n zIndex?: number\n /** 水印的宽度 */\n width?: number\n /** 水印的高度 */\n height?: number\n /** 水印在canvas 画布上绘制的垂直偏移量,正常情况下,水印绘制在中间位置, 即 offsetTop = gapY / 2 */\n offsetTop?: number // 水印图片距离绘制 canvas 单元的顶部距离\n /** 水印在canvas 画布上绘制的水平偏移量, 正常情况下,水印绘制在中间位置, 即 offsetTop = gapX / 2 */\n offsetLeft?: number\n /** 水印绘制时,旋转的角度,单位 ° */\n rotate?: number\n /** ClassName 前缀 */\n prefixCls?: string\n /** 高清印图片源, 为了高清屏幕显示,建议使用 2倍或3倍图,优先使用图片渲染水印。 */\n image?: string\n /** 水印文字内容 */\n content?: string | string[]\n /** 文字颜色 */\n fontColor?: string\n /** 文字样式 */\n fontStyle?: 'none' | 'normal' | 'italic' | 'oblique'\n /** 文字对齐 */\n textAlign?: 'left' | 'center' | 'right'\n /** 文字族 */\n fontFamily?: string\n /** 文字粗细 */\n fontWeight?: 'normal' | 'light' | 'weight' | number\n /** 文字大小 */\n fontSize?: number | string\n\n children?: React.ReactNode\n}\n/**\n * 返回当前显示设备的物理像素分辨率与CSS像素分辨率之比\n *\n * @param context\n * @see api 有些废弃了,其实类型 CanvasRenderingContext2D\n */\nconst getPixelRatio = (context: any) => {\n if (!context) {\n return 1\n }\n const backingStore =\n context.backingStorePixelRatio ||\n context.webkitBackingStorePixelRatio ||\n context.mozBackingStorePixelRatio ||\n context.msBackingStorePixelRatio ||\n context.oBackingStorePixelRatio ||\n 1\n return (window.devicePixelRatio || 1) / backingStore\n}\n\nexport const Watermark: React.FC<WatermarkProps> = (props) => {\n const {\n children,\n style,\n className,\n markStyle,\n markClassName,\n // antd 内容层 zIndex 基本上在 10 以下 https://github.com/ant-design/ant-design/blob/6192403b2ce517c017f9e58a32d58774921c10cd/components/style/themes/default.less#L335\n zIndex = 9,\n gapX = 212,\n gapY = 222,\n width = 120,\n height = 64,\n rotate = -22, // 默认旋转 -22 度\n image,\n content,\n offsetLeft,\n offsetTop,\n fontStyle = 'normal',\n textAlign = 'center',\n fontWeight = 'normal',\n fontColor = 'rgba(0,0,0,.15)',\n fontSize = 14,\n fontFamily = 'sans-serif',\n prefixCls = 'tntd-watermark',\n } = props\n\n const wrapperCls = cn([`${prefixCls}-wrapper`, className])\n const watermarkCls = cn([prefixCls, markClassName])\n const [base64Url, setBase64Url] = useState('')\n\n useEffect(() => {\n const canvas = document.createElement('canvas')\n const ctx = canvas.getContext('2d')\n const ratio = getPixelRatio(ctx)\n\n const canvasWidth = `${(gapX + width) * ratio}px`\n const canvasHeight = `${(gapY + height) * ratio}px`\n const canvasOffsetLeft = offsetLeft || gapX / 2\n const canvasOffsetTop = offsetTop || gapY / 2\n\n canvas.setAttribute('width', canvasWidth)\n canvas.setAttribute('height', canvasHeight)\n\n if (ctx) {\n // 旋转字符 rotate\n ctx.translate(canvasOffsetLeft * ratio, canvasOffsetTop * ratio)\n ctx.rotate((Math.PI / 180) * Number(rotate))\n const markWidth = width * ratio\n const markHeight = height * ratio\n\n if (image) {\n const img = new Image()\n img.crossOrigin = 'anonymous'\n img.referrerPolicy = 'no-referrer'\n img.src = image\n img.onload = () => {\n ctx.drawImage(img, 0, 0, markWidth, markHeight)\n setBase64Url(canvas.toDataURL())\n }\n } else if (content) {\n const markSize = Number(fontSize) * ratio\n ctx.font = `${fontStyle} normal ${fontWeight} ${markSize}px/${markHeight}px ${fontFamily}`\n ctx.fillStyle = fontColor\n ctx.textAlign = textAlign\n if (Array.isArray(content)) {\n content?.forEach((item: string, index: number) => ctx.fillText(item, 0, index * markSize))\n } else {\n ctx.fillText(content, 0, 0)\n }\n setBase64Url(canvas.toDataURL())\n }\n } else {\n // eslint-disable-next-line no-console\n console.error('当前环境不支持Canvas')\n }\n }, [\n gapX,\n gapY,\n offsetLeft,\n offsetTop,\n rotate,\n fontStyle,\n textAlign,\n fontWeight,\n width,\n height,\n fontFamily,\n fontColor,\n image,\n content,\n fontSize,\n ])\n\n return (\n <div\n style={{\n position: 'relative',\n ...style,\n }}\n className={wrapperCls}\n >\n {children}\n <div\n className={watermarkCls}\n style={{\n zIndex,\n position: 'absolute',\n left: 0,\n top: 0,\n width: '100%',\n height: '100%',\n backgroundSize: `${gapX + width}px`,\n pointerEvents: 'none',\n backgroundRepeat: 'repeat',\n ...(base64Url\n ? {\n backgroundImage: `url('${base64Url}')`,\n }\n : {}),\n ...markStyle,\n }}\n />\n </div>\n )\n}\n\nexport default Watermark\n"]}
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import './index.less';
3
+ export interface ProCardActionsProps {
4
+ /**
5
+ * 自定义前缀
6
+ *
7
+ * @ignore
8
+ */
9
+ prefixCls?: string;
10
+ /** 操作按钮 */
11
+ actions?: React.ReactNode[] | React.ReactNode;
12
+ }
13
+ declare const ProCardActions: React.FC<ProCardActionsProps>;
14
+ export default ProCardActions;
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/actions/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,cAAc,CAAA;AAErB,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW;IACX,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,KAAK,CAAC,SAAS,CAAA;CAC9C;AAED,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAmBjD,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const classnames_1 = __importDefault(require("classnames"));
7
+ const react_1 = __importDefault(require("react"));
8
+ require("./index.less");
9
+ const ProCardActions = (props) => {
10
+ const { actions, prefixCls } = props;
11
+ if (Array.isArray(actions) && (actions === null || actions === void 0 ? void 0 : actions.length)) {
12
+ return (react_1.default.createElement("ul", { className: (0, classnames_1.default)(`${prefixCls}-actions`) }, actions.map((action, index) => (react_1.default.createElement("li", { style: { width: `${100 / actions.length}%`, padding: 0, margin: 0 }, key: `action-${index}`, className: (0, classnames_1.default)(`${prefixCls}-actions-item`) }, action)))));
13
+ }
14
+ return react_1.default.createElement("ul", { className: (0, classnames_1.default)(`${prefixCls}-actions`) }, actions);
15
+ };
16
+ exports.default = ProCardActions;
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/actions/index.tsx"],"names":[],"mappings":";;;;;AAAA,4DAAmC;AACnC,kDAAyB;AACzB,wBAAqB;AAarB,MAAM,cAAc,GAAkC,CAAC,KAAK,EAAE,EAAE;IAC9D,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,CAAA;IAEpC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAA,EAAE;QAC7C,OAAO,CACL,sCAAI,SAAS,EAAE,IAAA,oBAAU,EAAC,GAAG,SAAS,UAAU,CAAC,IAC9C,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAC9B,sCACE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,GAAG,GAAG,OAAO,CAAC,MAAM,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EACnE,GAAG,EAAE,UAAU,KAAK,EAAE,EACtB,SAAS,EAAE,IAAA,oBAAU,EAAC,GAAG,SAAS,eAAe,CAAC,IAEjD,MAAM,CACJ,CACN,CAAC,CACC,CACN,CAAA;KACF;IACD,OAAO,sCAAI,SAAS,EAAE,IAAA,oBAAU,EAAC,GAAG,SAAS,UAAU,CAAC,IAAG,OAAO,CAAM,CAAA;AAC1E,CAAC,CAAA;AAED,kBAAe,cAAc,CAAA","sourcesContent":["import classNames from 'classnames'\nimport React from 'react'\nimport './index.less'\n\nexport interface ProCardActionsProps {\n /**\n * 自定义前缀\n *\n * @ignore\n */\n prefixCls?: string\n /** 操作按钮 */\n actions?: React.ReactNode[] | React.ReactNode\n}\n\nconst ProCardActions: React.FC<ProCardActionsProps> = (props) => {\n const { actions, prefixCls } = props\n\n if (Array.isArray(actions) && actions?.length) {\n return (\n <ul className={classNames(`${prefixCls}-actions`)}>\n {actions.map((action, index) => (\n <li\n style={{ width: `${100 / actions.length}%`, padding: 0, margin: 0 }}\n key={`action-${index}`}\n className={classNames(`${prefixCls}-actions-item`)}\n >\n {action}\n </li>\n ))}\n </ul>\n )\n }\n return <ul className={classNames(`${prefixCls}-actions`)}>{actions}</ul>\n}\n\nexport default ProCardActions\n"]}
@@ -0,0 +1,70 @@
1
+ .tntd-card-actions {
2
+ margin-block:0;
3
+ margin-inline:0;
4
+ padding-block:0;
5
+ padding-inline:0;
6
+ list-style:none;
7
+ display:flex;
8
+ gap:8px;
9
+ background:#ffffff;
10
+ border-block-start:1px solid rgba(5,5,5,0.06);
11
+ min-height:42px;
12
+ }
13
+ .tntd-card-actions>* {
14
+ align-items:center;
15
+ justify-content:center;
16
+ flex:1;
17
+ display:flex;
18
+ cursor:pointer;
19
+ color:rgba(42,46,54,0.65);
20
+ transition:color 0.3s;
21
+ }
22
+ .tntd-card-actions>*:hover {
23
+ color:#468fff;
24
+ }
25
+ .tntd-card-actions>li>div {
26
+ flex:1;
27
+ width:100%;
28
+ margin-block:12px;
29
+ margin-inline:0;
30
+ color:rgba(42,46,54,0.65);
31
+ text-align:center;
32
+ }
33
+ .tntd-card-actions>li>div a {
34
+ color:rgba(42,46,54,0.65);
35
+ transition:color 0.3s;
36
+ }
37
+ .tntd-card-actions>li>div a:hover {
38
+ color:#468fff;
39
+ }
40
+ .tntd-card-actions>li>div div {
41
+ position:relative;
42
+ display:block;
43
+ min-width:32px;
44
+ font-size:14px;
45
+ line-height:1.5714285714285714;
46
+ cursor:pointer;
47
+ }
48
+ .tntd-card-actions>li>div div:hover {
49
+ color:#468fff;
50
+ transition:color 0.3s;
51
+ }
52
+ .tntd-card-actions>li>div div a:not(.ant-btn),
53
+ .tntd-card-actions>li>div div >.anticon {
54
+ display:inline-block;
55
+ width:100%;
56
+ color:rgba(42,46,54,0.65);
57
+ line-height:22px;
58
+ transition:color 0.3s;
59
+ }
60
+ .tntd-card-actions>li>div div a:not(.ant-btn):hover,
61
+ .tntd-card-actions>li>div div >.anticon:hover {
62
+ color:#468fff;
63
+ }
64
+ .tntd-card-actions>li>div div .anticon {
65
+ font-size:16px;
66
+ line-height:22px;
67
+ }
68
+ .tntd-card-actions>li>div:not(:last-child) {
69
+ border-inline-end:1px solid rgba(5,5,5,0.06);
70
+ }
@@ -0,0 +1,130 @@
1
+ import React from 'react';
2
+ export declare type CheckCardValueType = string | number | boolean;
3
+ export declare type CheckGroupValueType = CheckCardValueType[] | CheckCardValueType | undefined;
4
+ export interface CheckCardOptionType {
5
+ /**
6
+ * 标题展示
7
+ *
8
+ * @title 标题
9
+ */
10
+ title?: React.ReactNode;
11
+ /**
12
+ * 选项值
13
+ *
14
+ * @title 值
15
+ */
16
+ value: CheckCardValueType;
17
+ /**
18
+ * 描述展示
19
+ *
20
+ * @title 描述
21
+ */
22
+ description?: React.ReactNode;
23
+ /**
24
+ * 组件尺寸,支持大,中,小三种默认尺寸,用户可以自定义宽高
25
+ *
26
+ * @default default
27
+ * @title 组件尺寸
28
+ */
29
+ size?: 'large' | 'default' | 'small';
30
+ /**
31
+ * 左侧头像展示,可以是一个链接也可以是是一个 ReactNode
32
+ *
33
+ * @title 左侧头像区域
34
+ */
35
+ avatar?: React.ReactNode;
36
+ /**
37
+ * 图片封面默认,该模式下其他展示值被忽略
38
+ *
39
+ * @title 图片封面
40
+ */
41
+ cover?: React.ReactNode;
42
+ /**
43
+ * 不可用
44
+ *
45
+ * @default false
46
+ * @title 不可用
47
+ */
48
+ disabled?: boolean;
49
+ /** Change 回调 */
50
+ onChange?: (checked: boolean) => void;
51
+ }
52
+ export interface AbstractCheckCardGroupProps {
53
+ /** @ignore */
54
+ prefixCls?: string;
55
+ /** @ignore */
56
+ className?: string;
57
+ /** 指定可选项 */
58
+ options?: (CheckCardOptionType | string)[];
59
+ /** 整组失效 */
60
+ disabled?: boolean;
61
+ /** @ignore */
62
+ style?: React.CSSProperties;
63
+ /**
64
+ * 组件尺寸,支持大,中,小三种默认尺寸,用户可以自定义宽高
65
+ *
66
+ * @default default
67
+ */
68
+ size?: 'large' | 'default' | 'small';
69
+ /**
70
+ * @acceptions CheckCard
71
+ * @ignore
72
+ */
73
+ children?: React.ReactNode;
74
+ }
75
+ export declare const CardLoading: React.FC<{
76
+ prefixCls: string;
77
+ }>;
78
+ export interface CheckCardGroupProps extends AbstractCheckCardGroupProps {
79
+ /**
80
+ * 是否多选
81
+ *
82
+ * @title 是否多选
83
+ */
84
+ multiple?: boolean;
85
+ /**
86
+ * 默认选中的选项
87
+ *
88
+ * @title 默认选中的选项
89
+ */
90
+ defaultValue?: CheckGroupValueType;
91
+ /**
92
+ * 指定选中的选项
93
+ *
94
+ * @title 指定选中的选项
95
+ */
96
+ value?: CheckGroupValueType;
97
+ /**
98
+ * 当卡片组内容还在加载中时,可以用 loading 展示一个占位
99
+ *
100
+ * @title 加载中
101
+ */
102
+ loading?: boolean;
103
+ /**
104
+ * 是否显示边框
105
+ *
106
+ * @title 显示边框
107
+ */
108
+ bordered?: boolean;
109
+ /** 变化时回调函数 */
110
+ onChange?: (checkedValue: CheckGroupValueType) => void;
111
+ }
112
+ export interface CheckCardGroupState {
113
+ value: CheckGroupValueType;
114
+ registeredValues: CheckCardValueType[];
115
+ }
116
+ export interface CheckCardGroupConnextType {
117
+ toggleOption?: (option: CheckCardOptionType) => void;
118
+ value?: any;
119
+ disabled?: boolean;
120
+ size?: 'default' | 'large' | 'small';
121
+ loading?: boolean;
122
+ bordered?: boolean;
123
+ multiple?: boolean;
124
+ registerValue?: (value: any) => void;
125
+ cancelValue?: (value: any) => void;
126
+ }
127
+ export declare const CheckCardGroupConnext: React.Context<CheckCardGroupConnextType | null>;
128
+ declare const CheckCardGroup: React.FC<CheckCardGroupProps>;
129
+ export default CheckCardGroup;
130
+ //# sourceMappingURL=group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/check-card/group.tsx"],"names":[],"mappings":"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"}