linkmore-design 1.0.51 → 1.0.55

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 (325) hide show
  1. package/dist/{Notification → Affix}/demos/basic.d.ts +0 -0
  2. package/dist/Affix/index.d.ts +54 -0
  3. package/dist/{Notification → Affix}/style/index.d.ts +0 -0
  4. package/dist/Affix/utils.d.ts +15 -0
  5. package/dist/Alert/ErrorBoundary.d.ts +22 -0
  6. package/dist/{Notification/demos/button.d.ts → Alert/demos/basic.d.ts} +0 -0
  7. package/dist/{Notification/demos/icon.d.ts → Alert/demos/visible.d.ts} +0 -0
  8. package/dist/Alert/index.d.ts +41 -0
  9. package/dist/Alert/style/index.d.ts +1 -0
  10. package/dist/Button/style/index.d.ts +1 -1
  11. package/dist/CardTable/fns/index.d.ts +3 -3
  12. package/dist/CardTable/{toolbar → pager}/TablePagination.d.ts +0 -0
  13. package/dist/CardTable/pager/index.d.ts +3 -0
  14. package/dist/IconFont/index.d.ts +1 -1
  15. package/dist/LmEditTable/style/index.d.ts +1 -1
  16. package/dist/LmFilter/LmFilter.d.ts +3 -0
  17. package/dist/LmFilter/baseFilter/fuzzySearch.d.ts +4 -0
  18. package/dist/LmFilter/baseFilter/index.d.ts +3 -0
  19. package/dist/LmFilter/clearFilter/index.d.ts +3 -0
  20. package/dist/LmFilter/complexFilter/index.d.ts +2 -0
  21. package/dist/LmFilter/components/CascaderFilter.d.ts +5 -0
  22. package/dist/LmFilter/components/CheckboxFilter.d.ts +5 -0
  23. package/dist/LmFilter/components/DateFilter.d.ts +5 -0
  24. package/dist/LmFilter/components/DropdownFIlter.d.ts +3 -0
  25. package/dist/LmFilter/components/EmptyFilter.d.ts +2 -0
  26. package/dist/LmFilter/components/InputFilter.d.ts +4 -0
  27. package/dist/LmFilter/components/InputSearchClose.d.ts +3 -0
  28. package/dist/LmFilter/components/SelectFilter.d.ts +5 -0
  29. package/dist/LmFilter/components/index.d.ts +3 -0
  30. package/dist/LmFilter/customFilter/index.d.ts +2 -0
  31. package/dist/LmFilter/demos/basic.d.ts +2 -0
  32. package/dist/LmFilter/filterFns/index.d.ts +12 -0
  33. package/dist/LmFilter/hooks/index.d.ts +1 -0
  34. package/dist/LmFilter/hooks/useDelayedFn.d.ts +2 -0
  35. package/dist/LmFilter/index.d.ts +2 -0
  36. package/dist/LmFilter/style/index.d.ts +1 -0
  37. package/dist/LmFilter/utils.d.ts +9 -0
  38. package/dist/LmFilter/wrapper/Filter.d.ts +3 -0
  39. package/dist/LmFilter/wrapper/FilterContainer.d.ts +3 -0
  40. package/dist/LmFilter/wrapper/FilterRoot.d.ts +3 -0
  41. package/dist/LmFilter/wrapper/FilterWrapper.d.ts +3 -0
  42. package/dist/QuickMenu/demos/basic.d.ts +2 -0
  43. package/dist/QuickMenu/index.d.ts +14 -0
  44. package/dist/QuickMenu/style/index.d.ts +1 -0
  45. package/dist/Tag/demos/ExigencyTag.d.ts +2 -0
  46. package/dist/Tag/index.d.ts +4 -0
  47. package/dist/Upload/demos/picture-little.d.ts +3 -0
  48. package/dist/Upload/index.d.ts +5 -1
  49. package/dist/_util/domTarget.d.ts +7 -0
  50. package/dist/_util/getDataOrAriaProps.d.ts +1 -0
  51. package/dist/_util/reactNode.d.ts +7 -0
  52. package/dist/_util/throttleByAnimationFrame.d.ts +8 -0
  53. package/dist/index.d.ts +2 -1
  54. package/dist/index.umd.js +3453 -317
  55. package/dist/index.umd.min.js +6 -6
  56. package/dist/message/hooks/useMessage.d.ts +7 -0
  57. package/dist/message/index.d.ts +63 -4
  58. package/dist/notification/demos/basic.d.ts +2 -0
  59. package/dist/notification/demos/button.d.ts +2 -0
  60. package/dist/notification/demos/icon.d.ts +2 -0
  61. package/dist/notification/hooks/useNotification.d.ts +7 -0
  62. package/dist/notification/index.d.ts +54 -0
  63. package/dist/notification/style/index.d.ts +1 -0
  64. package/es/Affix/index.d.ts +54 -0
  65. package/es/Affix/index.js +326 -0
  66. package/{lib/Notification → es/Affix}/style/index.css +0 -3
  67. package/es/{Notification → Affix}/style/index.d.ts +0 -0
  68. package/es/{Notification → Affix}/style/index.js +0 -0
  69. package/es/Affix/utils.d.ts +15 -0
  70. package/es/Affix/utils.js +83 -0
  71. package/es/Alert/ErrorBoundary.d.ts +22 -0
  72. package/es/Alert/ErrorBoundary.js +65 -0
  73. package/es/Alert/index.d.ts +41 -0
  74. package/es/Alert/index.js +192 -0
  75. package/es/Alert/style/index.css +531 -0
  76. package/{lib/Notification → es/Alert}/style/index.d.ts +0 -0
  77. package/es/Alert/style/index.js +1 -0
  78. package/es/Button/style/{style.css → index.css} +0 -0
  79. package/es/Button/style/index.d.ts +1 -1
  80. package/es/Button/style/index.js +1 -1
  81. package/es/ButtonTags/style/{style.css → index.css} +0 -0
  82. package/es/ButtonTags/style/index.js +1 -1
  83. package/es/CardTable/card/PictureTextColumn.js +8 -6
  84. package/es/CardTable/card/PictureTextRow.js +1 -1
  85. package/es/CardTable/fns/index.js +38 -8
  86. package/es/CardTable/{toolbar → pager}/TablePagination.js +0 -0
  87. package/es/CardTable/pager/index.js +48 -0
  88. package/{lib/CardTable/style/style.css → es/CardTable/style/index.css} +2 -2
  89. package/es/CardTable/style/index.js +1 -1
  90. package/es/CardTable/table/TableRoot.js +20 -18
  91. package/es/CardTable/table/TableWrapper.js +4 -0
  92. package/es/CardTable/toolbar/ToolBarBottom.js +8 -27
  93. package/es/Checkbox/style/{style.css → index.css} +0 -0
  94. package/es/Checkbox/style/index.js +1 -1
  95. package/es/CkFilter/style/{style.css → index.css} +0 -0
  96. package/es/CkFilter/style/index.js +1 -1
  97. package/es/CustomerService/style/{style.css → index.css} +0 -0
  98. package/es/CustomerService/style/index.js +1 -1
  99. package/es/Descriptions/style/index.css +10 -8
  100. package/es/EditTable/style/{style.css → index.css} +0 -0
  101. package/es/EditTable/style/index.js +1 -1
  102. package/es/EnlargeImg/style/{style.css → index.css} +0 -0
  103. package/es/EnlargeImg/style/index.js +1 -1
  104. package/es/Filter/style/{style.css → index.css} +0 -0
  105. package/es/Filter/style/index.js +1 -1
  106. package/es/IconFont/index.js +3 -2
  107. package/es/IconSelect/style/{style.css → index.css} +0 -0
  108. package/es/IconSelect/style/index.js +1 -1
  109. package/es/Input/style/{style.css → index.css} +0 -0
  110. package/es/Input/style/index.js +1 -1
  111. package/es/LeftTable/style/{style.css → index.css} +0 -0
  112. package/es/LeftTable/style/index.js +1 -1
  113. package/es/LmEditTable/style/{style.css → index.css} +0 -0
  114. package/es/LmEditTable/style/index.d.ts +1 -1
  115. package/es/LmEditTable/style/index.js +1 -1
  116. package/es/LmFilter/LmFilter.js +27 -0
  117. package/es/LmFilter/baseFilter/fuzzySearch.js +53 -0
  118. package/es/LmFilter/baseFilter/index.js +34 -0
  119. package/es/LmFilter/clearFilter/index.js +35 -0
  120. package/es/LmFilter/complexFilter/index.js +17 -0
  121. package/es/LmFilter/components/CascaderFilter.js +159 -0
  122. package/es/LmFilter/components/CheckboxFilter.js +197 -0
  123. package/es/LmFilter/components/DateFilter.js +139 -0
  124. package/es/LmFilter/components/DropdownFIlter.js +230 -0
  125. package/es/LmFilter/components/EmptyFilter.js +27 -0
  126. package/es/LmFilter/components/InputFilter.js +52 -0
  127. package/es/LmFilter/components/InputSearchClose.js +74 -0
  128. package/es/LmFilter/components/SelectFilter.js +113 -0
  129. package/es/LmFilter/components/index.js +140 -0
  130. package/es/LmFilter/customFilter/index.js +17 -0
  131. package/es/LmFilter/filterFns/index.js +54 -0
  132. package/es/LmFilter/hooks/index.js +18 -0
  133. package/es/LmFilter/hooks/useDelayedFn.js +29 -0
  134. package/es/LmFilter/icon_placeholder.png +0 -0
  135. package/es/LmFilter/index.js +16 -0
  136. package/es/LmFilter/style/index.js +3 -0
  137. package/es/LmFilter/style/style.css +205 -0
  138. package/es/LmFilter/utils.js +71 -0
  139. package/es/LmFilter/wrapper/Filter.js +33 -0
  140. package/es/LmFilter/wrapper/FilterContainer.js +29 -0
  141. package/es/LmFilter/wrapper/FilterRoot.js +120 -0
  142. package/es/LmFilter/wrapper/FilterWrapper.js +25 -0
  143. package/es/LmTable/style/{style.css → index.css} +0 -0
  144. package/es/LmTable/style/index.js +1 -1
  145. package/es/OldModal/style/{style.css → index.css} +0 -0
  146. package/es/OldModal/style/index.js +1 -1
  147. package/es/PopTable/style/{style.css → index.css} +0 -0
  148. package/es/PopTable/style/index.js +1 -1
  149. package/es/ProTable/style/{style.css → index.css} +0 -0
  150. package/es/ProTable/style/index.js +1 -1
  151. package/es/QuickMenu/index.d.ts +14 -0
  152. package/es/QuickMenu/index.js +169 -0
  153. package/es/QuickMenu/style/index.css +560 -0
  154. package/es/QuickMenu/style/index.d.ts +1 -0
  155. package/es/QuickMenu/style/index.js +1 -0
  156. package/es/Radio/style/{style.css → index.css} +0 -0
  157. package/es/Radio/style/index.js +1 -1
  158. package/es/TableRender/style/{style.css → index.css} +0 -0
  159. package/es/TableRender/style/index.js +1 -1
  160. package/es/Tag/index.d.ts +4 -0
  161. package/es/Tag/index.js +48 -2
  162. package/es/Tag/style/index.css +4 -1
  163. package/es/Upload/index.d.ts +5 -1
  164. package/es/Upload/index.js +7 -2
  165. package/es/Upload/style/index.css +35 -0
  166. package/es/UploadOss/style/{style.css → index.css} +0 -0
  167. package/es/UploadOss/style/index.js +1 -1
  168. package/es/VirtualList/style/{style.css → index.css} +0 -0
  169. package/es/VirtualList/style/index.js +1 -1
  170. package/es/_util/domTarget.d.ts +7 -0
  171. package/es/_util/domTarget.js +20 -0
  172. package/es/_util/getDataOrAriaProps.d.ts +1 -0
  173. package/es/_util/getDataOrAriaProps.js +9 -0
  174. package/es/_util/reactNode.d.ts +7 -0
  175. package/es/_util/reactNode.js +10 -0
  176. package/es/_util/throttleByAnimationFrame.d.ts +8 -0
  177. package/es/_util/throttleByAnimationFrame.js +58 -0
  178. package/es/index.d.ts +2 -1
  179. package/es/index.js +3 -2
  180. package/es/message/hooks/useMessage.d.ts +7 -0
  181. package/es/message/hooks/useMessage.js +83 -0
  182. package/es/message/index.d.ts +63 -4
  183. package/es/message/index.js +241 -12
  184. package/es/message/style/index.css +28 -1
  185. package/es/notification/hooks/useNotification.d.ts +7 -0
  186. package/es/notification/hooks/useNotification.js +54 -0
  187. package/es/notification/index.d.ts +54 -0
  188. package/es/notification/index.js +342 -0
  189. package/es/notification/style/index.css +546 -0
  190. package/es/notification/style/index.d.ts +1 -0
  191. package/es/notification/style/index.js +1 -0
  192. package/lib/Affix/index.d.ts +54 -0
  193. package/lib/Affix/index.js +349 -0
  194. package/{es/Notification → lib/Affix}/style/index.css +0 -3
  195. package/lib/Affix/style/index.d.ts +1 -0
  196. package/lib/{Notification → Affix}/style/index.js +0 -0
  197. package/lib/Affix/utils.d.ts +15 -0
  198. package/lib/Affix/utils.js +104 -0
  199. package/lib/Alert/ErrorBoundary.d.ts +22 -0
  200. package/lib/Alert/ErrorBoundary.js +79 -0
  201. package/lib/Alert/index.d.ts +41 -0
  202. package/lib/Alert/index.js +215 -0
  203. package/lib/Alert/style/index.css +531 -0
  204. package/lib/Alert/style/index.d.ts +1 -0
  205. package/lib/Alert/style/index.js +3 -0
  206. package/lib/Button/style/{style.css → index.css} +0 -0
  207. package/lib/Button/style/index.d.ts +1 -1
  208. package/lib/Button/style/index.js +1 -1
  209. package/lib/ButtonTags/style/{style.css → index.css} +0 -0
  210. package/lib/ButtonTags/style/index.js +1 -1
  211. package/lib/CardTable/card/PictureTextColumn.js +8 -6
  212. package/lib/CardTable/card/PictureTextRow.js +1 -1
  213. package/lib/CardTable/fns/index.js +38 -8
  214. package/lib/CardTable/{toolbar → pager}/TablePagination.js +0 -0
  215. package/lib/CardTable/pager/index.js +48 -0
  216. package/{es/CardTable/style/style.css → lib/CardTable/style/index.css} +2 -2
  217. package/lib/CardTable/style/index.js +1 -1
  218. package/lib/CardTable/table/TableRoot.js +20 -18
  219. package/lib/CardTable/table/TableWrapper.js +4 -0
  220. package/lib/CardTable/toolbar/ToolBarBottom.js +8 -27
  221. package/lib/Checkbox/style/{style.css → index.css} +0 -0
  222. package/lib/Checkbox/style/index.js +1 -1
  223. package/lib/CkFilter/style/{style.css → index.css} +0 -0
  224. package/lib/CkFilter/style/index.js +1 -1
  225. package/lib/CustomerService/style/{style.css → index.css} +0 -0
  226. package/lib/CustomerService/style/index.js +1 -1
  227. package/lib/Descriptions/style/index.css +10 -8
  228. package/lib/EditTable/style/{style.css → index.css} +0 -0
  229. package/lib/EditTable/style/index.js +1 -1
  230. package/lib/EnlargeImg/style/{style.css → index.css} +0 -0
  231. package/lib/EnlargeImg/style/index.js +1 -1
  232. package/lib/Filter/style/{style.css → index.css} +0 -0
  233. package/lib/Filter/style/index.js +1 -1
  234. package/lib/IconFont/index.js +3 -2
  235. package/lib/IconSelect/style/{style.css → index.css} +0 -0
  236. package/lib/IconSelect/style/index.js +1 -1
  237. package/lib/Input/style/{style.css → index.css} +0 -0
  238. package/lib/Input/style/index.js +1 -1
  239. package/lib/LeftTable/style/{style.css → index.css} +0 -0
  240. package/lib/LeftTable/style/index.js +1 -1
  241. package/lib/LmEditTable/style/{style.css → index.css} +0 -0
  242. package/lib/LmEditTable/style/index.d.ts +1 -1
  243. package/lib/LmEditTable/style/index.js +1 -1
  244. package/lib/LmFilter/LmFilter.js +27 -0
  245. package/lib/LmFilter/baseFilter/fuzzySearch.js +53 -0
  246. package/lib/LmFilter/baseFilter/index.js +34 -0
  247. package/lib/LmFilter/clearFilter/index.js +35 -0
  248. package/lib/LmFilter/complexFilter/index.js +17 -0
  249. package/lib/LmFilter/components/CascaderFilter.js +159 -0
  250. package/lib/LmFilter/components/CheckboxFilter.js +197 -0
  251. package/lib/LmFilter/components/DateFilter.js +139 -0
  252. package/lib/LmFilter/components/DropdownFIlter.js +230 -0
  253. package/lib/LmFilter/components/EmptyFilter.js +27 -0
  254. package/lib/LmFilter/components/InputFilter.js +52 -0
  255. package/lib/LmFilter/components/InputSearchClose.js +74 -0
  256. package/lib/LmFilter/components/SelectFilter.js +113 -0
  257. package/lib/LmFilter/components/index.js +140 -0
  258. package/lib/LmFilter/customFilter/index.js +17 -0
  259. package/lib/LmFilter/filterFns/index.js +54 -0
  260. package/lib/LmFilter/hooks/index.js +18 -0
  261. package/lib/LmFilter/hooks/useDelayedFn.js +29 -0
  262. package/lib/LmFilter/icon_placeholder.png +0 -0
  263. package/lib/LmFilter/index.js +16 -0
  264. package/lib/LmFilter/style/index.js +3 -0
  265. package/lib/LmFilter/style/style.css +205 -0
  266. package/lib/LmFilter/utils.js +71 -0
  267. package/lib/LmFilter/wrapper/Filter.js +33 -0
  268. package/lib/LmFilter/wrapper/FilterContainer.js +29 -0
  269. package/lib/LmFilter/wrapper/FilterRoot.js +120 -0
  270. package/lib/LmFilter/wrapper/FilterWrapper.js +25 -0
  271. package/lib/LmTable/style/{style.css → index.css} +0 -0
  272. package/lib/LmTable/style/index.js +1 -1
  273. package/lib/OldModal/style/{style.css → index.css} +0 -0
  274. package/lib/OldModal/style/index.js +1 -1
  275. package/lib/PopTable/style/{style.css → index.css} +0 -0
  276. package/lib/PopTable/style/index.js +1 -1
  277. package/lib/ProTable/style/{style.css → index.css} +0 -0
  278. package/lib/ProTable/style/index.js +1 -1
  279. package/lib/QuickMenu/index.d.ts +14 -0
  280. package/lib/QuickMenu/index.js +187 -0
  281. package/lib/QuickMenu/style/index.css +560 -0
  282. package/lib/QuickMenu/style/index.d.ts +1 -0
  283. package/lib/QuickMenu/style/index.js +3 -0
  284. package/lib/Radio/style/{style.css → index.css} +0 -0
  285. package/lib/Radio/style/index.js +1 -1
  286. package/lib/TableRender/style/{style.css → index.css} +0 -0
  287. package/lib/TableRender/style/index.js +1 -1
  288. package/lib/Tag/index.d.ts +4 -0
  289. package/lib/Tag/index.js +48 -1
  290. package/lib/Tag/style/index.css +4 -1
  291. package/lib/Upload/index.d.ts +5 -1
  292. package/lib/Upload/index.js +8 -2
  293. package/lib/Upload/style/index.css +35 -0
  294. package/lib/UploadOss/style/{style.css → index.css} +0 -0
  295. package/lib/UploadOss/style/index.js +1 -1
  296. package/lib/VirtualList/style/{style.css → index.css} +0 -0
  297. package/lib/VirtualList/style/index.js +1 -1
  298. package/lib/_util/domTarget.d.ts +7 -0
  299. package/lib/_util/domTarget.js +31 -0
  300. package/lib/_util/getDataOrAriaProps.d.ts +1 -0
  301. package/lib/_util/getDataOrAriaProps.js +16 -0
  302. package/lib/_util/reactNode.d.ts +7 -0
  303. package/lib/_util/reactNode.js +24 -0
  304. package/lib/_util/throttleByAnimationFrame.d.ts +8 -0
  305. package/lib/_util/throttleByAnimationFrame.js +72 -0
  306. package/lib/index.d.ts +2 -1
  307. package/lib/index.js +11 -3
  308. package/lib/message/hooks/useMessage.d.ts +7 -0
  309. package/lib/message/hooks/useMessage.js +101 -0
  310. package/lib/message/index.d.ts +63 -4
  311. package/lib/message/index.js +262 -16
  312. package/lib/message/style/index.css +28 -1
  313. package/lib/notification/hooks/useNotification.d.ts +7 -0
  314. package/lib/notification/hooks/useNotification.js +69 -0
  315. package/lib/notification/index.d.ts +54 -0
  316. package/lib/notification/index.js +365 -0
  317. package/lib/notification/style/index.css +546 -0
  318. package/lib/notification/style/index.d.ts +1 -0
  319. package/lib/notification/style/index.js +3 -0
  320. package/package.json +5 -2
  321. package/dist/Notification/index.d.ts +0 -7
  322. package/es/Notification/index.d.ts +0 -7
  323. package/es/Notification/index.js +0 -10
  324. package/lib/Notification/index.d.ts +0 -7
  325. package/lib/Notification/index.js +0 -23
@@ -0,0 +1,15 @@
1
+ export declare type BindElement = HTMLElement | Window | null | undefined;
2
+ export declare function getTargetRect(target: BindElement): DOMRect;
3
+ export declare function getFixedTop(placeholderReact: DOMRect, targetRect: DOMRect, offsetTop?: number): number;
4
+ export declare function getFixedBottom(placeholderReact: DOMRect, targetRect: DOMRect, offsetBottom?: number): number;
5
+ interface ObserverEntity {
6
+ target: HTMLElement | Window;
7
+ affixList: any[];
8
+ eventHandlers: {
9
+ [eventName: string]: any;
10
+ };
11
+ }
12
+ export declare function getObserverEntities(): ObserverEntity[];
13
+ export declare function addObserveTarget<T>(target: HTMLElement | Window | null, affix: T): void;
14
+ export declare function removeObserveTarget<T>(affix: T): void;
15
+ export {};
@@ -0,0 +1,83 @@
1
+ import addEventListener from 'rc-util/lib/Dom/addEventListener';
2
+ export function getTargetRect(target) {
3
+ return target !== window ? target.getBoundingClientRect() : {
4
+ top: 0,
5
+ bottom: window.innerHeight
6
+ };
7
+ }
8
+ export function getFixedTop(placeholderReact, targetRect, offsetTop) {
9
+ if (offsetTop !== undefined && targetRect.top > placeholderReact.top - offsetTop) {
10
+ return offsetTop + targetRect.top;
11
+ }
12
+
13
+ return undefined;
14
+ }
15
+ export function getFixedBottom(placeholderReact, targetRect, offsetBottom) {
16
+ if (offsetBottom !== undefined && targetRect.bottom < placeholderReact.bottom + offsetBottom) {
17
+ var targetBottomOffset = window.innerHeight - targetRect.bottom;
18
+ return offsetBottom + targetBottomOffset;
19
+ }
20
+
21
+ return undefined;
22
+ } // ======================== Observer ========================
23
+
24
+ var TRIGGER_EVENTS = ['resize', 'scroll', 'touchstart', 'touchmove', 'touchend', 'pageshow', 'load'];
25
+ var observerEntities = [];
26
+ export function getObserverEntities() {
27
+ // Only used in test env. Can be removed if refactor.
28
+ return observerEntities;
29
+ }
30
+ export function addObserveTarget(target, affix) {
31
+ if (!target) return;
32
+ var entity = observerEntities.find(function (item) {
33
+ return item.target === target;
34
+ });
35
+
36
+ if (entity) {
37
+ entity.affixList.push(affix);
38
+ } else {
39
+ entity = {
40
+ target: target,
41
+ affixList: [affix],
42
+ eventHandlers: {}
43
+ };
44
+ observerEntities.push(entity); // Add listener
45
+
46
+ TRIGGER_EVENTS.forEach(function (eventName) {
47
+ entity.eventHandlers[eventName] = addEventListener(target, eventName, function () {
48
+ entity.affixList.forEach(function (targetAffix) {
49
+ targetAffix.lazyUpdatePosition();
50
+ });
51
+ });
52
+ });
53
+ }
54
+ }
55
+ export function removeObserveTarget(affix) {
56
+ var observerEntity = observerEntities.find(function (oriObserverEntity) {
57
+ var hasAffix = oriObserverEntity.affixList.some(function (item) {
58
+ return item === affix;
59
+ });
60
+
61
+ if (hasAffix) {
62
+ oriObserverEntity.affixList = oriObserverEntity.affixList.filter(function (item) {
63
+ return item !== affix;
64
+ });
65
+ }
66
+
67
+ return hasAffix;
68
+ });
69
+
70
+ if (observerEntity && observerEntity.affixList.length === 0) {
71
+ observerEntities = observerEntities.filter(function (item) {
72
+ return item !== observerEntity;
73
+ }); // Remove listener
74
+
75
+ TRIGGER_EVENTS.forEach(function (eventName) {
76
+ var handler = observerEntity.eventHandlers[eventName];
77
+
78
+ if (handler && handler.remove) {
79
+ handler.remove();
80
+ }
81
+ });
82
+ }
83
+ }
@@ -0,0 +1,22 @@
1
+ import * as React from 'react';
2
+ interface ErrorBoundaryProps {
3
+ message?: React.ReactNode;
4
+ description?: React.ReactNode;
5
+ children?: React.ReactNode;
6
+ }
7
+ export default class ErrorBoundary extends React.Component<ErrorBoundaryProps, {
8
+ error?: Error | null;
9
+ info: {
10
+ componentStack?: string;
11
+ };
12
+ }> {
13
+ state: {
14
+ error: any;
15
+ info: {
16
+ componentStack: string;
17
+ };
18
+ };
19
+ componentDidCatch(error: Error | null, info: object): void;
20
+ render(): React.ReactNode;
21
+ }
22
+ export {};
@@ -0,0 +1,65 @@
1
+ import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
2
+ import _createClass from "@babel/runtime/helpers/esm/createClass";
3
+ import _inherits from "@babel/runtime/helpers/esm/inherits";
4
+ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
5
+ import * as React from 'react';
6
+ import Alert from '.';
7
+
8
+ var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
9
+ _inherits(ErrorBoundary, _React$Component);
10
+
11
+ var _super = _createSuper(ErrorBoundary);
12
+
13
+ function ErrorBoundary() {
14
+ var _this;
15
+
16
+ _classCallCheck(this, ErrorBoundary);
17
+
18
+ _this = _super.apply(this, arguments);
19
+ _this.state = {
20
+ error: undefined,
21
+ info: {
22
+ componentStack: ''
23
+ }
24
+ };
25
+ return _this;
26
+ }
27
+
28
+ _createClass(ErrorBoundary, [{
29
+ key: "componentDidCatch",
30
+ value: function componentDidCatch(error, info) {
31
+ this.setState({
32
+ error: error,
33
+ info: info
34
+ });
35
+ }
36
+ }, {
37
+ key: "render",
38
+ value: function render() {
39
+ var _this$props = this.props,
40
+ message = _this$props.message,
41
+ description = _this$props.description,
42
+ children = _this$props.children;
43
+ var _this$state = this.state,
44
+ error = _this$state.error,
45
+ info = _this$state.info;
46
+ var componentStack = info && info.componentStack ? info.componentStack : null;
47
+ var errorMessage = typeof message === 'undefined' ? (error || '').toString() : message;
48
+ var errorDescription = typeof description === 'undefined' ? componentStack : description;
49
+
50
+ if (error) {
51
+ return /*#__PURE__*/React.createElement(Alert, {
52
+ type: "error",
53
+ message: errorMessage,
54
+ description: /*#__PURE__*/React.createElement("pre", null, errorDescription)
55
+ });
56
+ }
57
+
58
+ return children;
59
+ }
60
+ }]);
61
+
62
+ return ErrorBoundary;
63
+ }(React.Component);
64
+
65
+ export { ErrorBoundary as default };
@@ -0,0 +1,41 @@
1
+ import { Alert as AntdAlert } from 'antd';
2
+ import * as React from 'react';
3
+ import ErrorBoundary from './ErrorBoundary';
4
+ export interface AlertProps {
5
+ /** Type of Alert styles, options:`success`, `info`, `warning`, `error` */
6
+ type?: 'success' | 'info' | 'warning' | 'error';
7
+ /** Whether Alert can be closed */
8
+ closable?: boolean;
9
+ /** Close text to show */
10
+ closeText?: React.ReactNode;
11
+ /** Content of Alert */
12
+ message?: React.ReactNode;
13
+ /** Additional content of Alert */
14
+ description?: React.ReactNode;
15
+ /** Callback when close Alert */
16
+ onClose?: React.MouseEventHandler<HTMLButtonElement>;
17
+ /** Trigger when animation ending of Alert */
18
+ afterClose?: () => void;
19
+ /** Whether to show icon */
20
+ showIcon?: boolean;
21
+ /** https://www.w3.org/TR/2014/REC-html5-20141028/dom.html#aria-role-attribute */
22
+ role?: string;
23
+ style?: React.CSSProperties;
24
+ prefixCls?: string;
25
+ className?: string;
26
+ banner?: boolean;
27
+ icon?: React.ReactNode;
28
+ /** Custome closeIcon */
29
+ closeIcon?: React.ReactNode;
30
+ action?: React.ReactNode;
31
+ onMouseEnter?: React.MouseEventHandler<HTMLDivElement>;
32
+ onMouseLeave?: React.MouseEventHandler<HTMLDivElement>;
33
+ onClick?: React.MouseEventHandler<HTMLDivElement>;
34
+ duration?: number;
35
+ }
36
+ interface AlertInterface extends React.FC<AlertProps> {
37
+ ErrorBoundary: typeof ErrorBoundary;
38
+ AntdAlert: typeof AntdAlert;
39
+ }
40
+ declare const Alert: AlertInterface;
41
+ export default Alert;
@@ -0,0 +1,192 @@
1
+ import "antd/es/alert/style";
2
+ import _Alert from "antd/es/alert";
3
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
4
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
+
6
+ var __rest = this && this.__rest || function (s, e) {
7
+ var t = {};
8
+
9
+ for (var p in s) {
10
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
11
+ }
12
+
13
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
14
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
15
+ }
16
+ return t;
17
+ };
18
+
19
+ import { CheckCircleFilled, CheckCircleOutlined, CloseCircleFilled, CloseCircleOutlined, CloseOutlined, ExclamationCircleFilled, ExclamationCircleOutlined, InfoCircleFilled, InfoCircleOutlined } from '@ant-design/icons';
20
+ import classNames from 'classnames';
21
+ import CSSMotion from 'rc-motion';
22
+ import * as React from 'react';
23
+ import { ConfigContext } from 'antd/es/config-provider';
24
+ import getDataOrAriaProps from '../_util/getDataOrAriaProps';
25
+ import { replaceElement } from '../_util/reactNode';
26
+ import ErrorBoundary from './ErrorBoundary';
27
+ var iconMapFilled = {
28
+ success: CheckCircleFilled,
29
+ info: InfoCircleFilled,
30
+ error: CloseCircleFilled,
31
+ warning: ExclamationCircleFilled
32
+ };
33
+ var iconMapOutlined = {
34
+ success: CheckCircleOutlined,
35
+ info: InfoCircleOutlined,
36
+ error: CloseCircleOutlined,
37
+ warning: ExclamationCircleOutlined
38
+ };
39
+
40
+ var IconNode = function IconNode(props) {
41
+ var description = props.description,
42
+ icon = props.icon,
43
+ prefixCls = props.prefixCls,
44
+ type = props.type;
45
+ var iconType = (description ? iconMapOutlined : iconMapFilled)[type] || null;
46
+
47
+ if (icon) {
48
+ return replaceElement(icon, /*#__PURE__*/React.createElement("span", {
49
+ className: "".concat(prefixCls, "-icon")
50
+ }, icon), function () {
51
+ return {
52
+ className: classNames("".concat(prefixCls, "-icon"), _defineProperty({}, icon.props.className, icon.props.className))
53
+ };
54
+ });
55
+ }
56
+
57
+ return /*#__PURE__*/React.createElement(iconType, {
58
+ className: "".concat(prefixCls, "-icon")
59
+ });
60
+ };
61
+
62
+ var CloseIcon = function CloseIcon(props) {
63
+ var isClosable = props.isClosable,
64
+ closeText = props.closeText,
65
+ prefixCls = props.prefixCls,
66
+ closeIcon = props.closeIcon,
67
+ handleClose = props.handleClose;
68
+ return isClosable ? /*#__PURE__*/React.createElement("button", {
69
+ type: "button",
70
+ onClick: handleClose,
71
+ className: "".concat(prefixCls, "-close-icon"),
72
+ tabIndex: 0
73
+ }, closeText ? /*#__PURE__*/React.createElement("span", {
74
+ className: "".concat(prefixCls, "-close-text")
75
+ }, closeText) : closeIcon) : null;
76
+ };
77
+
78
+ var Alert = function Alert(_a) {
79
+ var _classNames2;
80
+
81
+ var description = _a.description,
82
+ customizePrefixCls = _a.prefixCls,
83
+ message = _a.message,
84
+ banner = _a.banner,
85
+ _a$className = _a.className,
86
+ className = _a$className === void 0 ? '' : _a$className,
87
+ style = _a.style,
88
+ onMouseEnter = _a.onMouseEnter,
89
+ onMouseLeave = _a.onMouseLeave,
90
+ onClick = _a.onClick,
91
+ afterClose = _a.afterClose,
92
+ showIcon = _a.showIcon,
93
+ closable = _a.closable,
94
+ closeText = _a.closeText,
95
+ _a$closeIcon = _a.closeIcon,
96
+ closeIcon = _a$closeIcon === void 0 ? /*#__PURE__*/React.createElement(CloseOutlined, null) : _a$closeIcon,
97
+ action = _a.action,
98
+ duration = _a.duration,
99
+ props = __rest(_a, ["description", "prefixCls", "message", "banner", "className", "style", "onMouseEnter", "onMouseLeave", "onClick", "afterClose", "showIcon", "closable", "closeText", "closeIcon", "action", "duration"]);
100
+
101
+ var _React$useState = React.useState(false),
102
+ _React$useState2 = _slicedToArray(_React$useState, 2),
103
+ closed = _React$useState2[0],
104
+ setClosed = _React$useState2[1];
105
+
106
+ var ref = React.useRef();
107
+
108
+ var _React$useContext = React.useContext(ConfigContext),
109
+ getPrefixCls = _React$useContext.getPrefixCls,
110
+ direction = _React$useContext.direction;
111
+
112
+ var prefixCls = getPrefixCls('alert', customizePrefixCls);
113
+
114
+ var handleClose = function handleClose(e) {
115
+ var _a;
116
+
117
+ setClosed(true);
118
+ (_a = props.onClose) === null || _a === void 0 ? void 0 : _a.call(props, e);
119
+ };
120
+
121
+ var getType = function getType() {
122
+ var type = props.type;
123
+
124
+ if (type !== undefined) {
125
+ return type;
126
+ } // banner 模式默认为警告
127
+
128
+
129
+ return banner ? 'warning' : 'info';
130
+ }; // closeable when closeText is assigned
131
+
132
+
133
+ var isClosable = closeText ? true : closable;
134
+ var type = getType(); // banner 模式默认有 Icon
135
+
136
+ var isShowIcon = banner && showIcon === undefined ? true : showIcon;
137
+ var alertCls = classNames(prefixCls, "".concat(prefixCls, "-").concat(type), (_classNames2 = {}, _defineProperty(_classNames2, "".concat(prefixCls, "-with-description"), !!description), _defineProperty(_classNames2, "".concat(prefixCls, "-no-icon"), !isShowIcon), _defineProperty(_classNames2, "".concat(prefixCls, "-banner"), !!banner), _defineProperty(_classNames2, "".concat(prefixCls, "-rtl"), direction === 'rtl'), _classNames2), className, 'lm_alert');
138
+ var dataOrAriaProps = getDataOrAriaProps(props);
139
+ return /*#__PURE__*/React.createElement(CSSMotion, {
140
+ visible: !closed,
141
+ motionName: "".concat(prefixCls, "-motion"),
142
+ motionAppear: false,
143
+ motionEnter: false,
144
+ onLeaveStart: function onLeaveStart(node) {
145
+ return {
146
+ maxHeight: node.offsetHeight
147
+ };
148
+ },
149
+ onLeaveEnd: afterClose
150
+ }, function (_ref) {
151
+ var motionClassName = _ref.className,
152
+ motionStyle = _ref.style;
153
+ return /*#__PURE__*/React.createElement("div", Object.assign({
154
+ ref: ref,
155
+ "data-show": !closed,
156
+ className: classNames(alertCls, motionClassName),
157
+ style: Object.assign(Object.assign({}, style), motionStyle),
158
+ onMouseEnter: onMouseEnter,
159
+ onMouseLeave: onMouseLeave,
160
+ onClick: onClick,
161
+ role: "alert"
162
+ }, dataOrAriaProps), isShowIcon ? /*#__PURE__*/React.createElement(IconNode, {
163
+ description: description,
164
+ icon: props.icon,
165
+ prefixCls: prefixCls,
166
+ type: type
167
+ }) : null, /*#__PURE__*/React.createElement("div", {
168
+ className: "".concat(prefixCls, "-content")
169
+ }, message ? /*#__PURE__*/React.createElement("div", {
170
+ className: "".concat(prefixCls, "-message")
171
+ }, message) : null, description ? /*#__PURE__*/React.createElement("div", {
172
+ className: "".concat(prefixCls, "-description")
173
+ }, description) : null), action ? /*#__PURE__*/React.createElement("div", {
174
+ className: "".concat(prefixCls, "-action")
175
+ }, action) : null, /*#__PURE__*/React.createElement(CloseIcon, {
176
+ isClosable: !!isClosable,
177
+ closeText: closeText,
178
+ prefixCls: prefixCls,
179
+ closeIcon: closeIcon,
180
+ handleClose: handleClose
181
+ }), duration > 0 && /*#__PURE__*/React.createElement("div", {
182
+ className: 'alert_progress',
183
+ style: {
184
+ animationDuration: "".concat(duration, "s")
185
+ }
186
+ }));
187
+ });
188
+ };
189
+
190
+ Alert.ErrorBoundary = ErrorBoundary;
191
+ Alert.AntdAlert = _Alert;
192
+ export default Alert;