tdesign-react 0.35.2-alpha.1 → 0.35.2-alpha.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 (540) hide show
  1. package/dist/tdesign.css +35 -1
  2. package/dist/tdesign.css.map +1 -1
  3. package/dist/tdesign.js +1503 -1249
  4. package/dist/tdesign.js.map +1 -1
  5. package/dist/tdesign.min.css +1 -1
  6. package/dist/tdesign.min.css.map +1 -1
  7. package/dist/tdesign.min.js +3 -3
  8. package/dist/tdesign.min.js.map +1 -1
  9. package/{esm/_chunks/dep-77304ace.js → es/_chunks/dep-30c0a7bc.js} +2 -2
  10. package/es/_chunks/{dep-77304ace.js.map → dep-30c0a7bc.js.map} +1 -1
  11. package/es/_chunks/{dep-daaa76c2.js → dep-7cc0a2e2.js} +2 -2
  12. package/es/_chunks/{dep-daaa76c2.js.map → dep-7cc0a2e2.js.map} +1 -1
  13. package/es/_chunks/{dep-2dcbb9b7.js → dep-85b223d3.js} +2 -2
  14. package/{esm/_chunks/dep-2dcbb9b7.js.map → es/_chunks/dep-85b223d3.js.map} +1 -1
  15. package/es/_chunks/{dep-16cb7f3b.js → dep-aa5a02ef.js} +6 -3
  16. package/es/_chunks/dep-aa5a02ef.js.map +1 -0
  17. package/es/_chunks/{dep-5bfc1a42.js → dep-e97e29d5.js} +22 -4
  18. package/es/_chunks/dep-e97e29d5.js.map +1 -0
  19. package/es/_common/js/tabs/base.js +1 -1
  20. package/es/_common/js/tabs/base.js.map +1 -1
  21. package/es/_common/js/tree/tree-node-model.js +2 -3
  22. package/es/_common/js/tree/tree-node-model.js.map +1 -1
  23. package/es/_common/js/tree/tree-node.d.ts +1 -1
  24. package/es/_common/js/tree/tree-node.js +4 -5
  25. package/es/_common/js/tree/tree-node.js.map +1 -1
  26. package/es/_common/js/tree/tree-store.d.ts +1 -1
  27. package/es/_common/js/tree/tree-store.js +7 -8
  28. package/es/_common/js/tree/tree-store.js.map +1 -1
  29. package/es/_common/js/upload/xhr.js +1 -1
  30. package/es/_common/js/upload/xhr.js.map +1 -1
  31. package/es/calendar/Calendar.js +3 -4
  32. package/es/calendar/Calendar.js.map +1 -1
  33. package/es/calendar/index.js +3 -4
  34. package/es/calendar/index.js.map +1 -1
  35. package/es/cascader/Cascader.js +3 -4
  36. package/es/cascader/Cascader.js.map +1 -1
  37. package/es/cascader/index.js +3 -4
  38. package/es/cascader/index.js.map +1 -1
  39. package/es/cascader/interface.js +2 -3
  40. package/es/cascader/interface.js.map +1 -1
  41. package/es/color-picker/ColorPicker.js +3 -4
  42. package/es/color-picker/ColorPicker.js.map +1 -1
  43. package/es/color-picker/ColorPickerPanel.js +3 -4
  44. package/es/color-picker/ColorPickerPanel.js.map +1 -1
  45. package/es/color-picker/components/panel/format/index.js +2 -3
  46. package/es/color-picker/components/panel/format/index.js.map +1 -1
  47. package/es/color-picker/components/panel/header.js +1 -1
  48. package/es/color-picker/components/panel/index.js +3 -4
  49. package/es/color-picker/components/panel/index.js.map +1 -1
  50. package/es/color-picker/index.js +3 -4
  51. package/es/color-picker/index.js.map +1 -1
  52. package/es/date-picker/DatePicker.js +2 -3
  53. package/es/date-picker/DatePicker.js.map +1 -1
  54. package/es/date-picker/DatePickerPanel.js +2 -3
  55. package/es/date-picker/DatePickerPanel.js.map +1 -1
  56. package/es/date-picker/DateRangePicker.js +2 -3
  57. package/es/date-picker/DateRangePicker.js.map +1 -1
  58. package/es/date-picker/DateRangePickerPanel.js +2 -3
  59. package/es/date-picker/DateRangePickerPanel.js.map +1 -1
  60. package/es/date-picker/base/Header.js +2 -3
  61. package/es/date-picker/base/Header.js.map +1 -1
  62. package/es/date-picker/index.js +2 -3
  63. package/es/date-picker/index.js.map +1 -1
  64. package/es/date-picker/panel/PanelContent.js +2 -3
  65. package/es/date-picker/panel/PanelContent.js.map +1 -1
  66. package/es/date-picker/panel/RangePanel.js +2 -3
  67. package/es/date-picker/panel/RangePanel.js.map +1 -1
  68. package/es/date-picker/panel/SinglePanel.js +2 -3
  69. package/es/date-picker/panel/SinglePanel.js.map +1 -1
  70. package/es/dropdown/Dropdown.js +2 -3
  71. package/es/dropdown/Dropdown.js.map +1 -1
  72. package/es/dropdown/index.js +2 -3
  73. package/es/dropdown/index.js.map +1 -1
  74. package/es/form/Form.js +11 -8
  75. package/es/form/Form.js.map +1 -1
  76. package/es/form/FormItem.d.ts +1 -5
  77. package/es/form/FormItem.js +1188 -34
  78. package/es/form/FormItem.js.map +1 -1
  79. package/es/form/const.d.ts +5 -0
  80. package/es/form/const.js +15 -0
  81. package/es/form/const.js.map +1 -0
  82. package/es/form/defaultProps.d.ts +2 -1
  83. package/es/form/defaultProps.js +2 -1
  84. package/es/form/defaultProps.js.map +1 -1
  85. package/es/form/formModel.d.ts +23 -1
  86. package/es/form/formModel.js +21 -33
  87. package/es/form/formModel.js.map +1 -1
  88. package/es/form/hooks/useFormItemStyle.js +103 -225
  89. package/es/form/hooks/useFormItemStyle.js.map +1 -1
  90. package/es/form/hooks/useInstance.d.ts +2 -1
  91. package/es/form/hooks/useInstance.js +120 -65
  92. package/es/form/hooks/useInstance.js.map +1 -1
  93. package/es/form/index.js +9 -8
  94. package/es/form/index.js.map +1 -1
  95. package/es/form/type.d.ts +22 -11
  96. package/es/form/useInitialData.js +4 -5
  97. package/es/form/useInitialData.js.map +1 -1
  98. package/es/index.d.ts +1 -0
  99. package/es/index.js +12 -7
  100. package/es/index.js.map +1 -1
  101. package/es/pagination/Pagination.js +3 -4
  102. package/es/pagination/Pagination.js.map +1 -1
  103. package/es/pagination/index.js +3 -4
  104. package/es/pagination/index.js.map +1 -1
  105. package/es/radio/Radio.js +1 -1
  106. package/es/radio/RadioGroup.d.ts +2 -1
  107. package/es/radio/RadioGroup.js +1 -1
  108. package/es/radio/index.js +1 -1
  109. package/es/select/base/Select.js +2 -3
  110. package/es/select/base/Select.js.map +1 -1
  111. package/es/select/index.js +2 -3
  112. package/es/select/index.js.map +1 -1
  113. package/es/select-input/SelectInput.js +2 -3
  114. package/es/select-input/SelectInput.js.map +1 -1
  115. package/es/select-input/index.js +2 -3
  116. package/es/select-input/index.js.map +1 -1
  117. package/es/select-input/useSingle.js +2 -3
  118. package/es/select-input/useSingle.js.map +1 -1
  119. package/es/space/Space.d.ts +8 -0
  120. package/{esm/addon/Addon.js → es/space/Space.js} +53 -44
  121. package/es/space/Space.js.map +1 -0
  122. package/es/space/defaultProps.d.ts +5 -0
  123. package/es/space/defaultProps.js +14 -0
  124. package/es/space/defaultProps.js.map +1 -0
  125. package/es/space/index.d.ts +6 -0
  126. package/es/space/index.js +45 -0
  127. package/es/space/index.js.map +1 -0
  128. package/es/space/style/css.d.ts +1 -0
  129. package/es/space/style/css.js +1 -0
  130. package/es/space/style/index.css +31 -0
  131. package/es/space/style/index.d.ts +1 -0
  132. package/es/space/style/index.js +7 -0
  133. package/es/space/style/index.js.map +1 -0
  134. package/es/space/type.d.ts +30 -0
  135. package/es/space/type.js +7 -0
  136. package/es/space/type.js.map +1 -0
  137. package/es/style/index.css +3 -1
  138. package/es/table/BaseTable.js +3 -4
  139. package/es/table/BaseTable.js.map +1 -1
  140. package/es/table/EnhancedTable.js +4 -5
  141. package/es/table/EnhancedTable.js.map +1 -1
  142. package/es/table/FilterController.js +1 -1
  143. package/es/table/PrimaryTable.js +4 -5
  144. package/es/table/PrimaryTable.js.map +1 -1
  145. package/es/table/TBody.js +2 -3
  146. package/es/table/TBody.js.map +1 -1
  147. package/es/table/hooks/useAsyncLoading.js +1 -0
  148. package/es/table/hooks/useAsyncLoading.js.map +1 -1
  149. package/es/table/hooks/useFilter.js +1 -1
  150. package/es/table/hooks/usePagination.js +3 -4
  151. package/es/table/hooks/usePagination.js.map +1 -1
  152. package/es/table/hooks/useRowSelect.js +1 -1
  153. package/es/table/index.js +4 -5
  154. package/es/table/index.js.map +1 -1
  155. package/es/time-picker/TimePicker.js +2 -3
  156. package/es/time-picker/TimePicker.js.map +1 -1
  157. package/es/time-picker/index.js +2 -3
  158. package/es/time-picker/index.js.map +1 -1
  159. package/es/transfer/Transfer.js +5 -6
  160. package/es/transfer/Transfer.js.map +1 -1
  161. package/es/transfer/TransferList.js +3 -4
  162. package/es/transfer/TransferList.js.map +1 -1
  163. package/es/transfer/index.js +5 -6
  164. package/es/transfer/index.js.map +1 -1
  165. package/es/tree/Tree.js +3 -4
  166. package/es/tree/Tree.js.map +1 -1
  167. package/es/tree/index.js +3 -4
  168. package/es/tree/index.js.map +1 -1
  169. package/es/tree/useStore.js +3 -4
  170. package/es/tree/useStore.js.map +1 -1
  171. package/es/tree-select/TreeSelect.js +3 -4
  172. package/es/tree-select/TreeSelect.js.map +1 -1
  173. package/es/tree-select/index.js +3 -4
  174. package/es/tree-select/index.js.map +1 -1
  175. package/es/tree-select/useTreeSelectPassthoughProps.js +2 -3
  176. package/es/tree-select/useTreeSelectPassthoughProps.js.map +1 -1
  177. package/es/tree-select/useTreeSelectUtils.js +4 -5
  178. package/es/tree-select/useTreeSelectUtils.js.map +1 -1
  179. package/{es/_chunks/dep-77304ace.js → esm/_chunks/dep-30c0a7bc.js} +2 -2
  180. package/esm/_chunks/{dep-77304ace.js.map → dep-30c0a7bc.js.map} +1 -1
  181. package/esm/_chunks/{dep-daaa76c2.js → dep-7cc0a2e2.js} +2 -2
  182. package/esm/_chunks/{dep-daaa76c2.js.map → dep-7cc0a2e2.js.map} +1 -1
  183. package/esm/_chunks/{dep-2dcbb9b7.js → dep-85b223d3.js} +2 -2
  184. package/{es/_chunks/dep-2dcbb9b7.js.map → esm/_chunks/dep-85b223d3.js.map} +1 -1
  185. package/esm/_chunks/{dep-16cb7f3b.js → dep-aa5a02ef.js} +6 -3
  186. package/esm/_chunks/dep-aa5a02ef.js.map +1 -0
  187. package/esm/_chunks/{dep-5bfc1a42.js → dep-e97e29d5.js} +22 -4
  188. package/esm/_chunks/dep-e97e29d5.js.map +1 -0
  189. package/esm/_common/js/tabs/base.js +1 -1
  190. package/esm/_common/js/tabs/base.js.map +1 -1
  191. package/esm/_common/js/tree/tree-node-model.js +2 -3
  192. package/esm/_common/js/tree/tree-node-model.js.map +1 -1
  193. package/esm/_common/js/tree/tree-node.d.ts +1 -1
  194. package/esm/_common/js/tree/tree-node.js +4 -5
  195. package/esm/_common/js/tree/tree-node.js.map +1 -1
  196. package/esm/_common/js/tree/tree-store.d.ts +1 -1
  197. package/esm/_common/js/tree/tree-store.js +7 -8
  198. package/esm/_common/js/tree/tree-store.js.map +1 -1
  199. package/esm/_common/js/upload/xhr.js +1 -1
  200. package/esm/_common/js/upload/xhr.js.map +1 -1
  201. package/esm/_common/style/web/_reset.less +3 -1
  202. package/esm/_common/style/web/components/space/_index.less +27 -0
  203. package/esm/_common/style/web/components/space/_var.less +0 -0
  204. package/esm/_common/style/web/components/swiper/_docs.less +2 -2
  205. package/esm/calendar/Calendar.js +3 -4
  206. package/esm/calendar/Calendar.js.map +1 -1
  207. package/esm/calendar/index.js +3 -4
  208. package/esm/calendar/index.js.map +1 -1
  209. package/esm/cascader/Cascader.js +3 -4
  210. package/esm/cascader/Cascader.js.map +1 -1
  211. package/esm/cascader/index.js +3 -4
  212. package/esm/cascader/index.js.map +1 -1
  213. package/esm/cascader/interface.js +2 -3
  214. package/esm/cascader/interface.js.map +1 -1
  215. package/esm/color-picker/ColorPicker.js +3 -4
  216. package/esm/color-picker/ColorPicker.js.map +1 -1
  217. package/esm/color-picker/ColorPickerPanel.js +3 -4
  218. package/esm/color-picker/ColorPickerPanel.js.map +1 -1
  219. package/esm/color-picker/components/panel/format/index.js +2 -3
  220. package/esm/color-picker/components/panel/format/index.js.map +1 -1
  221. package/esm/color-picker/components/panel/header.js +1 -1
  222. package/esm/color-picker/components/panel/index.js +3 -4
  223. package/esm/color-picker/components/panel/index.js.map +1 -1
  224. package/esm/color-picker/index.js +3 -4
  225. package/esm/color-picker/index.js.map +1 -1
  226. package/esm/date-picker/DatePicker.js +2 -3
  227. package/esm/date-picker/DatePicker.js.map +1 -1
  228. package/esm/date-picker/DatePickerPanel.js +2 -3
  229. package/esm/date-picker/DatePickerPanel.js.map +1 -1
  230. package/esm/date-picker/DateRangePicker.js +2 -3
  231. package/esm/date-picker/DateRangePicker.js.map +1 -1
  232. package/esm/date-picker/DateRangePickerPanel.js +2 -3
  233. package/esm/date-picker/DateRangePickerPanel.js.map +1 -1
  234. package/esm/date-picker/base/Header.js +2 -3
  235. package/esm/date-picker/base/Header.js.map +1 -1
  236. package/esm/date-picker/index.js +2 -3
  237. package/esm/date-picker/index.js.map +1 -1
  238. package/esm/date-picker/panel/PanelContent.js +2 -3
  239. package/esm/date-picker/panel/PanelContent.js.map +1 -1
  240. package/esm/date-picker/panel/RangePanel.js +2 -3
  241. package/esm/date-picker/panel/RangePanel.js.map +1 -1
  242. package/esm/date-picker/panel/SinglePanel.js +2 -3
  243. package/esm/date-picker/panel/SinglePanel.js.map +1 -1
  244. package/esm/dropdown/Dropdown.js +2 -3
  245. package/esm/dropdown/Dropdown.js.map +1 -1
  246. package/esm/dropdown/index.js +2 -3
  247. package/esm/dropdown/index.js.map +1 -1
  248. package/esm/form/Form.js +11 -8
  249. package/esm/form/Form.js.map +1 -1
  250. package/esm/form/FormItem.d.ts +1 -5
  251. package/esm/form/FormItem.js +1188 -34
  252. package/esm/form/FormItem.js.map +1 -1
  253. package/esm/form/const.d.ts +5 -0
  254. package/esm/form/const.js +15 -0
  255. package/esm/form/const.js.map +1 -0
  256. package/esm/form/defaultProps.d.ts +2 -1
  257. package/esm/form/defaultProps.js +2 -1
  258. package/esm/form/defaultProps.js.map +1 -1
  259. package/esm/form/formModel.d.ts +23 -1
  260. package/esm/form/formModel.js +21 -33
  261. package/esm/form/formModel.js.map +1 -1
  262. package/esm/form/hooks/useFormItemStyle.js +103 -237
  263. package/esm/form/hooks/useFormItemStyle.js.map +1 -1
  264. package/esm/form/hooks/useInstance.d.ts +2 -1
  265. package/esm/form/hooks/useInstance.js +120 -65
  266. package/esm/form/hooks/useInstance.js.map +1 -1
  267. package/esm/form/index.js +9 -8
  268. package/esm/form/index.js.map +1 -1
  269. package/esm/form/type.d.ts +22 -11
  270. package/esm/form/useInitialData.js +4 -5
  271. package/esm/form/useInitialData.js.map +1 -1
  272. package/esm/index.d.ts +1 -0
  273. package/esm/index.js +13 -7
  274. package/esm/index.js.map +1 -1
  275. package/esm/pagination/Pagination.js +3 -4
  276. package/esm/pagination/Pagination.js.map +1 -1
  277. package/esm/pagination/index.js +3 -4
  278. package/esm/pagination/index.js.map +1 -1
  279. package/esm/radio/Radio.js +1 -1
  280. package/esm/radio/RadioGroup.d.ts +2 -1
  281. package/esm/radio/RadioGroup.js +1 -1
  282. package/esm/radio/index.js +1 -1
  283. package/esm/select/base/Select.js +2 -3
  284. package/esm/select/base/Select.js.map +1 -1
  285. package/esm/select/index.js +2 -3
  286. package/esm/select/index.js.map +1 -1
  287. package/esm/select-input/SelectInput.js +2 -3
  288. package/esm/select-input/SelectInput.js.map +1 -1
  289. package/esm/select-input/index.js +2 -3
  290. package/esm/select-input/index.js.map +1 -1
  291. package/esm/select-input/useSingle.js +2 -3
  292. package/esm/select-input/useSingle.js.map +1 -1
  293. package/esm/space/Space.d.ts +8 -0
  294. package/{es/addon/Addon.js → esm/space/Space.js} +53 -44
  295. package/esm/space/Space.js.map +1 -0
  296. package/esm/space/defaultProps.d.ts +5 -0
  297. package/esm/space/defaultProps.js +14 -0
  298. package/esm/space/defaultProps.js.map +1 -0
  299. package/esm/space/index.d.ts +6 -0
  300. package/esm/space/index.js +45 -0
  301. package/esm/space/index.js.map +1 -0
  302. package/esm/space/style/css.d.ts +1 -0
  303. package/esm/space/style/index.d.ts +1 -0
  304. package/esm/space/style/index.js +1 -0
  305. package/esm/space/type.d.ts +30 -0
  306. package/esm/space/type.js +7 -0
  307. package/esm/space/type.js.map +1 -0
  308. package/esm/table/BaseTable.js +3 -4
  309. package/esm/table/BaseTable.js.map +1 -1
  310. package/esm/table/EnhancedTable.js +4 -5
  311. package/esm/table/EnhancedTable.js.map +1 -1
  312. package/esm/table/FilterController.js +1 -1
  313. package/esm/table/PrimaryTable.js +4 -5
  314. package/esm/table/PrimaryTable.js.map +1 -1
  315. package/esm/table/TBody.js +2 -3
  316. package/esm/table/TBody.js.map +1 -1
  317. package/esm/table/hooks/useAsyncLoading.js +1 -0
  318. package/esm/table/hooks/useAsyncLoading.js.map +1 -1
  319. package/esm/table/hooks/useFilter.js +1 -1
  320. package/esm/table/hooks/usePagination.js +3 -4
  321. package/esm/table/hooks/usePagination.js.map +1 -1
  322. package/esm/table/hooks/useRowSelect.js +1 -1
  323. package/esm/table/index.js +4 -5
  324. package/esm/table/index.js.map +1 -1
  325. package/esm/time-picker/TimePicker.js +2 -3
  326. package/esm/time-picker/TimePicker.js.map +1 -1
  327. package/esm/time-picker/index.js +2 -3
  328. package/esm/time-picker/index.js.map +1 -1
  329. package/esm/transfer/Transfer.js +5 -6
  330. package/esm/transfer/Transfer.js.map +1 -1
  331. package/esm/transfer/TransferList.js +3 -4
  332. package/esm/transfer/TransferList.js.map +1 -1
  333. package/esm/transfer/index.js +5 -6
  334. package/esm/transfer/index.js.map +1 -1
  335. package/esm/tree/Tree.js +3 -4
  336. package/esm/tree/Tree.js.map +1 -1
  337. package/esm/tree/index.js +3 -4
  338. package/esm/tree/index.js.map +1 -1
  339. package/esm/tree/useStore.js +3 -4
  340. package/esm/tree/useStore.js.map +1 -1
  341. package/esm/tree-select/TreeSelect.js +3 -4
  342. package/esm/tree-select/TreeSelect.js.map +1 -1
  343. package/esm/tree-select/index.js +3 -4
  344. package/esm/tree-select/index.js.map +1 -1
  345. package/esm/tree-select/useTreeSelectPassthoughProps.js +2 -3
  346. package/esm/tree-select/useTreeSelectPassthoughProps.js.map +1 -1
  347. package/esm/tree-select/useTreeSelectUtils.js +4 -5
  348. package/esm/tree-select/useTreeSelectUtils.js.map +1 -1
  349. package/lib/_chunks/{dep-18b29c2a.js → dep-024a8c51.js} +2 -2
  350. package/lib/_chunks/{dep-18b29c2a.js.map → dep-024a8c51.js.map} +1 -1
  351. package/lib/_chunks/{dep-94a90ff2.js → dep-0ad41c40.js} +6 -3
  352. package/lib/_chunks/dep-0ad41c40.js.map +1 -0
  353. package/lib/_chunks/{dep-85d2b8ba.js → dep-66ed1106.js} +2 -2
  354. package/lib/_chunks/{dep-85d2b8ba.js.map → dep-66ed1106.js.map} +1 -1
  355. package/lib/_chunks/{dep-fec505b6.js → dep-67a31200.js} +3 -3
  356. package/lib/_chunks/{dep-fec505b6.js.map → dep-67a31200.js.map} +1 -1
  357. package/lib/_chunks/{dep-d66dd060.js → dep-dbc0d9a3.js} +22 -4
  358. package/lib/_chunks/dep-dbc0d9a3.js.map +1 -0
  359. package/lib/_common/js/tabs/base.js +1 -1
  360. package/lib/_common/js/tabs/base.js.map +1 -1
  361. package/lib/_common/js/tree/tree-node-model.js +2 -3
  362. package/lib/_common/js/tree/tree-node-model.js.map +1 -1
  363. package/lib/_common/js/tree/tree-node.d.ts +1 -1
  364. package/lib/_common/js/tree/tree-node.js +4 -5
  365. package/lib/_common/js/tree/tree-node.js.map +1 -1
  366. package/lib/_common/js/tree/tree-store.d.ts +1 -1
  367. package/lib/_common/js/tree/tree-store.js +7 -8
  368. package/lib/_common/js/tree/tree-store.js.map +1 -1
  369. package/lib/_common/js/upload/xhr.js +1 -1
  370. package/lib/_common/js/upload/xhr.js.map +1 -1
  371. package/lib/calendar/Calendar.js +3 -4
  372. package/lib/calendar/Calendar.js.map +1 -1
  373. package/lib/calendar/index.js +3 -4
  374. package/lib/calendar/index.js.map +1 -1
  375. package/lib/cascader/Cascader.js +3 -4
  376. package/lib/cascader/Cascader.js.map +1 -1
  377. package/lib/cascader/index.js +3 -4
  378. package/lib/cascader/index.js.map +1 -1
  379. package/lib/cascader/interface.js +2 -3
  380. package/lib/cascader/interface.js.map +1 -1
  381. package/lib/color-picker/ColorPicker.js +3 -4
  382. package/lib/color-picker/ColorPicker.js.map +1 -1
  383. package/lib/color-picker/ColorPickerPanel.js +3 -4
  384. package/lib/color-picker/ColorPickerPanel.js.map +1 -1
  385. package/lib/color-picker/components/panel/format/index.js +2 -3
  386. package/lib/color-picker/components/panel/format/index.js.map +1 -1
  387. package/lib/color-picker/components/panel/header.js +1 -1
  388. package/lib/color-picker/components/panel/index.js +3 -4
  389. package/lib/color-picker/components/panel/index.js.map +1 -1
  390. package/lib/color-picker/index.js +3 -4
  391. package/lib/color-picker/index.js.map +1 -1
  392. package/lib/date-picker/DatePicker.js +2 -3
  393. package/lib/date-picker/DatePicker.js.map +1 -1
  394. package/lib/date-picker/DatePickerPanel.js +2 -3
  395. package/lib/date-picker/DatePickerPanel.js.map +1 -1
  396. package/lib/date-picker/DateRangePicker.js +2 -3
  397. package/lib/date-picker/DateRangePicker.js.map +1 -1
  398. package/lib/date-picker/DateRangePickerPanel.js +2 -3
  399. package/lib/date-picker/DateRangePickerPanel.js.map +1 -1
  400. package/lib/date-picker/base/Header.js +2 -3
  401. package/lib/date-picker/base/Header.js.map +1 -1
  402. package/lib/date-picker/index.js +2 -3
  403. package/lib/date-picker/index.js.map +1 -1
  404. package/lib/date-picker/panel/PanelContent.js +2 -3
  405. package/lib/date-picker/panel/PanelContent.js.map +1 -1
  406. package/lib/date-picker/panel/RangePanel.js +2 -3
  407. package/lib/date-picker/panel/RangePanel.js.map +1 -1
  408. package/lib/date-picker/panel/SinglePanel.js +2 -3
  409. package/lib/date-picker/panel/SinglePanel.js.map +1 -1
  410. package/lib/dropdown/Dropdown.js +2 -3
  411. package/lib/dropdown/Dropdown.js.map +1 -1
  412. package/lib/dropdown/index.js +2 -3
  413. package/lib/dropdown/index.js.map +1 -1
  414. package/lib/form/Form.js +12 -9
  415. package/lib/form/Form.js.map +1 -1
  416. package/lib/form/FormItem.d.ts +1 -5
  417. package/lib/form/FormItem.js +1188 -35
  418. package/lib/form/FormItem.js.map +1 -1
  419. package/lib/form/const.d.ts +5 -0
  420. package/lib/form/const.js +19 -0
  421. package/lib/form/const.js.map +1 -0
  422. package/lib/form/defaultProps.d.ts +2 -1
  423. package/lib/form/defaultProps.js +2 -0
  424. package/lib/form/defaultProps.js.map +1 -1
  425. package/lib/form/formModel.d.ts +23 -1
  426. package/lib/form/formModel.js +21 -33
  427. package/lib/form/formModel.js.map +1 -1
  428. package/lib/form/hooks/useFormItemStyle.js +108 -213
  429. package/lib/form/hooks/useFormItemStyle.js.map +1 -1
  430. package/lib/form/hooks/useInstance.d.ts +2 -1
  431. package/lib/form/hooks/useInstance.js +119 -64
  432. package/lib/form/hooks/useInstance.js.map +1 -1
  433. package/lib/form/index.js +9 -8
  434. package/lib/form/index.js.map +1 -1
  435. package/lib/form/type.d.ts +22 -11
  436. package/lib/form/useInitialData.js +4 -5
  437. package/lib/form/useInitialData.js.map +1 -1
  438. package/lib/index-lib.js +12 -7
  439. package/lib/index-lib.js.map +1 -1
  440. package/lib/index.d.ts +1 -0
  441. package/lib/index.js +12 -7
  442. package/lib/index.js.map +1 -1
  443. package/lib/pagination/Pagination.js +3 -4
  444. package/lib/pagination/Pagination.js.map +1 -1
  445. package/lib/pagination/index.js +3 -4
  446. package/lib/pagination/index.js.map +1 -1
  447. package/lib/radio/Radio.js +1 -1
  448. package/lib/radio/RadioGroup.d.ts +2 -1
  449. package/lib/radio/RadioGroup.js +1 -1
  450. package/lib/radio/index.js +1 -1
  451. package/lib/select/base/Select.js +2 -3
  452. package/lib/select/base/Select.js.map +1 -1
  453. package/lib/select/index.js +2 -3
  454. package/lib/select/index.js.map +1 -1
  455. package/lib/select-input/SelectInput.js +2 -3
  456. package/lib/select-input/SelectInput.js.map +1 -1
  457. package/lib/select-input/index.js +2 -3
  458. package/lib/select-input/index.js.map +1 -1
  459. package/lib/select-input/useSingle.js +2 -3
  460. package/lib/select-input/useSingle.js.map +1 -1
  461. package/lib/space/Space.d.ts +8 -0
  462. package/lib/{addon/Addon.js → space/Space.js} +52 -43
  463. package/lib/space/Space.js.map +1 -0
  464. package/lib/space/defaultProps.d.ts +5 -0
  465. package/lib/space/defaultProps.js +18 -0
  466. package/lib/space/defaultProps.js.map +1 -0
  467. package/lib/space/index.d.ts +6 -0
  468. package/lib/space/index.js +44 -0
  469. package/lib/space/index.js.map +1 -0
  470. package/lib/space/style/css.d.ts +1 -0
  471. package/lib/space/style/index.d.ts +1 -0
  472. package/lib/space/type.d.ts +30 -0
  473. package/lib/space/type.js +9 -0
  474. package/lib/space/type.js.map +1 -0
  475. package/lib/table/BaseTable.js +3 -4
  476. package/lib/table/BaseTable.js.map +1 -1
  477. package/lib/table/EnhancedTable.js +4 -5
  478. package/lib/table/EnhancedTable.js.map +1 -1
  479. package/lib/table/FilterController.js +1 -1
  480. package/lib/table/PrimaryTable.js +4 -5
  481. package/lib/table/PrimaryTable.js.map +1 -1
  482. package/lib/table/TBody.js +2 -3
  483. package/lib/table/TBody.js.map +1 -1
  484. package/lib/table/hooks/useAsyncLoading.js +1 -0
  485. package/lib/table/hooks/useAsyncLoading.js.map +1 -1
  486. package/lib/table/hooks/useFilter.js +1 -1
  487. package/lib/table/hooks/usePagination.js +3 -4
  488. package/lib/table/hooks/usePagination.js.map +1 -1
  489. package/lib/table/hooks/useRowSelect.js +1 -1
  490. package/lib/table/index.js +4 -5
  491. package/lib/table/index.js.map +1 -1
  492. package/lib/time-picker/TimePicker.js +2 -3
  493. package/lib/time-picker/TimePicker.js.map +1 -1
  494. package/lib/time-picker/index.js +2 -3
  495. package/lib/time-picker/index.js.map +1 -1
  496. package/lib/transfer/Transfer.js +5 -6
  497. package/lib/transfer/Transfer.js.map +1 -1
  498. package/lib/transfer/TransferList.js +3 -4
  499. package/lib/transfer/TransferList.js.map +1 -1
  500. package/lib/transfer/index.js +5 -6
  501. package/lib/transfer/index.js.map +1 -1
  502. package/lib/tree/Tree.js +3 -4
  503. package/lib/tree/Tree.js.map +1 -1
  504. package/lib/tree/index.js +3 -4
  505. package/lib/tree/index.js.map +1 -1
  506. package/lib/tree/useStore.js +3 -4
  507. package/lib/tree/useStore.js.map +1 -1
  508. package/lib/tree-select/TreeSelect.js +3 -4
  509. package/lib/tree-select/TreeSelect.js.map +1 -1
  510. package/lib/tree-select/index.js +3 -4
  511. package/lib/tree-select/index.js.map +1 -1
  512. package/lib/tree-select/useTreeSelectPassthoughProps.js +2 -3
  513. package/lib/tree-select/useTreeSelectPassthoughProps.js.map +1 -1
  514. package/lib/tree-select/useTreeSelectUtils.js +4 -5
  515. package/lib/tree-select/useTreeSelectUtils.js.map +1 -1
  516. package/package.json +1 -1
  517. package/es/_chunks/dep-16cb7f3b.js.map +0 -1
  518. package/es/_chunks/dep-5bfc1a42.js.map +0 -1
  519. package/es/_chunks/dep-d44068e2.js +0 -1159
  520. package/es/_chunks/dep-d44068e2.js.map +0 -1
  521. package/es/_chunks/dep-f8eff6be.js +0 -29
  522. package/es/_chunks/dep-f8eff6be.js.map +0 -1
  523. package/es/addon/Addon.d.ts +0 -8
  524. package/es/addon/Addon.js.map +0 -1
  525. package/esm/_chunks/dep-16cb7f3b.js.map +0 -1
  526. package/esm/_chunks/dep-5bfc1a42.js.map +0 -1
  527. package/esm/_chunks/dep-df0d5d91.js +0 -1159
  528. package/esm/_chunks/dep-df0d5d91.js.map +0 -1
  529. package/esm/_chunks/dep-f8eff6be.js +0 -29
  530. package/esm/_chunks/dep-f8eff6be.js.map +0 -1
  531. package/esm/addon/Addon.d.ts +0 -8
  532. package/esm/addon/Addon.js.map +0 -1
  533. package/lib/_chunks/dep-94a90ff2.js.map +0 -1
  534. package/lib/_chunks/dep-956bf12a.js +0 -30
  535. package/lib/_chunks/dep-956bf12a.js.map +0 -1
  536. package/lib/_chunks/dep-d66dd060.js.map +0 -1
  537. package/lib/_chunks/dep-e683283d.js +0 -1167
  538. package/lib/_chunks/dep-e683283d.js.map +0 -1
  539. package/lib/addon/Addon.d.ts +0 -8
  540. package/lib/addon/Addon.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tree-store.js","sources":["../../../../src/_common/js/tree/tree-store.ts"],"sourcesContent":["import difference from 'lodash/difference';\nimport camelCase from 'lodash/camelCase';\nimport isPlainObject from 'lodash/isPlainObject';\nimport { TreeNode } from './tree-node';\nimport {\n TreeNodeValue,\n TypeIdMap,\n TypeTimer,\n TypeTargetNode,\n TypeTreeNodeData,\n TypeTreeStoreOptions,\n TypeTreeFilter,\n TypeTreeFilterOptions,\n TypeRelatedNodesOptions,\n TypeTreeEventState,\n} from './types';\n\n// 构建一个树的数据模型\n// 基本设计思想:写入时更新,减少读取消耗,以减少未来实现虚拟滚动所需的计算量\n// 任何一次数据写入,会触发相应节点的状态更新\nexport class TreeStore {\n // 根节点集合\n public children: TreeNode[];\n\n // 所有节点集合\n public nodes: TreeNode[];\n\n // 所有节点映射\n public nodeMap: Map<TreeNodeValue, TreeNode>;\n\n // 配置选项\n public config: TypeTreeStoreOptions;\n\n // 活动节点集合\n public activedMap: TypeIdMap;\n\n // 数据被更新的节点集合\n public updatedMap: TypeIdMap;\n\n // 选中节点集合\n public checkedMap: TypeIdMap;\n\n // 展开节点的集合\n public expandedMap: TypeIdMap;\n\n // 符合过滤条件的节点的集合\n public filterMap: TypeIdMap;\n\n // 数据更新计时器\n public updateTimer: TypeTimer;\n\n // 识别是否需要重排\n public shouldReflow: boolean;\n\n // 树节点过滤器\n public prevFilter: TypeTreeFilter;\n\n public constructor(options: TypeTreeStoreOptions) {\n const config: TypeTreeStoreOptions = {\n prefix: 't',\n keys: {},\n expandAll: false,\n expandLevel: 0,\n expandMutex: false,\n expandParent: false,\n activable: false,\n activeMultiple: false,\n checkable: false,\n checkStrictly: false,\n disabled: false,\n load: null,\n lazy: false,\n valueMode: 'onlyLeaf',\n filter: null,\n onLoad: null,\n onReflow: null,\n onUpdate: null,\n allowFoldNodeOnFilter: false,\n ...options,\n };\n this.config = config;\n this.nodes = [];\n this.children = [];\n this.nodeMap = new Map();\n this.activedMap = new Map();\n this.expandedMap = new Map();\n this.checkedMap = new Map();\n this.updatedMap = new Map();\n this.filterMap = new Map();\n this.prevFilter = null;\n // 这个计时器确保频繁的 update 事件被归纳为1次完整数据更新后的触发\n this.updateTimer = null;\n // 在子节点增删改查时,将此属性设置为 true,来触发视图更新\n this.shouldReflow = false;\n }\n\n // 配置选项\n public setConfig(options: TypeTreeStoreOptions) {\n let hasChanged = false;\n Object.keys(options).forEach((key) => {\n const val = options[key];\n if (val !== this.config[key]) {\n hasChanged = true;\n this.config[key] = val;\n }\n });\n if (hasChanged) {\n // 在 td-tree 的 render 方法中调用 setConfig\n // 这样减少了 watch 属性\n // 仅在属性变更后刷新状态\n // 这样可以避免触发渲染死循环\n this.refreshState();\n }\n }\n\n // 获取根孩子节点列表\n public getChildren() {\n return this.children;\n }\n\n // 获取节点对象\n public getNode(item: TypeTargetNode): TreeNode {\n let node = null;\n if (typeof item === 'string' || typeof item === 'number') {\n node = this.nodeMap.get(item);\n } else if (item instanceof TreeNode) {\n node = this.nodeMap.get(item.value);\n }\n return node;\n }\n\n // 获取节点在总节点列表中的位置\n public getIndex(node: TreeNode): number {\n return this.nodes.indexOf(node);\n }\n\n // 获取指定节点的父节点\n public getParent(value: TypeTargetNode): TreeNode {\n let parent = null;\n const node = this.getNode(value);\n if (node) {\n parent = node.getParent();\n }\n return parent;\n }\n\n // 获取指定节点的所有父节点\n public getParents(value: TypeTargetNode): TreeNode[] {\n const node = this.getNode(value);\n let parents: TreeNode[] = [];\n if (node) {\n parents = node.getParents();\n }\n return parents;\n }\n\n // 获取指定节点在其所在 children 中的位置\n public getNodeIndex(value: TypeTargetNode): number {\n const node = this.getNode(value);\n let index = -1;\n if (node) {\n index = node.getIndex();\n }\n return index;\n }\n\n // 获取所有符合条件的节点\n public getNodes(\n item?: TypeTargetNode,\n options?: TypeTreeFilterOptions,\n ): TreeNode[] {\n let nodes: TreeNode[] = [];\n let val: TreeNodeValue = '';\n if (typeof item === 'string' || typeof item === 'number') {\n val = item;\n } else if (item instanceof TreeNode) {\n val = item.value;\n }\n if (!val) {\n nodes = this.nodes.slice(0);\n } else {\n const node = this.getNode(val);\n if (node) {\n nodes = node.walk();\n }\n }\n\n if (options) {\n const conf: TypeTreeFilterOptions = {\n filter: null,\n level: Infinity,\n ...options,\n };\n if (typeof conf.level === 'number' && conf.level !== Infinity) {\n nodes = nodes.filter((node) => node.level <= conf.level);\n }\n if (typeof conf.filter === 'function') {\n nodes = nodes.filter((node) => {\n const nodeModel = node.getModel();\n return conf.filter(nodeModel);\n });\n }\n if (isPlainObject(conf.props)) {\n nodes = nodes.filter((node) => {\n const result = Object.keys(conf.props).every((key) => {\n const propEqual = node[key] === conf.props[key];\n return propEqual;\n });\n return result;\n });\n }\n }\n return nodes;\n }\n\n // 给树添加节点数据\n public append(list: TypeTreeNodeData[]): void {\n list.forEach((item) => {\n const node = new TreeNode(this, item);\n this.children.push(node);\n });\n this.reflow();\n }\n\n // 重新加载数据\n public reload(list: TypeTreeNodeData[]): void {\n this.expandedMap.clear();\n this.checkedMap.clear();\n this.activedMap.clear();\n this.filterMap.clear();\n this.removeAll();\n this.append(list);\n }\n\n // 解析节点数据,适配多种节点类型\n public parseNodeData(\n para: TreeNodeValue | TreeNode | TypeTreeNodeData,\n item: TypeTreeNodeData | TypeTreeNodeData[] | TreeNode,\n ) {\n let value: TreeNodeValue = '';\n let node = null;\n let data = null;\n\n if (typeof para === 'string' || typeof para === 'number') {\n value = para;\n data = item;\n node = this.getNode(value);\n } else if (para instanceof TreeNode) {\n node = para;\n data = item;\n } else {\n data = para;\n }\n const spec = {\n node,\n data,\n };\n return spec;\n }\n\n /**\n * 向指定节点追加节点或者数据\n * 支持下列使用方式\n * item: 节点数据, TreeNode: 节点实例, value: 节点值(ID)\n * appendNodes(item)\n * appendNodes(TreeNode)\n * appendNodes(value, item)\n * appendNodes(value, TreeNode)\n * appendNodes(TreeNode, item)\n * appendNodes(TreeNode, TreeNode)\n */\n public appendNodes(\n para?: TypeTargetNode | TypeTreeNodeData,\n item?: TypeTreeNodeData | TreeNode,\n ): void {\n const spec = this.parseNodeData(para, item);\n if (spec.data) {\n if (!spec.node) {\n // 在根节点插入\n if (spec.data instanceof TreeNode) {\n spec.data.appendTo(this);\n } else if (Array.isArray(spec.data)) {\n this.append(spec.data);\n } else {\n this.append([spec.data]);\n }\n } else {\n // 插入到目标节点之下\n if (spec.data instanceof TreeNode) {\n spec.data.appendTo(this, spec.node);\n } else if (Array.isArray(spec.data)) {\n spec.node.append(spec.data);\n } else {\n spec.node.append([spec.data]);\n }\n spec.node.updateRelated();\n }\n }\n }\n\n // 在目标节点之前插入节点\n public insertBefore(value: TypeTargetNode, item: TypeTreeNodeData): void {\n const node = this.getNode(value);\n if (node) {\n node.insertBefore(item);\n }\n }\n\n // 在目标节点之后插入节点\n public insertAfter(value: TypeTargetNode, item: TypeTreeNodeData): void {\n const node = this.getNode(value);\n if (node) {\n node.insertAfter(item);\n }\n }\n\n // 更新树结构\n // 清空 nodes 数组,然后遍历所有根节点重新插入 node\n public refreshNodes(): void {\n const { children, nodes } = this;\n nodes.length = 0;\n children.forEach((node) => {\n const list = node.walk();\n Array.prototype.push.apply(nodes, list);\n });\n }\n\n // 更新所有树节点状态\n public refreshState(): void {\n const { nodes } = this;\n nodes.forEach((node) => {\n node.update();\n node.updateChecked();\n });\n }\n\n // 节点重排\n // 应该仅在树节点增删改查时调用\n public reflow(node?: TreeNode): void {\n this.shouldReflow = true;\n this.updated(node);\n }\n\n // 触发更新事件\n // 节点属性变更时调用\n public updated(node?: TreeNode): void {\n if (node?.value) {\n this.updatedMap.set(node.value, true);\n }\n if (this.updateTimer) return;\n this.updateTimer = +setTimeout(() => {\n clearTimeout(this.updateTimer);\n this.updateTimer = null;\n\n // 检查节点是否需要回流,重排数组\n if (this.shouldReflow) {\n this.refreshNodes();\n this.emit('reflow');\n }\n\n // 检查节点是否有被过滤,锁定路径节点\n // 在此之前要遍历节点生成一个经过排序的节点数组\n // 以便于优化锁定检查算法\n if (!this.config?.allowFoldNodeOnFilter) this.lockFilterPathNodes();\n\n const updatedList = Array.from(this.updatedMap.keys());\n if (updatedList.length > 0) {\n // 统计需要更新状态的节点,派发更新事件\n const updatedNodes = updatedList.map((value) => this.getNode(value));\n this.emit('update', {\n nodes: updatedNodes,\n map: this.updatedMap,\n });\n } else if (this.shouldReflow) {\n // 单纯的回流不需要更新节点状态\n // 但需要触发更新事件\n this.emit('update', {\n nodes: [],\n map: this.updatedMap,\n });\n }\n\n // 每次回流检查完毕,还原检查状态\n this.shouldReflow = false;\n this.updatedMap.clear();\n });\n }\n\n // 获取激活节点集合\n public getActived(map?: TypeIdMap): TreeNodeValue[] {\n const activedMap = map || this.activedMap;\n return Array.from(activedMap.keys());\n }\n\n // 获取指定范围的高亮节点\n public getActivedNodes(item?: TypeTargetNode): TreeNode[] {\n let nodes = this.getNodes(item);\n nodes = nodes.filter((node) => node.isActived());\n return nodes;\n }\n\n // 替换激活态\n public replaceActived(list: TreeNodeValue[]): void {\n this.resetActived();\n this.setActived(list);\n }\n\n // 设置激活态\n public setActived(actived: TreeNodeValue[]): void {\n const { activeMultiple } = this.config;\n const list = actived.slice(0);\n if (!activeMultiple) {\n list.length = 1;\n }\n list.forEach((val) => {\n this.activedMap.set(val, true);\n const node = this.getNode(val);\n if (node) {\n node.update();\n }\n });\n }\n\n // 重置激活态\n public resetActived(): void {\n const actived = this.getActived();\n this.activedMap.clear();\n const relatedNodes = this.getRelatedNodes(actived);\n relatedNodes.forEach((node) => {\n node.update();\n });\n }\n\n // 获取展开节点集合\n public getExpanded(map?: TypeIdMap): TreeNodeValue[] {\n const expandedMap = map || this.expandedMap;\n return Array.from(expandedMap.keys());\n }\n\n // 替换展开节点\n public replaceExpanded(list: TreeNodeValue[]): void {\n const expanded = this.getExpanded();\n const added = difference(list, expanded);\n const removed = difference(expanded, list);\n this.setExpandedDirectly(removed, false);\n this.updateExpanded(removed);\n this.setExpanded(added);\n }\n\n // 批量设置展开节点\n public setExpanded(list: TreeNodeValue[]): void {\n this.setExpandedDirectly(list);\n this.updateExpanded(list);\n }\n\n // 直接设置展开节点数据,不更新节点状态\n public setExpandedDirectly(list: TreeNodeValue[], expanded = true): void {\n list.forEach((val) => {\n if (expanded) {\n this.expandedMap.set(val, true);\n const node = this.getNode(val);\n if (node) {\n node.afterExpanded();\n }\n } else {\n this.expandedMap.delete(val);\n }\n });\n }\n\n // 清除所有展开节点\n public resetExpanded(): void {\n const expanded = this.getExpanded();\n this.expandedMap.clear();\n this.updateExpanded(expanded);\n }\n\n // 更新展开节点相关节点的状态\n public updateExpanded(list: TreeNodeValue[]): void {\n const relatedNodes = this.getRelatedNodes(list, {\n withParents: false,\n });\n relatedNodes.forEach((node) => {\n node.update();\n });\n }\n\n // 获取选中态节点 value 数组\n public getChecked(map?: TypeIdMap): TreeNodeValue[] {\n const { nodes, config } = this;\n const { valueMode, checkStrictly } = config;\n const list: TreeNodeValue[] = [];\n const checkedMap = map || this.checkedMap;\n nodes.forEach((node) => {\n if (node.isChecked(checkedMap)) {\n if (valueMode === 'parentFirst' && !checkStrictly) {\n if (!node.parent || !node.parent.isChecked(checkedMap)) {\n list.push(node.value);\n }\n } else if (valueMode === 'onlyLeaf' && !checkStrictly) {\n if (node.isLeaf()) {\n list.push(node.value);\n }\n } else {\n list.push(node.value);\n }\n }\n });\n return list;\n }\n\n // 获取指定节点下的选中节点\n public getCheckedNodes(item?: TypeTargetNode): TreeNode[] {\n let nodes = this.getNodes(item);\n nodes = nodes.filter((node) => node.isChecked());\n return nodes;\n }\n\n // 替换选中态列表\n public replaceChecked(list: TreeNodeValue[]): void {\n this.resetChecked();\n this.setChecked(list);\n }\n\n // 批量设置选中态\n public setChecked(list: TreeNodeValue[]): void {\n const { valueMode, checkStrictly, checkable } = this.config;\n if (!checkable) return;\n list.forEach((val: TreeNodeValue) => {\n const node = this.getNode(val);\n if (node) {\n if (valueMode === 'parentFirst' && !checkStrictly) {\n const childrenNodes = node.walk();\n childrenNodes.forEach((childNode) => {\n this.checkedMap.set(childNode.value, true);\n });\n } else {\n this.checkedMap.set(val, true);\n node.updateChecked();\n }\n }\n });\n if (!checkStrictly) {\n const checked = this.getChecked();\n const relatedNodes = this.getRelatedNodes(checked);\n relatedNodes.forEach((node) => {\n node.updateChecked();\n });\n }\n }\n\n // 清除所有选中节点\n public resetChecked(): void {\n const checked = this.getChecked();\n const relatedNodes = this.getRelatedNodes(checked);\n this.checkedMap.clear();\n relatedNodes.forEach((node) => {\n node.updateChecked();\n });\n }\n\n // 更新全部节点状态\n public updateAll(): void {\n const nodes = this.getNodes();\n nodes.forEach((node) => {\n node.update();\n });\n }\n\n // 移除指定节点\n public remove(value?: TypeTargetNode): void {\n const node = this.getNode(value);\n if (node) {\n node.remove();\n }\n }\n\n // 清空所有节点\n public removeAll(): void {\n const nodes = this.getNodes();\n nodes.forEach((node) => {\n node.remove();\n });\n }\n\n // 获取节点状态变化可能影响的周边节点\n // 实现最小遍历集合\n public getRelatedNodes(\n list: TreeNodeValue[],\n options?: TypeRelatedNodesOptions,\n ): TreeNode[] {\n const conf = {\n withParents: true,\n ...options,\n };\n const map = new Map();\n list.forEach((value) => {\n if (map.get(value)) return;\n const node = this.getNode(value);\n if (node) {\n const parents = node.getParents();\n const children = node.walk();\n let related = [];\n if (conf.withParents) {\n related = parents.concat(children);\n } else {\n related = children;\n }\n related.forEach((relatedNode) => {\n map.set(relatedNode.value, relatedNode);\n });\n }\n });\n const relatedNodes = Array.from(map.values());\n return relatedNodes;\n }\n\n // 触发绑定的事件\n public emit(name: string, state?: TypeTreeEventState): void {\n const config = this.config || {};\n const methodName = camelCase(`on-${name}`);\n const method = config[methodName];\n if (typeof method === 'function') {\n method(state);\n }\n }\n\n // 锁定过滤节点的路径节点\n // 使得路径节点展开,可见,且不可操作\n public lockFilterPathNodes() {\n const { config } = this;\n const allNodes = this.getNodes();\n\n // 如果之前有进行过滤,则先解锁所有节点\n if (this.prevFilter) {\n allNodes.forEach((node: TreeNode) => {\n node.lock(false);\n });\n }\n\n // 当前没有过滤器\n // 则无需处理锁定节点\n if (!config.filter) {\n return;\n }\n this.prevFilter = config.filter;\n\n // 构造路径节点map\n const map = new Map();\n\n // 全部节点要经过排序,才能使用这个算法\n // 比起每个过滤节点调用 getParents 方法检查父节点状态\n // 算法复杂度 O(N*log(N)) => O(N)\n allNodes.reverse().forEach((item: TreeNode) => {\n const node = item;\n\n // 被过滤节点父节点固定为展开状态\n const parent = node.getParent();\n if (node.vmIsRest) {\n if (parent) {\n // 被过滤节点的父节点固定为展开状态\n parent.expanded = true;\n }\n // 被过滤节点固定为展示状态\n node.visible = true;\n }\n if (node.vmIsRest || map.get(node.value)) {\n if (parent && !parent.vmIsRest) {\n map.set(parent.value, true);\n }\n }\n });\n\n // 锁定路径节点展示样式\n const filterPathValues = Array.from(map.keys());\n filterPathValues.forEach((value: TreeNodeValue) => {\n const node = this.getNode(value);\n if (node) {\n node.lock(true);\n }\n });\n }\n}\n\nexport default TreeStore;\n"],"names":["TreeStore","options","config","prefix","keys","expandAll","expandLevel","expandMutex","expandParent","activable","activeMultiple","checkable","checkStrictly","disabled","load","lazy","valueMode","filter","onLoad","onReflow","onUpdate","allowFoldNodeOnFilter","nodes","children","nodeMap","Map","activedMap","expandedMap","checkedMap","updatedMap","filterMap","prevFilter","updateTimer","shouldReflow","hasChanged","Object","forEach","key","val","refreshState","item","node","get","TreeNode","value","indexOf","parent","getNode","getParent","parents","getParents","index","getIndex","slice","walk","conf","level","Infinity","nodeModel","getModel","isPlainObject","props","result","every","propEqual","list","push","reflow","clear","removeAll","append","para","data","spec","parseNodeData","appendTo","Array","isArray","updateRelated","insertBefore","insertAfter","length","prototype","apply","update","updateChecked","updated","set","setTimeout","clearTimeout","refreshNodes","emit","lockFilterPathNodes","updatedList","from","updatedNodes","map","getNodes","isActived","resetActived","setActived","actived","getActived","relatedNodes","getRelatedNodes","expanded","getExpanded","added","difference","removed","setExpandedDirectly","updateExpanded","setExpanded","afterExpanded","withParents","isChecked","isLeaf","resetChecked","setChecked","childrenNodes","childNode","checked","getChecked","remove","related","concat","relatedNode","values","name","state","methodName","camelCase","method","allNodes","lock","reverse","vmIsRest","visible","filterPathValues"],"mappings":"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"}
1
+ {"version":3,"file":"tree-store.js","sources":["../../../../src/_common/js/tree/tree-store.ts"],"sourcesContent":["import difference from 'lodash/difference';\nimport camelCase from 'lodash/camelCase';\nimport isPlainObject from 'lodash/isPlainObject';\nimport { TreeNode } from './tree-node';\nimport {\n TreeNodeValue,\n TypeIdMap,\n TypeTimer,\n TypeTargetNode,\n TypeTreeNodeData,\n TypeTreeStoreOptions,\n TypeTreeFilter,\n TypeTreeFilterOptions,\n TypeRelatedNodesOptions,\n TypeTreeEventState,\n} from './types';\n\n// 构建一个树的数据模型\n// 基本设计思想:写入时更新,减少读取消耗,以减少未来实现虚拟滚动所需的计算量\n// 任何一次数据写入,会触发相应节点的状态更新\nexport class TreeStore {\n // 根节点集合\n public children: TreeNode[];\n\n // 所有节点集合\n public nodes: TreeNode[];\n\n // 所有节点映射\n public nodeMap: Map<TreeNodeValue, TreeNode>;\n\n // 配置选项\n public config: TypeTreeStoreOptions;\n\n // 活动节点集合\n public activedMap: TypeIdMap;\n\n // 数据被更新的节点集合\n public updatedMap: TypeIdMap;\n\n // 选中节点集合\n public checkedMap: TypeIdMap;\n\n // 展开节点的集合\n public expandedMap: TypeIdMap;\n\n // 符合过滤条件的节点的集合\n public filterMap: TypeIdMap;\n\n // 数据更新计时器\n public updateTimer: TypeTimer;\n\n // 识别是否需要重排\n public shouldReflow: boolean;\n\n // 树节点过滤器\n public prevFilter: TypeTreeFilter;\n\n public constructor(options: TypeTreeStoreOptions) {\n const config: TypeTreeStoreOptions = {\n prefix: 't',\n keys: {},\n expandAll: false,\n expandLevel: 0,\n expandMutex: false,\n expandParent: false,\n activable: false,\n activeMultiple: false,\n checkable: false,\n checkStrictly: false,\n disabled: false,\n load: null,\n lazy: false,\n valueMode: 'onlyLeaf',\n filter: null,\n onLoad: null,\n onReflow: null,\n onUpdate: null,\n allowFoldNodeOnFilter: false,\n ...options,\n };\n this.config = config;\n this.nodes = [];\n this.children = [];\n this.nodeMap = new Map();\n this.activedMap = new Map();\n this.expandedMap = new Map();\n this.checkedMap = new Map();\n this.updatedMap = new Map();\n this.filterMap = new Map();\n this.prevFilter = null;\n // 这个计时器确保频繁的 update 事件被归纳为1次完整数据更新后的触发\n this.updateTimer = null;\n // 在子节点增删改查时,将此属性设置为 true,来触发视图更新\n this.shouldReflow = false;\n }\n\n // 配置选项\n public setConfig(options: TypeTreeStoreOptions) {\n let hasChanged = false;\n Object.keys(options).forEach((key) => {\n const val = options[key];\n if (val !== this.config[key]) {\n hasChanged = true;\n this.config[key] = val;\n }\n });\n if (hasChanged) {\n // 在 td-tree 的 render 方法中调用 setConfig\n // 这样减少了 watch 属性\n // 仅在属性变更后刷新状态\n // 这样可以避免触发渲染死循环\n this.refreshState();\n }\n }\n\n // 获取根孩子节点列表\n public getChildren() {\n return this.children;\n }\n\n // 获取节点对象\n public getNode(item: TypeTargetNode): TreeNode {\n let node = null;\n if (typeof item === 'string' || typeof item === 'number') {\n node = this.nodeMap.get(item);\n } else if (item instanceof TreeNode) {\n node = this.nodeMap.get(item.value);\n }\n return node;\n }\n\n // 获取节点在总节点列表中的位置\n public getIndex(node: TreeNode): number {\n return this.nodes.indexOf(node);\n }\n\n // 获取指定节点的父节点\n public getParent(value: TypeTargetNode): TreeNode {\n let parent = null;\n const node = this.getNode(value);\n if (node) {\n parent = node.getParent();\n }\n return parent;\n }\n\n // 获取指定节点的所有父节点\n public getParents(value: TypeTargetNode): TreeNode[] {\n const node = this.getNode(value);\n let parents: TreeNode[] = [];\n if (node) {\n parents = node.getParents();\n }\n return parents;\n }\n\n // 获取指定节点在其所在 children 中的位置\n public getNodeIndex(value: TypeTargetNode): number {\n const node = this.getNode(value);\n let index = -1;\n if (node) {\n index = node.getIndex();\n }\n return index;\n }\n\n // 获取所有符合条件的节点\n public getNodes(\n item?: TypeTargetNode,\n options?: TypeTreeFilterOptions,\n ): TreeNode[] {\n let nodes: TreeNode[] = [];\n let val: TreeNodeValue = '';\n if (typeof item === 'string' || typeof item === 'number') {\n val = item;\n } else if (item instanceof TreeNode) {\n val = item.value;\n }\n if (!val) {\n nodes = this.nodes.slice(0);\n } else {\n const node = this.getNode(val);\n if (node) {\n nodes = node.walk();\n }\n }\n\n if (options) {\n const conf: TypeTreeFilterOptions = {\n filter: null,\n level: Infinity,\n ...options,\n };\n if (typeof conf.level === 'number' && conf.level !== Infinity) {\n nodes = nodes.filter((node) => node.level <= conf.level);\n }\n if (typeof conf.filter === 'function') {\n nodes = nodes.filter((node) => {\n const nodeModel = node.getModel();\n return conf.filter(nodeModel);\n });\n }\n if (isPlainObject(conf.props)) {\n nodes = nodes.filter((node) => {\n const result = Object.keys(conf.props).every((key) => {\n const propEqual = node[key] === conf.props[key];\n return propEqual;\n });\n return result;\n });\n }\n }\n return nodes;\n }\n\n // 给树添加节点数据\n public append(list: TypeTreeNodeData[]): void {\n list.forEach((item) => {\n const node = new TreeNode(this, item);\n this.children.push(node);\n });\n this.reflow();\n }\n\n // 重新加载数据\n public reload(list: TypeTreeNodeData[]): void {\n this.expandedMap.clear();\n this.checkedMap.clear();\n this.activedMap.clear();\n this.filterMap.clear();\n this.removeAll();\n this.append(list);\n }\n\n // 解析节点数据,适配多种节点类型\n public parseNodeData(\n para: TreeNodeValue | TreeNode | TypeTreeNodeData,\n item: TypeTreeNodeData | TypeTreeNodeData[] | TreeNode,\n ) {\n let value: TreeNodeValue = '';\n let node = null;\n let data = null;\n\n if (typeof para === 'string' || typeof para === 'number') {\n value = para;\n data = item;\n node = this.getNode(value);\n } else if (para instanceof TreeNode) {\n node = para;\n data = item;\n } else {\n data = para;\n }\n const spec = {\n node,\n data,\n };\n return spec;\n }\n\n /**\n * 向指定节点追加节点或者数据\n * 支持下列使用方式\n * item: 节点数据, TreeNode: 节点实例, value: 节点值(ID)\n * appendNodes(item)\n * appendNodes(TreeNode)\n * appendNodes(value, item)\n * appendNodes(value, TreeNode)\n * appendNodes(TreeNode, item)\n * appendNodes(TreeNode, TreeNode)\n */\n public appendNodes(\n para?: TypeTargetNode | TypeTreeNodeData,\n item?: TypeTreeNodeData | TreeNode,\n ): void {\n const spec = this.parseNodeData(para, item);\n if (spec.data) {\n if (!spec.node) {\n // 在根节点插入\n if (spec.data instanceof TreeNode) {\n spec.data.appendTo(this);\n } else if (Array.isArray(spec.data)) {\n this.append(spec.data);\n } else {\n this.append([spec.data]);\n }\n } else {\n // 插入到目标节点之下\n if (spec.data instanceof TreeNode) {\n spec.data.appendTo(this, spec.node);\n } else if (Array.isArray(spec.data)) {\n spec.node.append(spec.data);\n } else {\n spec.node.append([spec.data]);\n }\n spec.node.updateRelated();\n }\n }\n }\n\n // 在目标节点之前插入节点\n public insertBefore(value: TypeTargetNode, item: TypeTreeNodeData): void {\n const node = this.getNode(value);\n if (node) {\n node.insertBefore(item);\n }\n }\n\n // 在目标节点之后插入节点\n public insertAfter(value: TypeTargetNode, item: TypeTreeNodeData): void {\n const node = this.getNode(value);\n if (node) {\n node.insertAfter(item);\n }\n }\n\n // 更新树结构\n // 清空 nodes 数组,然后遍历所有根节点重新插入 node\n public refreshNodes(): void {\n const { children, nodes } = this;\n nodes.length = 0;\n children.forEach((node) => {\n const list = node.walk();\n Array.prototype.push.apply(nodes, list);\n });\n }\n\n // 更新所有树节点状态\n public refreshState(): void {\n const { nodes } = this;\n nodes.forEach((node) => {\n node.update();\n node.updateChecked();\n });\n }\n\n // 节点重排\n // 应该仅在树节点增删改查时调用\n public reflow(node?: TreeNode): void {\n this.shouldReflow = true;\n this.updated(node);\n }\n\n // 触发更新事件\n // 节点属性变更时调用\n public updated(node?: TreeNode): void {\n if (node?.value) {\n this.updatedMap.set(node.value, true);\n }\n if (this.updateTimer) return;\n this.updateTimer = +setTimeout(() => {\n clearTimeout(this.updateTimer);\n this.updateTimer = null;\n\n // 检查节点是否需要回流,重排数组\n if (this.shouldReflow) {\n this.refreshNodes();\n this.emit('reflow');\n }\n\n // 检查节点是否有被过滤,锁定路径节点\n // 在此之前要遍历节点生成一个经过排序的节点数组\n // 以便于优化锁定检查算法\n if (!this.config?.allowFoldNodeOnFilter) this.lockFilterPathNodes();\n\n const updatedList = Array.from(this.updatedMap.keys());\n if (updatedList.length > 0) {\n // 统计需要更新状态的节点,派发更新事件\n const updatedNodes = updatedList.map((value) => this.getNode(value));\n this.emit('update', {\n nodes: updatedNodes,\n map: this.updatedMap,\n });\n } else if (this.shouldReflow) {\n // 单纯的回流不需要更新节点状态\n // 但需要触发更新事件\n this.emit('update', {\n nodes: [],\n map: this.updatedMap,\n });\n }\n\n // 每次回流检查完毕,还原检查状态\n this.shouldReflow = false;\n this.updatedMap.clear();\n });\n }\n\n // 获取激活节点集合\n public getActived(map?: TypeIdMap): TreeNodeValue[] {\n const activedMap = map || this.activedMap;\n return Array.from(activedMap.keys());\n }\n\n // 获取指定范围的高亮节点\n public getActivedNodes(item?: TypeTargetNode): TreeNode[] {\n let nodes = this.getNodes(item);\n nodes = nodes.filter((node) => node.isActived());\n return nodes;\n }\n\n // 替换激活态\n public replaceActived(list: TreeNodeValue[]): void {\n this.resetActived();\n this.setActived(list);\n }\n\n // 设置激活态\n public setActived(actived: TreeNodeValue[]): void {\n const { activeMultiple } = this.config;\n const list = actived.slice(0);\n if (!activeMultiple) {\n list.length = 1;\n }\n list.forEach((val) => {\n this.activedMap.set(val, true);\n const node = this.getNode(val);\n if (node) {\n node.update();\n }\n });\n }\n\n // 重置激活态\n public resetActived(): void {\n const actived = this.getActived();\n this.activedMap.clear();\n const relatedNodes = this.getRelatedNodes(actived);\n relatedNodes.forEach((node) => {\n node.update();\n });\n }\n\n // 获取展开节点集合\n public getExpanded(map?: TypeIdMap): TreeNodeValue[] {\n const expandedMap = map || this.expandedMap;\n return Array.from(expandedMap.keys());\n }\n\n // 替换展开节点\n public replaceExpanded(list: TreeNodeValue[]): void {\n const expanded = this.getExpanded();\n const added = difference(list, expanded);\n const removed = difference(expanded, list);\n this.setExpandedDirectly(removed, false);\n this.updateExpanded(removed);\n this.setExpanded(added);\n }\n\n // 批量设置展开节点\n public setExpanded(list: TreeNodeValue[]): void {\n this.setExpandedDirectly(list);\n this.updateExpanded(list);\n }\n\n // 直接设置展开节点数据,不更新节点状态\n public setExpandedDirectly(list: TreeNodeValue[], expanded = true): void {\n list.forEach((val) => {\n if (expanded) {\n this.expandedMap.set(val, true);\n const node = this.getNode(val);\n if (node) {\n node.afterExpanded();\n }\n } else {\n this.expandedMap.delete(val);\n }\n });\n }\n\n // 清除所有展开节点\n public resetExpanded(): void {\n const expanded = this.getExpanded();\n this.expandedMap.clear();\n this.updateExpanded(expanded);\n }\n\n // 更新展开节点相关节点的状态\n public updateExpanded(list: TreeNodeValue[]): void {\n const relatedNodes = this.getRelatedNodes(list, {\n withParents: false,\n });\n relatedNodes.forEach((node) => {\n node.update();\n });\n }\n\n // 获取选中态节点 value 数组\n public getChecked(map?: TypeIdMap): TreeNodeValue[] {\n const { nodes, config } = this;\n const { valueMode, checkStrictly } = config;\n const list: TreeNodeValue[] = [];\n const checkedMap = map || this.checkedMap;\n nodes.forEach((node) => {\n if (node.isChecked(checkedMap)) {\n if (valueMode === 'parentFirst' && !checkStrictly) {\n if (!node.parent || !node.parent.isChecked(checkedMap)) {\n list.push(node.value);\n }\n } else if (valueMode === 'onlyLeaf' && !checkStrictly) {\n if (node.isLeaf()) {\n list.push(node.value);\n }\n } else {\n list.push(node.value);\n }\n }\n });\n return list;\n }\n\n // 获取指定节点下的选中节点\n public getCheckedNodes(item?: TypeTargetNode): TreeNode[] {\n let nodes = this.getNodes(item);\n nodes = nodes.filter((node) => node.isChecked());\n return nodes;\n }\n\n // 替换选中态列表\n public replaceChecked(list: TreeNodeValue[]): void {\n this.resetChecked();\n this.setChecked(list, true);\n }\n\n // 批量设置选中态\n public setChecked(list: TreeNodeValue[], isFromValueChange?: boolean): void {\n const { valueMode, checkStrictly, checkable } = this.config;\n if (!checkable) return;\n list.forEach((val: TreeNodeValue) => {\n const node = this.getNode(val);\n if (node) {\n if (valueMode === 'parentFirst' && !checkStrictly) {\n const childrenNodes = node.walk();\n childrenNodes.forEach((childNode) => {\n this.checkedMap.set(childNode.value, true);\n });\n } else {\n this.checkedMap.set(val, true);\n node.updateChecked(isFromValueChange);\n }\n }\n });\n if (!checkStrictly) {\n const checked = this.getChecked();\n const relatedNodes = this.getRelatedNodes(checked);\n relatedNodes.forEach((node) => {\n node.updateChecked();\n });\n }\n }\n\n // 清除所有选中节点\n public resetChecked(): void {\n const checked = this.getChecked();\n const relatedNodes = this.getRelatedNodes(checked);\n this.checkedMap.clear();\n relatedNodes.forEach((node) => {\n node.updateChecked();\n });\n }\n\n // 更新全部节点状态\n public updateAll(): void {\n const nodes = this.getNodes();\n nodes.forEach((node) => {\n node.update();\n });\n }\n\n // 移除指定节点\n public remove(value?: TypeTargetNode): void {\n const node = this.getNode(value);\n if (node) {\n node.remove();\n }\n }\n\n // 清空所有节点\n public removeAll(): void {\n const nodes = this.getNodes();\n nodes.forEach((node) => {\n node.remove();\n });\n }\n\n // 获取节点状态变化可能影响的周边节点\n // 实现最小遍历集合\n public getRelatedNodes(\n list: TreeNodeValue[],\n options?: TypeRelatedNodesOptions,\n ): TreeNode[] {\n const conf = {\n withParents: true,\n ...options,\n };\n const map = new Map();\n list.forEach((value) => {\n if (map.get(value)) return;\n const node = this.getNode(value);\n if (node) {\n const parents = node.getParents();\n const children = node.walk();\n let related = [];\n if (conf.withParents) {\n related = parents.concat(children);\n } else {\n related = children;\n }\n related.forEach((relatedNode) => {\n map.set(relatedNode.value, relatedNode);\n });\n }\n });\n const relatedNodes = Array.from(map.values());\n return relatedNodes;\n }\n\n // 触发绑定的事件\n public emit(name: string, state?: TypeTreeEventState): void {\n const config = this.config || {};\n const methodName = camelCase(`on-${name}`);\n const method = config[methodName];\n if (typeof method === 'function') {\n method(state);\n }\n }\n\n // 锁定过滤节点的路径节点\n // 使得路径节点展开,可见,且不可操作\n public lockFilterPathNodes() {\n const { config } = this;\n const allNodes = this.getNodes();\n\n // 如果之前有进行过滤,则先解锁所有节点\n if (this.prevFilter) {\n allNodes.forEach((node: TreeNode) => {\n node.lock(false);\n });\n }\n\n // 当前没有过滤器\n // 则无需处理锁定节点\n if (!config.filter) {\n return;\n }\n this.prevFilter = config.filter;\n\n // 构造路径节点map\n const map = new Map();\n\n // 全部节点要经过排序,才能使用这个算法\n // 比起每个过滤节点调用 getParents 方法检查父节点状态\n // 算法复杂度 O(N*log(N)) => O(N)\n allNodes.reverse().forEach((item: TreeNode) => {\n const node = item;\n\n // 被过滤节点父节点固定为展开状态\n const parent = node.getParent();\n if (node.vmIsRest) {\n if (parent) {\n // 被过滤节点的父节点固定为展开状态\n parent.expanded = true;\n }\n // 被过滤节点固定为展示状态\n node.visible = true;\n }\n if (node.vmIsRest || map.get(node.value)) {\n if (parent && !parent.vmIsRest) {\n map.set(parent.value, true);\n }\n }\n });\n\n // 锁定路径节点展示样式\n const filterPathValues = Array.from(map.keys());\n filterPathValues.forEach((value: TreeNodeValue) => {\n const node = this.getNode(value);\n if (node) {\n node.lock(true);\n }\n });\n }\n}\n\nexport default TreeStore;\n"],"names":["TreeStore","options","config","prefix","keys","expandAll","expandLevel","expandMutex","expandParent","activable","activeMultiple","checkable","checkStrictly","disabled","load","lazy","valueMode","filter","onLoad","onReflow","onUpdate","allowFoldNodeOnFilter","nodes","children","nodeMap","Map","activedMap","expandedMap","checkedMap","updatedMap","filterMap","prevFilter","updateTimer","shouldReflow","hasChanged","Object","forEach","key","val","refreshState","item","node","get","TreeNode","value","indexOf","parent","getNode","getParent","parents","getParents","index","getIndex","slice","walk","conf","level","Infinity","nodeModel","getModel","isPlainObject","props","result","every","propEqual","list","push","reflow","clear","removeAll","append","para","data","spec","parseNodeData","appendTo","Array","isArray","updateRelated","insertBefore","insertAfter","length","prototype","apply","update","updateChecked","updated","set","setTimeout","clearTimeout","refreshNodes","emit","lockFilterPathNodes","updatedList","from","updatedNodes","map","getNodes","isActived","resetActived","setActived","actived","getActived","relatedNodes","getRelatedNodes","expanded","getExpanded","added","difference","removed","setExpandedDirectly","updateExpanded","setExpanded","afterExpanded","withParents","isChecked","isLeaf","resetChecked","setChecked","isFromValueChange","childrenNodes","childNode","checked","getChecked","remove","related","concat","relatedNode","values","name","state","methodName","camelCase","method","allNodes","lock","reverse","vmIsRest","visible","filterPathValues"],"mappings":"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"}
@@ -31,7 +31,7 @@ function xhr(_ref) {
31
31
  var formData = new FormData();
32
32
  var sendData = typeof data === "function" ? data(file) : data;
33
33
  Object.keys(sendData).forEach(function (key) {
34
- formData.append(key, data[key]);
34
+ formData.append(key, sendData[key]);
35
35
  });
36
36
  innerFiles.forEach(function (f) {
37
37
  formData.append(name, f && f.raw);
@@ -1 +1 @@
1
- {"version":3,"file":"xhr.js","sources":["../../../../src/_common/js/upload/xhr.ts"],"sourcesContent":["import { UploadFile, XhrOptions } from './types';\n\nexport default function xhr({\n method = 'POST',\n action,\n withCredentials = false,\n headers = {},\n data = {},\n file,\n files,\n name = 'file',\n onError,\n onProgress,\n onSuccess,\n}: XhrOptions) {\n // support files\n const innerFiles: UploadFile[] = files || [];\n\n // eslint-disable-next-line no-shadow\n const xhr = new XMLHttpRequest();\n if (withCredentials) {\n xhr.withCredentials = true;\n }\n\n // set send data\n const formData = new FormData();\n const sendData = typeof data === 'function' ? data(file) : data;\n Object.keys(sendData).forEach((key) => {\n formData.append(key, data[key]);\n });\n\n // support one request upload multiple files\n innerFiles.forEach((f) => {\n formData.append(name, f && f.raw as any);\n });\n\n xhr.open(method, action, true);\n\n // custom request headers\n Object.keys(headers).forEach((key) => {\n xhr.setRequestHeader(key, headers[key]);\n });\n\n xhr.onerror = (event: ProgressEvent) => onError({ event, file, files: innerFiles });\n\n if (xhr.upload) {\n xhr.upload.onprogress = (event: ProgressEvent) => {\n let percent = 0;\n if (event.total > 0) {\n percent = Math.round((event.loaded / event.total) * 100);\n }\n\n onProgress({\n event, percent, file, files: innerFiles\n });\n };\n }\n\n // eslint-disable-next-line consistent-return\n xhr.onload = (event: ProgressEvent) => {\n let response;\n const isFail = xhr.status < 200 || xhr.status >= 300;\n if (isFail) {\n return onError({\n event, file, files: innerFiles, response\n });\n }\n const text = xhr.responseText || xhr.response;\n try {\n response = JSON.parse(text);\n } catch (e) {\n response = text;\n }\n onSuccess({\n event, file, files: innerFiles, response\n });\n };\n\n xhr.send(formData);\n\n return xhr;\n}\n"],"names":["xhr","method","action","withCredentials","headers","data","file","files","name","onError","onProgress","onSuccess","innerFiles","xhr2","XMLHttpRequest","formData","FormData","sendData","Object","keys","forEach","key","append","f","raw","open","setRequestHeader","onerror","event","upload","onprogress","percent","total","Math","round","loaded","onload","response","isFail","status","text","responseText","JSON","parse","e","send"],"mappings":"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"}
1
+ {"version":3,"file":"xhr.js","sources":["../../../../src/_common/js/upload/xhr.ts"],"sourcesContent":["import { UploadFile, XhrOptions } from './types';\n\nexport default function xhr({\n method = 'POST',\n action,\n withCredentials = false,\n headers = {},\n data = {},\n file,\n files,\n name = 'file',\n onError,\n onProgress,\n onSuccess,\n}: XhrOptions) {\n // support files\n const innerFiles: UploadFile[] = files || [];\n\n // eslint-disable-next-line no-shadow\n const xhr = new XMLHttpRequest();\n if (withCredentials) {\n xhr.withCredentials = true;\n }\n\n // set send data\n const formData = new FormData();\n const sendData = typeof data === 'function' ? data(file) : data;\n Object.keys(sendData).forEach((key) => {\n formData.append(key, sendData[key]);\n });\n\n // support one request upload multiple files\n innerFiles.forEach((f) => {\n formData.append(name, f && f.raw as any);\n });\n\n xhr.open(method, action, true);\n\n // custom request headers\n Object.keys(headers).forEach((key) => {\n xhr.setRequestHeader(key, headers[key]);\n });\n\n xhr.onerror = (event: ProgressEvent) => onError({ event, file, files: innerFiles });\n\n if (xhr.upload) {\n xhr.upload.onprogress = (event: ProgressEvent) => {\n let percent = 0;\n if (event.total > 0) {\n percent = Math.round((event.loaded / event.total) * 100);\n }\n\n onProgress({\n event, percent, file, files: innerFiles\n });\n };\n }\n\n // eslint-disable-next-line consistent-return\n xhr.onload = (event: ProgressEvent) => {\n let response;\n const isFail = xhr.status < 200 || xhr.status >= 300;\n if (isFail) {\n return onError({\n event, file, files: innerFiles, response\n });\n }\n const text = xhr.responseText || xhr.response;\n try {\n response = JSON.parse(text);\n } catch (e) {\n response = text;\n }\n onSuccess({\n event, file, files: innerFiles, response\n });\n };\n\n xhr.send(formData);\n\n return xhr;\n}\n"],"names":["xhr","method","action","withCredentials","headers","data","file","files","name","onError","onProgress","onSuccess","innerFiles","xhr2","XMLHttpRequest","formData","FormData","sendData","Object","keys","forEach","key","append","f","raw","open","setRequestHeader","onerror","event","upload","onprogress","percent","total","Math","round","loaded","onload","response","isFail","status","text","responseText","JSON","parse","e","send"],"mappings":"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"}
@@ -12,7 +12,9 @@
12
12
  /* Document
13
13
  ========================================================================== */
14
14
 
15
- [class^='t-'] {
15
+ *,
16
+ *::before,
17
+ *::after {
16
18
  box-sizing: border-box;
17
19
  }
18
20
 
@@ -0,0 +1,27 @@
1
+ @import "../../base.less";
2
+
3
+ @import "./_var.less";
4
+
5
+ .@{prefix}-space {
6
+ display: inline-flex;
7
+
8
+ &-align-start {
9
+ align-items: flex-start;
10
+ }
11
+
12
+ &-align-end {
13
+ align-items: flex-end;
14
+ }
15
+
16
+ &-align-baseline {
17
+ align-items: baseline;
18
+ }
19
+
20
+ &-align-center {
21
+ align-items: center;
22
+ }
23
+
24
+ &-vertical {
25
+ flex-direction: column;
26
+ }
27
+ }
@@ -1,5 +1,5 @@
1
- .tdesign-demo-block--swiper-new {
2
- width: 800px;
1
+ .tdesign-demo-block--swiper {
2
+ // width: 800px;
3
3
 
4
4
  h3 {
5
5
  margin: 10px 0;
@@ -114,11 +114,10 @@ import '../popup/defaultProps.js';
114
114
  import '../popup/style/index.js';
115
115
  import '../popup/type.js';
116
116
  import '../select-input/useSingle.js';
117
- import '../_chunks/dep-2dcbb9b7.js';
117
+ import '../_chunks/dep-85b223d3.js';
118
118
  import '../_chunks/dep-e9e8b058.js';
119
119
  import '../_chunks/dep-a70aa015.js';
120
- import '../_chunks/dep-f8eff6be.js';
121
- import '../_chunks/dep-5bfc1a42.js';
120
+ import '../_chunks/dep-e97e29d5.js';
122
121
  import '../_chunks/dep-ea16aa66.js';
123
122
  import '../input/index.js';
124
123
  import '../input/Input.js';
@@ -148,7 +147,7 @@ import '../select-input/type.js';
148
147
  import '../select/base/PopupContent.js';
149
148
  import '../select/style/index.js';
150
149
  import '../select/type.js';
151
- import '../_chunks/dep-16cb7f3b.js';
150
+ import '../_chunks/dep-aa5a02ef.js';
152
151
  import '../common/Check.js';
153
152
  import '../_util/useCommonClassName.js';
154
153
  import '../radio/defaultProps.js';
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.js","sources":["../../src/calendar/Calendar.tsx"],"sourcesContent":["import React, { useMemo, useState, useCallback, useEffect, forwardRef } from 'react';\nimport dayjs from 'dayjs';\nimport Button from '../button';\nimport Select from '../select';\nimport Radio from '../radio';\nimport CheckTag from '../tag/CheckTag';\nimport noop from '../_util/noop';\nimport usePrefixClass from './hooks/usePrefixClass';\nimport useLayoutEffect from '../_util/useLayoutEffect';\nimport { useLocaleReceiver } from '../locale/LocalReceiver';\nimport { TdCalendarProps, ControllerOptions, CalendarCell, CalendarValue, CalendarController } from './type';\nimport { StyledProps } from '../common';\nimport { blockName, controlSectionSize, minYear, createDateList, createMonthList } from './_util';\nimport CalendarCellComp from './CalendarCellComp';\nimport { calendarDefaultProps } from './defaultProps';\n\nexport interface CalendarProps extends TdCalendarProps, StyledProps {}\n\nexport interface CalendarMethods {\n /**\n * 显示当前月份\\年份\n */\n toCurrent: (value: CalendarValue) => void;\n}\n\n// 组件内部将 controllerConfigData 参数类型转换为 CalendarController 处理,将 bool 时候的值作为 visible 并入其中\ninterface InternalCalendarController extends Required<CalendarController> {\n visible: boolean;\n}\n\nconst getDefaultControllerConfigData = (visible = true): InternalCalendarController => ({\n visible, // 是否显示(全部控件)\n disabled: false, // 是否禁用(全部控件)\n // 模式切换单选组件设置\n mode: {\n visible: true, // 是否显示\n radioGroupProps: {}, // 用于透传props给该radioGroup组件\n },\n // 年份选择框组件相关设置\n year: {\n visible: true, // 是否显示\n selectProps: { popupProps: { overlayStyle: { width: '110px' } } }, // 用于透传props给该select组件\n },\n // 年份选择框组件相关设置\n month: {\n visible: true, // 是否显示(“year”模式下本身是不显示该组件的)\n selectProps: { popupProps: { overlayStyle: { width: '90px' } } }, // 用于透传props给该select组件\n },\n // 隐藏\\显示周末按钮组件相关设置\n weekend: {\n visible: true, // 是否显示\n showWeekendButtonProps: {}, // 用于透传props给显示周末按钮组件\n hideWeekendButtonProps: {}, // 用于透传props给隐藏周末按钮组件\n },\n // “今天\\本月”按钮组件相关设置\n current: {\n visible: true, // 是否显示\n currentDayButtonProps: {}, // 用于透传props给“今天”钮组件(“month”模式下有效)\n currentMonthButtonProps: {}, // 用于透传props给“本月”按钮组件(“year”模式下有效)\n },\n});\n\nconst Calendar: React.FC<CalendarProps> = forwardRef((props, ref: React.MutableRefObject<CalendarMethods>) => {\n const {\n className,\n style,\n mode: modeFromProps,\n value: valueFromProps,\n firstDayOfWeek,\n format,\n range,\n head,\n cell,\n cellAppend,\n week,\n theme,\n controllerConfig,\n isShowWeekendDefault = true,\n preventCellContextmenu = false,\n month: monthProps,\n year: yearProps,\n onControllerChange = noop,\n onCellClick = noop,\n onCellDoubleClick = noop,\n onCellRightClick = noop,\n onMonthChange = noop,\n fillWithZero,\n } = props;\n\n // 组装配置信息\n const controllerConfigData: InternalCalendarController =\n typeof controllerConfig === 'boolean'\n ? getDefaultControllerConfigData(controllerConfig)\n : { ...getDefaultControllerConfigData(), ...controllerConfig };\n\n // 处理 monthProps 与 yearProps 比 controllerConfig 优先的情况\n if (typeof controllerConfig !== 'boolean') {\n if (monthProps) {\n controllerConfigData.month.visible = true;\n }\n if (yearProps) {\n controllerConfigData.year.visible = true;\n }\n }\n\n // 读配置信息\n const {\n visible,\n disabled,\n mode: modeFromConfig,\n year: yearFromConfig,\n month: monthFromConfig,\n weekend,\n current,\n } = controllerConfigData;\n const { visible: visibleForMode = true, radioGroupProps: radioGroupPropsForMode = {} } = modeFromConfig;\n const { visible: visibleForYear = true, selectProps: selectPropsForYear = {} } = yearFromConfig;\n const { visible: visibleForMonth = true, selectProps: selectPropsForMonth = {} } = monthFromConfig;\n const { visible: visibleForWeekendToggle = true, showWeekendButtonProps = {}, hideWeekendButtonProps = {} } = weekend;\n const { visible: visibleForCurrent = true, currentDayButtonProps = {}, currentMonthButtonProps = {} } = current;\n\n const [mode, setMode] = useState<string>('month');\n const [value, setValue] = useState<dayjs.Dayjs>(dayjs(valueFromProps || dayjs().format('YYYY-MM-DD')));\n const [year, setYear] = useState<number>(yearProps ? Number(yearProps) : value.year());\n const [month, setMonth] = useState<number>(monthProps ? Number(monthProps) : parseInt(value.format('M'), 10));\n const [isShowWeekend, setIsShowWeekend] = useState<boolean>(isShowWeekendDefault);\n\n const [local, t] = useLocaleReceiver('calendar');\n\n // 表头数组\n const weekLabelList = t(local.week).split(',');\n const colHeaderList = useMemo(() => {\n if (mode === 'year') return [];\n const weekTextArr = Array.isArray(week) && week.length >= 7 ? week : [...weekLabelList];\n const list = [];\n for (let i = firstDayOfWeek; i <= 7; i++) {\n if (!isShowWeekend && i > 5) {\n break;\n }\n list.push({\n day: i,\n text: weekTextArr[i - 1],\n });\n }\n if (firstDayOfWeek > 1) {\n for (let i = 1; i < firstDayOfWeek; i++) {\n if (!isShowWeekend && i > 5) {\n break;\n }\n list.push({\n day: i,\n text: weekTextArr[i - 1],\n });\n }\n }\n return list;\n }, [mode, firstDayOfWeek, isShowWeekend, week, weekLabelList]);\n\n // 根据传入的 range 参数生成 key 为 from, to 的范围对象\n const rangeFromTo = useMemo(() => {\n if (!range || range.length < 2) {\n return null;\n }\n const [v1, v2] = range;\n if (dayjs(v1).isBefore(dayjs(v2))) {\n return {\n from: v1,\n to: v2,\n };\n }\n return {\n from: v2,\n to: v1,\n };\n }, [range]);\n\n // 构造基础 controllerOptions\n const controllerOptions: ControllerOptions = useMemo(() => {\n const dayJsFilterDate: dayjs.Dayjs = dayjs(`${year}-${month}`);\n const re = {\n filterDate: dayJsFilterDate.toDate(),\n formattedFilterDate: dayJsFilterDate.format(format),\n mode,\n isShowWeekend,\n };\n return re;\n }, [isShowWeekend, mode, year, month, format]);\n\n // 年份、月份 Select 选择框选项\n const [yearSelectList, monthSelectList] = useMemo(() => {\n const isRangeValid = rangeFromTo && rangeFromTo.from && rangeFromTo.to;\n const checkMonthSelectorDisabled = (yearIn: number, monthIn: number): boolean => {\n if (isRangeValid) {\n const beginYear = dayjs(rangeFromTo.from).year();\n const endYear = dayjs(rangeFromTo.to).year();\n if (yearIn === beginYear) {\n const beginMon = parseInt(dayjs(rangeFromTo.from).format('M'), 10);\n return monthIn < beginMon;\n }\n if (yearIn === endYear) {\n const endMon = parseInt(dayjs(rangeFromTo.to).format('M'), 10);\n return monthIn > endMon;\n }\n }\n return false;\n };\n\n const yearList = [];\n const monthList = [];\n // 年列表\n const yearBegin = isRangeValid ? dayjs(rangeFromTo.from).year() : Math.max(minYear, year - 10);\n const yearEnd = isRangeValid ? dayjs(rangeFromTo.to).year() : Math.max(minYear, year + 10);\n for (let i = yearBegin; i <= yearEnd; i++) {\n yearList.push({\n value: i,\n disabled: checkMonthSelectorDisabled(i, month),\n });\n }\n // 月列表\n for (let i = 1; i <= 12; i++) {\n monthList.push({\n value: i,\n disabled: checkMonthSelectorDisabled(year, i),\n });\n }\n return [yearList, monthList];\n }, [rangeFromTo, year, month]);\n\n // mode为 'month' 时,构造日历列表\n const dateList = useMemo<CalendarCell[][]>(\n () => createDateList(year, month, firstDayOfWeek, value, format),\n [year, month, firstDayOfWeek, format, value],\n );\n\n // mode为 'year' 时,构造月历列表\n const monthList = useMemo<CalendarCell[][]>(() => createMonthList(year, value, format), [year, value, format]);\n\n // 将基础的 CalendarCell 与 ControllerOptions 进行合并\n const createCalendarCell = useCallback(\n (cellData: CalendarCell): CalendarCell => ({\n ...cellData,\n ...controllerOptions,\n }),\n [controllerOptions],\n );\n\n const toCurrent = useCallback((valueIn: CalendarValue = null) => {\n const now: dayjs.Dayjs = dayjs(valueIn).isValid() ? dayjs(valueIn) : dayjs(dayjs().format('YYYY-MM-DD'));\n setValue(now);\n setYear(now.year());\n setMonth(parseInt(now.format('M'), 10));\n }, []);\n\n React.useImperativeHandle(ref, () => ({ toCurrent }), [toCurrent]);\n\n // 月份 select change 事件回调\n const handleMonthChange = (newMonth: number) => {\n setMonth(newMonth);\n onMonthChange({ month: String(newMonth), year: String(year) });\n };\n\n // 事件回调处理函数\n const execCellEvent = useCallback(\n (event, calendarCell, handleFunc) => {\n if (handleFunc && typeof handleFunc === 'function') {\n handleFunc({\n cell: createCalendarCell(calendarCell),\n e: event,\n });\n }\n },\n [createCalendarCell],\n );\n\n // 单元格单击\n const clickCell = (event, calendarCell: CalendarCell) => {\n setValue(dayjs(calendarCell.formattedDate));\n execCellEvent(event, calendarCell, onCellClick);\n };\n\n // 单元格双击\n const doubleClickCell = (event, calendarCell: CalendarCell) => {\n execCellEvent(event, calendarCell, onCellDoubleClick);\n };\n\n // 单元格右击\n const rightClickCell = (event, calendarCell: CalendarCell) => {\n if (preventCellContextmenu) event.preventDefault();\n execCellEvent(event, calendarCell, onCellRightClick);\n };\n\n // 监听 current 参数\n useEffect(() => {\n toCurrent(valueFromProps);\n }, [valueFromProps, toCurrent]);\n\n // 监听 month 参数\n useEffect(() => {\n if (monthProps) {\n setMonth(Number(monthProps));\n }\n }, [monthProps]);\n\n // 监听 year 参数\n useEffect(() => {\n if (yearProps) {\n setYear(Number(yearProps));\n }\n }, [yearProps]);\n\n // 监听 mode 参数\n useEffect(() => {\n setMode(modeFromProps);\n }, [modeFromProps]);\n\n // 监听 isShowWeekend 参数\n useEffect(() => {\n setIsShowWeekend(isShowWeekendDefault);\n }, [isShowWeekendDefault]);\n\n // 右上角控件组选中值有变化的时候触发\n useLayoutEffect(() => {\n onControllerChange(controllerOptions);\n }, [controllerOptions, onControllerChange]);\n\n const prefixCls = usePrefixClass();\n const currentDate = dayjs().format('YYYY-MM-DD');\n const currentMonth = dayjs().format('YYYY-MM');\n\n return (\n <div className={prefixCls(blockName, [blockName, '', theme]).concat(' ', className)} style={style}>\n {/* 操作部分 */}\n {visible && (\n <div className={prefixCls([blockName, 'control'])}>\n <div className={prefixCls([blockName, 'title'])}>\n {(() => {\n if (head && typeof head === 'function') return head(controllerOptions);\n if (head && typeof head !== 'function') return head;\n })()}\n </div>\n <div className={prefixCls([blockName, 'control-section'])}>\n {/* 年份选择框 */}\n <div className={prefixCls([blockName, 'control-section-cell'])}>\n {visibleForYear && (\n <Select\n autoWidth={true}\n size={controlSectionSize}\n value={year}\n disabled={disabled}\n options={yearSelectList.map((item) => ({\n label: t(local.yearSelection, { year: item.value }),\n value: item.value,\n disabled: item.disabled,\n }))}\n onChange={(selectYear) => setYear(selectYear as number)}\n {...selectPropsForYear}\n />\n )}\n </div>\n {/* 月份选择框 */}\n <div className={prefixCls([blockName, 'control-section-cell'])}>\n {visibleForMonth && mode === 'month' && (\n <Select\n autoWidth={true}\n size={controlSectionSize}\n value={month}\n options={monthSelectList.map((item) => ({\n label: t(local.monthSelection, { month: item.value }),\n value: item.value,\n disabled: item.disabled,\n }))}\n disabled={disabled}\n onChange={handleMonthChange}\n {...selectPropsForMonth}\n />\n )}\n </div>\n </div>\n {/* 模式切换 */}\n <div className={prefixCls([blockName, 'control-section'])} style={{ height: 'auto' }}>\n {visibleForMode && (\n <Radio.Group\n variant=\"default-filled\"\n size={controlSectionSize}\n value={mode}\n disabled={disabled}\n onChange={(value) => setMode(value as string)}\n {...radioGroupPropsForMode}\n >\n <Radio.Button value=\"month\">{t(local.monthRadio)}</Radio.Button>\n <Radio.Button value=\"year\">{t(local.yearRadio)}</Radio.Button>\n </Radio.Group>\n )}\n </div>\n {/* 周末隐藏显示切换 */}\n {mode === 'month' && theme === 'full' && visibleForWeekendToggle && (\n <div className={prefixCls([blockName, 'control-section'])}>\n <CheckTag\n className=\"t-calendar__control-tag\"\n checked={!isShowWeekend}\n disabled={disabled}\n size={controlSectionSize}\n onClick={() => {\n setIsShowWeekend(!isShowWeekend);\n }}\n {...(isShowWeekend ? hideWeekendButtonProps : showWeekendButtonProps)}\n >\n {`${isShowWeekend ? t(local.hideWeekend) : t(local.showWeekend)}`}\n </CheckTag>\n </div>\n )}\n {/* 回到当前按钮 */}\n {theme === 'full' && visibleForCurrent && (\n <div className={prefixCls([blockName, 'control-section'])}>\n <Button\n size={controlSectionSize}\n disabled={disabled}\n onClick={() => {\n toCurrent();\n }}\n {...(mode === 'year' ? currentMonthButtonProps : currentDayButtonProps)}\n >\n {mode === 'year' ? t(local.thisMonth) : t(local.today)}\n </Button>\n </div>\n )}\n </div>\n )}\n {/* 主体部分 */}\n <div className={prefixCls([blockName, 'panel'], [blockName, `panel--${mode}`])}>\n <table className={prefixCls([blockName, 'table'])}>\n {/* 表头部分 */}\n {colHeaderList.length > 0 && (\n <thead className={prefixCls([blockName, 'table-head'])}>\n <tr className={prefixCls([blockName, 'table-head-row'])}>\n {colHeaderList.map((item) => (\n <th key={item.day} className={prefixCls([blockName, 'table-head-cell'])}>\n {week && typeof week === 'function' ? week({ day: item.day }) : item.text}\n </th>\n ))}\n </tr>\n </thead>\n )}\n {/* month 模式,输出日期 */}\n {mode === 'month' && (\n <tbody className={prefixCls([blockName, 'table-body'])}>\n {dateList.map((dateRow, dateRowIndex) => (\n <tr key={String(dateRowIndex)} className={prefixCls([blockName, 'table-body-row'])}>\n {dateRow.map((dateCell, dateCellIndex) => {\n // 若不显示周末,隐藏 day 为 6 或 7 的元素\n if (!isShowWeekend && [6, 7].indexOf(dateCell.day) >= 0) return null;\n // 其余日期正常显示\n const isNow = dateCell.formattedDate === currentDate;\n return (\n <CalendarCellComp\n key={dateCellIndex}\n mode={mode}\n theme={theme}\n cell={cell}\n cellData={dateCell}\n cellAppend={cellAppend}\n fillWithZero={fillWithZero}\n isCurrent={dateCell.isCurrent}\n isNow={isNow}\n isDisabled={dateCell.belongTo !== 0}\n createCalendarCell={createCalendarCell}\n onCellClick={(event) => clickCell(event, dateCell)}\n onCellDoubleClick={(event) => doubleClickCell(event, dateCell)}\n onCellRightClick={(event) => rightClickCell(event, dateCell)}\n />\n );\n })}\n </tr>\n ))}\n </tbody>\n )}\n {/* year 模式,输出月份 */}\n {mode === 'year' && (\n <tbody className={prefixCls([blockName, 'table-body'])}>\n {monthList.map((monthRow, monthRowIndex) => (\n <tr key={String(monthRowIndex)} className={prefixCls([blockName, 'table-body-row'])}>\n {monthRow.map((monthCell, monthCellIndex) => {\n const isNow = monthCell.formattedDate.startsWith(currentMonth);\n return (\n <CalendarCellComp\n key={monthCellIndex}\n mode={mode}\n theme={theme}\n cell={cell}\n cellData={monthCell}\n cellAppend={cellAppend}\n fillWithZero={fillWithZero}\n isCurrent={monthCell.isCurrent}\n isNow={isNow}\n createCalendarCell={createCalendarCell}\n onCellClick={(event) => clickCell(event, monthCell)}\n onCellDoubleClick={(event) => doubleClickCell(event, monthCell)}\n onCellRightClick={(event) => rightClickCell(event, monthCell)}\n />\n );\n })}\n </tr>\n ))}\n </tbody>\n )}\n </table>\n </div>\n </div>\n );\n});\n\nCalendar.displayName = 'Calendar';\nCalendar.defaultProps = calendarDefaultProps;\n\nexport default Calendar;\n"],"names":["getDefaultControllerConfigData","visible","disabled","mode","radioGroupProps","year","selectProps","popupProps","overlayStyle","width","month","weekend","showWeekendButtonProps","hideWeekendButtonProps","current","currentDayButtonProps","currentMonthButtonProps","Calendar","forwardRef","props","ref","className","style","modeFromProps","valueFromProps","value","firstDayOfWeek","format","range","head","cell","cellAppend","week","theme","controllerConfig","isShowWeekendDefault","preventCellContextmenu","monthProps","yearProps","onControllerChange","noop","onCellClick","onCellDoubleClick","onCellRightClick","onMonthChange","fillWithZero","controllerConfigData","modeFromConfig","yearFromConfig","monthFromConfig","visibleForMode","radioGroupPropsForMode","visibleForYear","selectPropsForYear","visibleForMonth","selectPropsForMonth","visibleForWeekendToggle","visibleForCurrent","useState","setMode","dayjs","setValue","Number","setYear","parseInt","setMonth","isShowWeekend","setIsShowWeekend","useLocaleReceiver","local","t","weekLabelList","split","colHeaderList","useMemo","weekTextArr","Array","isArray","length","list","i","push","day","text","rangeFromTo","v1","v2","isBefore","from","to","controllerOptions","dayJsFilterDate","re","filterDate","toDate","formattedFilterDate","isRangeValid","checkMonthSelectorDisabled","yearIn","monthIn","beginYear","endYear","beginMon","endMon","yearList","monthList2","yearBegin","Math","max","minYear","yearEnd","yearSelectList","monthSelectList","dateList","createDateList","monthList","createMonthList","createCalendarCell","useCallback","cellData","toCurrent","valueIn","now","isValid","React","useImperativeHandle","handleMonthChange","newMonth","String","execCellEvent","event","calendarCell","handleFunc","e","clickCell","formattedDate","doubleClickCell","rightClickCell","preventDefault","useEffect","useLayoutEffect","prefixCls","usePrefixClass","currentDate","currentMonth","createElement","blockName","concat","Select","autoWidth","size","controlSectionSize","options","map","item","label","yearSelection","onChange","selectYear","monthSelection","height","Radio","Group","variant","value2","Button","monthRadio","yearRadio","CheckTag","checked","onClick","hideWeekend","showWeekend","thisMonth","today","key","dateRow","dateRowIndex","dateCell","dateCellIndex","indexOf","isNow","CalendarCellComp","isCurrent","isDisabled","belongTo","monthRow","monthRowIndex","monthCell","monthCellIndex","startsWith","displayName","defaultProps","calendarDefaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"Calendar.js","sources":["../../src/calendar/Calendar.tsx"],"sourcesContent":["import React, { useMemo, useState, useCallback, useEffect, forwardRef } from 'react';\nimport dayjs from 'dayjs';\nimport Button from '../button';\nimport Select from '../select';\nimport Radio from '../radio';\nimport CheckTag from '../tag/CheckTag';\nimport noop from '../_util/noop';\nimport usePrefixClass from './hooks/usePrefixClass';\nimport useLayoutEffect from '../_util/useLayoutEffect';\nimport { useLocaleReceiver } from '../locale/LocalReceiver';\nimport { TdCalendarProps, ControllerOptions, CalendarCell, CalendarValue, CalendarController } from './type';\nimport { StyledProps } from '../common';\nimport { blockName, controlSectionSize, minYear, createDateList, createMonthList } from './_util';\nimport CalendarCellComp from './CalendarCellComp';\nimport { calendarDefaultProps } from './defaultProps';\n\nexport interface CalendarProps extends TdCalendarProps, StyledProps {}\n\nexport interface CalendarMethods {\n /**\n * 显示当前月份\\年份\n */\n toCurrent: (value: CalendarValue) => void;\n}\n\n// 组件内部将 controllerConfigData 参数类型转换为 CalendarController 处理,将 bool 时候的值作为 visible 并入其中\ninterface InternalCalendarController extends Required<CalendarController> {\n visible: boolean;\n}\n\nconst getDefaultControllerConfigData = (visible = true): InternalCalendarController => ({\n visible, // 是否显示(全部控件)\n disabled: false, // 是否禁用(全部控件)\n // 模式切换单选组件设置\n mode: {\n visible: true, // 是否显示\n radioGroupProps: {}, // 用于透传props给该radioGroup组件\n },\n // 年份选择框组件相关设置\n year: {\n visible: true, // 是否显示\n selectProps: { popupProps: { overlayStyle: { width: '110px' } } }, // 用于透传props给该select组件\n },\n // 年份选择框组件相关设置\n month: {\n visible: true, // 是否显示(“year”模式下本身是不显示该组件的)\n selectProps: { popupProps: { overlayStyle: { width: '90px' } } }, // 用于透传props给该select组件\n },\n // 隐藏\\显示周末按钮组件相关设置\n weekend: {\n visible: true, // 是否显示\n showWeekendButtonProps: {}, // 用于透传props给显示周末按钮组件\n hideWeekendButtonProps: {}, // 用于透传props给隐藏周末按钮组件\n },\n // “今天\\本月”按钮组件相关设置\n current: {\n visible: true, // 是否显示\n currentDayButtonProps: {}, // 用于透传props给“今天”钮组件(“month”模式下有效)\n currentMonthButtonProps: {}, // 用于透传props给“本月”按钮组件(“year”模式下有效)\n },\n});\n\nconst Calendar: React.FC<CalendarProps> = forwardRef((props, ref: React.MutableRefObject<CalendarMethods>) => {\n const {\n className,\n style,\n mode: modeFromProps,\n value: valueFromProps,\n firstDayOfWeek,\n format,\n range,\n head,\n cell,\n cellAppend,\n week,\n theme,\n controllerConfig,\n isShowWeekendDefault = true,\n preventCellContextmenu = false,\n month: monthProps,\n year: yearProps,\n onControllerChange = noop,\n onCellClick = noop,\n onCellDoubleClick = noop,\n onCellRightClick = noop,\n onMonthChange = noop,\n fillWithZero,\n } = props;\n\n // 组装配置信息\n const controllerConfigData: InternalCalendarController =\n typeof controllerConfig === 'boolean'\n ? getDefaultControllerConfigData(controllerConfig)\n : { ...getDefaultControllerConfigData(), ...controllerConfig };\n\n // 处理 monthProps 与 yearProps 比 controllerConfig 优先的情况\n if (typeof controllerConfig !== 'boolean') {\n if (monthProps) {\n controllerConfigData.month.visible = true;\n }\n if (yearProps) {\n controllerConfigData.year.visible = true;\n }\n }\n\n // 读配置信息\n const {\n visible,\n disabled,\n mode: modeFromConfig,\n year: yearFromConfig,\n month: monthFromConfig,\n weekend,\n current,\n } = controllerConfigData;\n const { visible: visibleForMode = true, radioGroupProps: radioGroupPropsForMode = {} } = modeFromConfig;\n const { visible: visibleForYear = true, selectProps: selectPropsForYear = {} } = yearFromConfig;\n const { visible: visibleForMonth = true, selectProps: selectPropsForMonth = {} } = monthFromConfig;\n const { visible: visibleForWeekendToggle = true, showWeekendButtonProps = {}, hideWeekendButtonProps = {} } = weekend;\n const { visible: visibleForCurrent = true, currentDayButtonProps = {}, currentMonthButtonProps = {} } = current;\n\n const [mode, setMode] = useState<string>('month');\n const [value, setValue] = useState<dayjs.Dayjs>(dayjs(valueFromProps || dayjs().format('YYYY-MM-DD')));\n const [year, setYear] = useState<number>(yearProps ? Number(yearProps) : value.year());\n const [month, setMonth] = useState<number>(monthProps ? Number(monthProps) : parseInt(value.format('M'), 10));\n const [isShowWeekend, setIsShowWeekend] = useState<boolean>(isShowWeekendDefault);\n\n const [local, t] = useLocaleReceiver('calendar');\n\n // 表头数组\n const weekLabelList = t(local.week).split(',');\n const colHeaderList = useMemo(() => {\n if (mode === 'year') return [];\n const weekTextArr = Array.isArray(week) && week.length >= 7 ? week : [...weekLabelList];\n const list = [];\n for (let i = firstDayOfWeek; i <= 7; i++) {\n if (!isShowWeekend && i > 5) {\n break;\n }\n list.push({\n day: i,\n text: weekTextArr[i - 1],\n });\n }\n if (firstDayOfWeek > 1) {\n for (let i = 1; i < firstDayOfWeek; i++) {\n if (!isShowWeekend && i > 5) {\n break;\n }\n list.push({\n day: i,\n text: weekTextArr[i - 1],\n });\n }\n }\n return list;\n }, [mode, firstDayOfWeek, isShowWeekend, week, weekLabelList]);\n\n // 根据传入的 range 参数生成 key 为 from, to 的范围对象\n const rangeFromTo = useMemo(() => {\n if (!range || range.length < 2) {\n return null;\n }\n const [v1, v2] = range;\n if (dayjs(v1).isBefore(dayjs(v2))) {\n return {\n from: v1,\n to: v2,\n };\n }\n return {\n from: v2,\n to: v1,\n };\n }, [range]);\n\n // 构造基础 controllerOptions\n const controllerOptions: ControllerOptions = useMemo(() => {\n const dayJsFilterDate: dayjs.Dayjs = dayjs(`${year}-${month}`);\n const re = {\n filterDate: dayJsFilterDate.toDate(),\n formattedFilterDate: dayJsFilterDate.format(format),\n mode,\n isShowWeekend,\n };\n return re;\n }, [isShowWeekend, mode, year, month, format]);\n\n // 年份、月份 Select 选择框选项\n const [yearSelectList, monthSelectList] = useMemo(() => {\n const isRangeValid = rangeFromTo && rangeFromTo.from && rangeFromTo.to;\n const checkMonthSelectorDisabled = (yearIn: number, monthIn: number): boolean => {\n if (isRangeValid) {\n const beginYear = dayjs(rangeFromTo.from).year();\n const endYear = dayjs(rangeFromTo.to).year();\n if (yearIn === beginYear) {\n const beginMon = parseInt(dayjs(rangeFromTo.from).format('M'), 10);\n return monthIn < beginMon;\n }\n if (yearIn === endYear) {\n const endMon = parseInt(dayjs(rangeFromTo.to).format('M'), 10);\n return monthIn > endMon;\n }\n }\n return false;\n };\n\n const yearList = [];\n const monthList = [];\n // 年列表\n const yearBegin = isRangeValid ? dayjs(rangeFromTo.from).year() : Math.max(minYear, year - 10);\n const yearEnd = isRangeValid ? dayjs(rangeFromTo.to).year() : Math.max(minYear, year + 10);\n for (let i = yearBegin; i <= yearEnd; i++) {\n yearList.push({\n value: i,\n disabled: checkMonthSelectorDisabled(i, month),\n });\n }\n // 月列表\n for (let i = 1; i <= 12; i++) {\n monthList.push({\n value: i,\n disabled: checkMonthSelectorDisabled(year, i),\n });\n }\n return [yearList, monthList];\n }, [rangeFromTo, year, month]);\n\n // mode为 'month' 时,构造日历列表\n const dateList = useMemo<CalendarCell[][]>(\n () => createDateList(year, month, firstDayOfWeek, value, format),\n [year, month, firstDayOfWeek, format, value],\n );\n\n // mode为 'year' 时,构造月历列表\n const monthList = useMemo<CalendarCell[][]>(() => createMonthList(year, value, format), [year, value, format]);\n\n // 将基础的 CalendarCell 与 ControllerOptions 进行合并\n const createCalendarCell = useCallback(\n (cellData: CalendarCell): CalendarCell => ({\n ...cellData,\n ...controllerOptions,\n }),\n [controllerOptions],\n );\n\n const toCurrent = useCallback((valueIn: CalendarValue = null) => {\n const now: dayjs.Dayjs = dayjs(valueIn).isValid() ? dayjs(valueIn) : dayjs(dayjs().format('YYYY-MM-DD'));\n setValue(now);\n setYear(now.year());\n setMonth(parseInt(now.format('M'), 10));\n }, []);\n\n React.useImperativeHandle(ref, () => ({ toCurrent }), [toCurrent]);\n\n // 月份 select change 事件回调\n const handleMonthChange = (newMonth: number) => {\n setMonth(newMonth);\n onMonthChange({ month: String(newMonth), year: String(year) });\n };\n\n // 事件回调处理函数\n const execCellEvent = useCallback(\n (event, calendarCell, handleFunc) => {\n if (handleFunc && typeof handleFunc === 'function') {\n handleFunc({\n cell: createCalendarCell(calendarCell),\n e: event,\n });\n }\n },\n [createCalendarCell],\n );\n\n // 单元格单击\n const clickCell = (event, calendarCell: CalendarCell) => {\n setValue(dayjs(calendarCell.formattedDate));\n execCellEvent(event, calendarCell, onCellClick);\n };\n\n // 单元格双击\n const doubleClickCell = (event, calendarCell: CalendarCell) => {\n execCellEvent(event, calendarCell, onCellDoubleClick);\n };\n\n // 单元格右击\n const rightClickCell = (event, calendarCell: CalendarCell) => {\n if (preventCellContextmenu) event.preventDefault();\n execCellEvent(event, calendarCell, onCellRightClick);\n };\n\n // 监听 current 参数\n useEffect(() => {\n toCurrent(valueFromProps);\n }, [valueFromProps, toCurrent]);\n\n // 监听 month 参数\n useEffect(() => {\n if (monthProps) {\n setMonth(Number(monthProps));\n }\n }, [monthProps]);\n\n // 监听 year 参数\n useEffect(() => {\n if (yearProps) {\n setYear(Number(yearProps));\n }\n }, [yearProps]);\n\n // 监听 mode 参数\n useEffect(() => {\n setMode(modeFromProps);\n }, [modeFromProps]);\n\n // 监听 isShowWeekend 参数\n useEffect(() => {\n setIsShowWeekend(isShowWeekendDefault);\n }, [isShowWeekendDefault]);\n\n // 右上角控件组选中值有变化的时候触发\n useLayoutEffect(() => {\n onControllerChange(controllerOptions);\n }, [controllerOptions, onControllerChange]);\n\n const prefixCls = usePrefixClass();\n const currentDate = dayjs().format('YYYY-MM-DD');\n const currentMonth = dayjs().format('YYYY-MM');\n\n return (\n <div className={prefixCls(blockName, [blockName, '', theme]).concat(' ', className)} style={style}>\n {/* 操作部分 */}\n {visible && (\n <div className={prefixCls([blockName, 'control'])}>\n <div className={prefixCls([blockName, 'title'])}>\n {(() => {\n if (head && typeof head === 'function') return head(controllerOptions);\n if (head && typeof head !== 'function') return head;\n })()}\n </div>\n <div className={prefixCls([blockName, 'control-section'])}>\n {/* 年份选择框 */}\n <div className={prefixCls([blockName, 'control-section-cell'])}>\n {visibleForYear && (\n <Select\n autoWidth={true}\n size={controlSectionSize}\n value={year}\n disabled={disabled}\n options={yearSelectList.map((item) => ({\n label: t(local.yearSelection, { year: item.value }),\n value: item.value,\n disabled: item.disabled,\n }))}\n onChange={(selectYear) => setYear(selectYear as number)}\n {...selectPropsForYear}\n />\n )}\n </div>\n {/* 月份选择框 */}\n <div className={prefixCls([blockName, 'control-section-cell'])}>\n {visibleForMonth && mode === 'month' && (\n <Select\n autoWidth={true}\n size={controlSectionSize}\n value={month}\n options={monthSelectList.map((item) => ({\n label: t(local.monthSelection, { month: item.value }),\n value: item.value,\n disabled: item.disabled,\n }))}\n disabled={disabled}\n onChange={handleMonthChange}\n {...selectPropsForMonth}\n />\n )}\n </div>\n </div>\n {/* 模式切换 */}\n <div className={prefixCls([blockName, 'control-section'])} style={{ height: 'auto' }}>\n {visibleForMode && (\n <Radio.Group\n variant=\"default-filled\"\n size={controlSectionSize}\n value={mode}\n disabled={disabled}\n onChange={(value) => setMode(value as string)}\n {...radioGroupPropsForMode}\n >\n <Radio.Button value=\"month\">{t(local.monthRadio)}</Radio.Button>\n <Radio.Button value=\"year\">{t(local.yearRadio)}</Radio.Button>\n </Radio.Group>\n )}\n </div>\n {/* 周末隐藏显示切换 */}\n {mode === 'month' && theme === 'full' && visibleForWeekendToggle && (\n <div className={prefixCls([blockName, 'control-section'])}>\n <CheckTag\n className=\"t-calendar__control-tag\"\n checked={!isShowWeekend}\n disabled={disabled}\n size={controlSectionSize}\n onClick={() => {\n setIsShowWeekend(!isShowWeekend);\n }}\n {...(isShowWeekend ? hideWeekendButtonProps : showWeekendButtonProps)}\n >\n {`${isShowWeekend ? t(local.hideWeekend) : t(local.showWeekend)}`}\n </CheckTag>\n </div>\n )}\n {/* 回到当前按钮 */}\n {theme === 'full' && visibleForCurrent && (\n <div className={prefixCls([blockName, 'control-section'])}>\n <Button\n size={controlSectionSize}\n disabled={disabled}\n onClick={() => {\n toCurrent();\n }}\n {...(mode === 'year' ? currentMonthButtonProps : currentDayButtonProps)}\n >\n {mode === 'year' ? t(local.thisMonth) : t(local.today)}\n </Button>\n </div>\n )}\n </div>\n )}\n {/* 主体部分 */}\n <div className={prefixCls([blockName, 'panel'], [blockName, `panel--${mode}`])}>\n <table className={prefixCls([blockName, 'table'])}>\n {/* 表头部分 */}\n {colHeaderList.length > 0 && (\n <thead className={prefixCls([blockName, 'table-head'])}>\n <tr className={prefixCls([blockName, 'table-head-row'])}>\n {colHeaderList.map((item) => (\n <th key={item.day} className={prefixCls([blockName, 'table-head-cell'])}>\n {week && typeof week === 'function' ? week({ day: item.day }) : item.text}\n </th>\n ))}\n </tr>\n </thead>\n )}\n {/* month 模式,输出日期 */}\n {mode === 'month' && (\n <tbody className={prefixCls([blockName, 'table-body'])}>\n {dateList.map((dateRow, dateRowIndex) => (\n <tr key={String(dateRowIndex)} className={prefixCls([blockName, 'table-body-row'])}>\n {dateRow.map((dateCell, dateCellIndex) => {\n // 若不显示周末,隐藏 day 为 6 或 7 的元素\n if (!isShowWeekend && [6, 7].indexOf(dateCell.day) >= 0) return null;\n // 其余日期正常显示\n const isNow = dateCell.formattedDate === currentDate;\n return (\n <CalendarCellComp\n key={dateCellIndex}\n mode={mode}\n theme={theme}\n cell={cell}\n cellData={dateCell}\n cellAppend={cellAppend}\n fillWithZero={fillWithZero}\n isCurrent={dateCell.isCurrent}\n isNow={isNow}\n isDisabled={dateCell.belongTo !== 0}\n createCalendarCell={createCalendarCell}\n onCellClick={(event) => clickCell(event, dateCell)}\n onCellDoubleClick={(event) => doubleClickCell(event, dateCell)}\n onCellRightClick={(event) => rightClickCell(event, dateCell)}\n />\n );\n })}\n </tr>\n ))}\n </tbody>\n )}\n {/* year 模式,输出月份 */}\n {mode === 'year' && (\n <tbody className={prefixCls([blockName, 'table-body'])}>\n {monthList.map((monthRow, monthRowIndex) => (\n <tr key={String(monthRowIndex)} className={prefixCls([blockName, 'table-body-row'])}>\n {monthRow.map((monthCell, monthCellIndex) => {\n const isNow = monthCell.formattedDate.startsWith(currentMonth);\n return (\n <CalendarCellComp\n key={monthCellIndex}\n mode={mode}\n theme={theme}\n cell={cell}\n cellData={monthCell}\n cellAppend={cellAppend}\n fillWithZero={fillWithZero}\n isCurrent={monthCell.isCurrent}\n isNow={isNow}\n createCalendarCell={createCalendarCell}\n onCellClick={(event) => clickCell(event, monthCell)}\n onCellDoubleClick={(event) => doubleClickCell(event, monthCell)}\n onCellRightClick={(event) => rightClickCell(event, monthCell)}\n />\n );\n })}\n </tr>\n ))}\n </tbody>\n )}\n </table>\n </div>\n </div>\n );\n});\n\nCalendar.displayName = 'Calendar';\nCalendar.defaultProps = calendarDefaultProps;\n\nexport default Calendar;\n"],"names":["getDefaultControllerConfigData","visible","disabled","mode","radioGroupProps","year","selectProps","popupProps","overlayStyle","width","month","weekend","showWeekendButtonProps","hideWeekendButtonProps","current","currentDayButtonProps","currentMonthButtonProps","Calendar","forwardRef","props","ref","className","style","modeFromProps","valueFromProps","value","firstDayOfWeek","format","range","head","cell","cellAppend","week","theme","controllerConfig","isShowWeekendDefault","preventCellContextmenu","monthProps","yearProps","onControllerChange","noop","onCellClick","onCellDoubleClick","onCellRightClick","onMonthChange","fillWithZero","controllerConfigData","modeFromConfig","yearFromConfig","monthFromConfig","visibleForMode","radioGroupPropsForMode","visibleForYear","selectPropsForYear","visibleForMonth","selectPropsForMonth","visibleForWeekendToggle","visibleForCurrent","useState","setMode","dayjs","setValue","Number","setYear","parseInt","setMonth","isShowWeekend","setIsShowWeekend","useLocaleReceiver","local","t","weekLabelList","split","colHeaderList","useMemo","weekTextArr","Array","isArray","length","list","i","push","day","text","rangeFromTo","v1","v2","isBefore","from","to","controllerOptions","dayJsFilterDate","re","filterDate","toDate","formattedFilterDate","isRangeValid","checkMonthSelectorDisabled","yearIn","monthIn","beginYear","endYear","beginMon","endMon","yearList","monthList2","yearBegin","Math","max","minYear","yearEnd","yearSelectList","monthSelectList","dateList","createDateList","monthList","createMonthList","createCalendarCell","useCallback","cellData","toCurrent","valueIn","now","isValid","React","useImperativeHandle","handleMonthChange","newMonth","String","execCellEvent","event","calendarCell","handleFunc","e","clickCell","formattedDate","doubleClickCell","rightClickCell","preventDefault","useEffect","useLayoutEffect","prefixCls","usePrefixClass","currentDate","currentMonth","createElement","blockName","concat","Select","autoWidth","size","controlSectionSize","options","map","item","label","yearSelection","onChange","selectYear","monthSelection","height","Radio","Group","variant","value2","Button","monthRadio","yearRadio","CheckTag","checked","onClick","hideWeekend","showWeekend","thisMonth","today","key","dateRow","dateRowIndex","dateCell","dateCellIndex","indexOf","isNow","CalendarCellComp","isCurrent","isDisabled","belongTo","monthRow","monthRowIndex","monthCell","monthCellIndex","startsWith","displayName","defaultProps","calendarDefaultProps"],"mappings":"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"}
@@ -113,11 +113,10 @@ import '../popup/defaultProps.js';
113
113
  import '../popup/style/index.js';
114
114
  import '../popup/type.js';
115
115
  import '../select-input/useSingle.js';
116
- import '../_chunks/dep-2dcbb9b7.js';
116
+ import '../_chunks/dep-85b223d3.js';
117
117
  import '../_chunks/dep-e9e8b058.js';
118
118
  import '../_chunks/dep-a70aa015.js';
119
- import '../_chunks/dep-f8eff6be.js';
120
- import '../_chunks/dep-5bfc1a42.js';
119
+ import '../_chunks/dep-e97e29d5.js';
121
120
  import '../_chunks/dep-ea16aa66.js';
122
121
  import '../input/index.js';
123
122
  import '../input/Input.js';
@@ -146,7 +145,7 @@ import '../select/base/PopupContent.js';
146
145
  import '../select/style/index.js';
147
146
  import '../select/type.js';
148
147
  import '../radio/index.js';
149
- import '../_chunks/dep-16cb7f3b.js';
148
+ import '../_chunks/dep-aa5a02ef.js';
150
149
  import '../common/Check.js';
151
150
  import '../_util/useCommonClassName.js';
152
151
  import '../radio/defaultProps.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/calendar/index.ts"],"sourcesContent":["import _Calendar from './Calendar';\n\nimport './style/index.js';\n\nexport type { CalendarProps, CalendarMethods } from './Calendar';\nexport * from './type';\n\nexport const Calendar = _Calendar;\nexport default Calendar;\n"],"names":["Calendar","_Calendar"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,IAAMA,QAAQ,GAAGC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/calendar/index.ts"],"sourcesContent":["import _Calendar from './Calendar';\n\nimport './style/index.js';\n\nexport type { CalendarProps, CalendarMethods } from './Calendar';\nexport * from './type';\n\nexport const Calendar = _Calendar;\nexport default Calendar;\n"],"names":["Calendar","_Calendar"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,IAAMA,QAAQ,GAAGC;;;;"}
@@ -120,20 +120,19 @@ import './utils/inputContent.js';
120
120
  import '../_chunks/dep-49589536.js';
121
121
  import '../_chunks/dep-7de6005d.js';
122
122
  import '../_chunks/dep-92fcb75a.js';
123
- import '../_chunks/dep-daaa76c2.js';
123
+ import '../_chunks/dep-7cc0a2e2.js';
124
124
  import '../_chunks/dep-f85af1d3.js';
125
125
  import '../_chunks/dep-5e3c0d2e.js';
126
- import '../_chunks/dep-5bfc1a42.js';
126
+ import '../_chunks/dep-e97e29d5.js';
127
127
  import '../_chunks/dep-ea16aa66.js';
128
128
  import '../_common/js/tree/tree-node.js';
129
129
  import '../_chunks/dep-3142a411.js';
130
130
  import '../_chunks/dep-495a8e2f.js';
131
131
  import '../_chunks/dep-972fd346.js';
132
132
  import '../_common/js/tree/tree-node-model.js';
133
- import '../_chunks/dep-2dcbb9b7.js';
133
+ import '../_chunks/dep-85b223d3.js';
134
134
  import '../_chunks/dep-e9e8b058.js';
135
135
  import '../_chunks/dep-a70aa015.js';
136
- import '../_chunks/dep-f8eff6be.js';
137
136
  import '../_common/js/log/log.js';
138
137
 
139
138
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }