diginet-core-ui 1.3.36 → 1.3.38

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 (256) hide show
  1. package/assets/avatar/default.svg +3 -3
  2. package/assets/images/icons/wifi.svg +3 -3
  3. package/assets/images/menu/dhr/ALL.svg +6 -6
  4. package/assets/images/menu/dhr/D00.svg +12 -12
  5. package/assets/images/menu/dhr/D09.svg +8 -8
  6. package/assets/images/menu/dhr/D13.svg +10 -10
  7. package/assets/images/menu/dhr/D15.svg +10 -10
  8. package/assets/images/menu/dhr/D21.svg +10 -10
  9. package/assets/images/menu/dhr/D25.svg +11 -11
  10. package/assets/images/menu/dhr/D29.svg +11 -11
  11. package/assets/images/menu/dhr/D38.svg +6 -6
  12. package/assets/images/menu/dhr/D39.svg +10 -10
  13. package/assets/images/menu/dhr/D51.svg +12 -12
  14. package/assets/images/menu/dhr/D52.svg +16 -16
  15. package/assets/images/menu/dhr/D77.svg +16 -16
  16. package/assets/images/menu/dhr/D84.svg +12 -12
  17. package/assets/images/menu/dhr/D89.svg +8 -8
  18. package/assets/images/menu/dhr/Default.svg +13 -13
  19. package/assets/images/menu/dhr/MHRM00N0001.svg +14 -14
  20. package/assets/images/menu/dhr/MHRM09N0002.svg +3 -3
  21. package/assets/images/menu/dhr/MHRM09N0003.svg +25 -25
  22. package/assets/images/menu/dhr/MHRM09N0004.svg +14 -14
  23. package/assets/images/menu/dhr/MHRM09N0005.svg +7 -7
  24. package/assets/images/menu/dhr/MHRM13N0001.svg +16 -16
  25. package/assets/images/menu/dhr/MHRM25N0001.svg +26 -26
  26. package/assets/images/menu/dhr/MHRM29N0001.svg +30 -30
  27. package/assets/images/menu/dhr/MHRM29N0002.svg +13 -0
  28. package/assets/images/menu/dhr/MHRM29N0003.svg +17 -0
  29. package/assets/images/menu/dhr/MHRM29N0015.svg +63 -63
  30. package/assets/images/menu/dhr/MHRM39N0012.svg +43 -43
  31. package/assets/images/menu/dhr/MHRM39N0013.svg +24 -24
  32. package/assets/images/menu/dhr/MHRM39N0014.svg +14 -14
  33. package/assets/images/menu/dhr/MHRM39N0015.svg +36 -36
  34. package/assets/images/menu/dhr/MHRM39N0016.svg +23 -23
  35. package/assets/images/menu/dhr/MHRM77N0001.svg +28 -28
  36. package/assets/images/menu/dhr/MHRM84N0001.svg +27 -27
  37. package/assets/images/menu/dhr/MHRM84N0002.svg +24 -24
  38. package/assets/images/menu/dhr/MHRM89N0001.svg +16 -16
  39. package/assets/images/menu/dhr/MHRP00N0001.svg +10 -10
  40. package/assets/images/menu/dhr/MHRP09N0001.svg +22 -22
  41. package/assets/images/menu/dhr/MHRP09N0002.svg +19 -19
  42. package/assets/images/menu/dhr/MHRP09N0003.svg +12 -12
  43. package/assets/images/menu/dhr/MHRP09N0004.svg +6 -6
  44. package/assets/images/menu/dhr/MHRP09N0005.svg +10 -10
  45. package/assets/images/menu/dhr/MHRP09N0006.svg +17 -17
  46. package/assets/images/menu/dhr/MHRP09N0007.svg +15 -15
  47. package/assets/images/menu/dhr/MHRP09N0008.svg +8 -8
  48. package/assets/images/menu/dhr/MHRP09N0009.svg +10 -10
  49. package/assets/images/menu/dhr/MHRP09N0010.svg +12 -12
  50. package/assets/images/menu/dhr/MHRP09N0011.svg +16 -16
  51. package/assets/images/menu/dhr/MHRP09N0012.svg +6 -6
  52. package/assets/images/menu/dhr/MHRP09N0013.svg +8 -8
  53. package/assets/images/menu/dhr/MHRP09N0014.svg +11 -11
  54. package/assets/images/menu/dhr/MHRP09N0015.svg +12 -12
  55. package/assets/images/menu/dhr/MHRP09N0016.svg +18 -18
  56. package/assets/images/menu/dhr/MHRP09N0017.svg +18 -18
  57. package/assets/images/menu/dhr/MHRP09N0018.svg +12 -12
  58. package/assets/images/menu/dhr/MHRP09N0019.svg +13 -13
  59. package/assets/images/menu/dhr/MHRP09N0020.svg +17 -17
  60. package/assets/images/menu/dhr/MHRP09N0021.svg +10 -10
  61. package/assets/images/menu/dhr/MHRP09N0022.svg +16 -16
  62. package/assets/images/menu/dhr/MHRP09N0023.svg +8 -8
  63. package/assets/images/menu/dhr/MHRP09N0024.svg +15 -15
  64. package/assets/images/menu/dhr/MHRP09N0025.svg +16 -16
  65. package/assets/images/menu/dhr/MHRP09N0026.svg +13 -13
  66. package/assets/images/menu/dhr/MHRP09N0027.svg +10 -10
  67. package/assets/images/menu/dhr/MHRP09N0028.svg +6 -6
  68. package/assets/images/menu/dhr/MHRP09N0029.svg +14 -14
  69. package/assets/images/menu/dhr/MHRP09N0030.svg +4 -4
  70. package/assets/images/menu/dhr/MHRP09N0031.svg +5 -5
  71. package/assets/images/menu/dhr/MHRP09N0032.svg +7 -7
  72. package/assets/images/menu/dhr/MHRP13N0001.svg +9 -9
  73. package/assets/images/menu/dhr/MHRP21N0001.svg +12 -12
  74. package/assets/images/menu/dhr/MHRP21N0002.svg +13 -13
  75. package/assets/images/menu/dhr/MHRP25N0001.svg +13 -13
  76. package/assets/images/menu/dhr/MHRP25N0002.svg +16 -16
  77. package/assets/images/menu/dhr/MHRP25N0003.svg +38 -38
  78. package/assets/images/menu/dhr/MHRP25N0004.svg +17 -17
  79. package/assets/images/menu/dhr/MHRP25N0005.svg +20 -20
  80. package/assets/images/menu/dhr/MHRP29N0001.svg +18 -18
  81. package/assets/images/menu/dhr/MHRP29N0002.svg +15 -15
  82. package/assets/images/menu/dhr/MHRP29N0003.svg +20 -20
  83. package/assets/images/menu/dhr/MHRP29N0004.svg +21 -21
  84. package/assets/images/menu/dhr/MHRP29N0005.svg +21 -21
  85. package/assets/images/menu/dhr/MHRP29N0006.svg +14 -14
  86. package/assets/images/menu/dhr/MHRP29N0007.svg +19 -19
  87. package/assets/images/menu/dhr/MHRP29N0008.svg +20 -20
  88. package/assets/images/menu/dhr/MHRP29N0009.svg +11 -11
  89. package/assets/images/menu/dhr/MHRP29N0010.svg +11 -11
  90. package/assets/images/menu/dhr/MHRP29N0011.svg +12 -12
  91. package/assets/images/menu/dhr/MHRP29N0012.svg +7 -7
  92. package/assets/images/menu/dhr/MHRP29N0013.svg +27 -27
  93. package/assets/images/menu/dhr/MHRP29N0014.svg +32 -32
  94. package/assets/images/menu/dhr/MHRP29N0016.svg +54 -54
  95. package/assets/images/menu/dhr/MHRP29N0017.svg +24 -24
  96. package/assets/images/menu/dhr/MHRP29N0018.svg +44 -44
  97. package/assets/images/menu/dhr/MHRP29N0019.svg +17 -17
  98. package/assets/images/menu/dhr/MHRP29N0020.svg +11 -11
  99. package/assets/images/menu/dhr/MHRP29N0021.svg +8 -8
  100. package/assets/images/menu/dhr/MHRP29N0022.svg +9 -9
  101. package/assets/images/menu/dhr/MHRP29N0023.svg +22 -22
  102. package/assets/images/menu/dhr/MHRP38N0001.svg +13 -13
  103. package/assets/images/menu/dhr/MHRP38N0002.svg +14 -14
  104. package/assets/images/menu/dhr/MHRP39N0001.svg +15 -15
  105. package/assets/images/menu/dhr/MHRP39N0002.svg +13 -13
  106. package/assets/images/menu/dhr/MHRP39N0003.svg +16 -16
  107. package/assets/images/menu/dhr/MHRP39N0004.svg +22 -22
  108. package/assets/images/menu/dhr/MHRP39N0005.svg +16 -16
  109. package/assets/images/menu/dhr/MHRP39N0006.svg +17 -17
  110. package/assets/images/menu/dhr/MHRP39N0007.svg +13 -13
  111. package/assets/images/menu/dhr/MHRP39N0008.svg +3 -3
  112. package/assets/images/menu/dhr/MHRP39N0009.svg +3 -3
  113. package/assets/images/menu/dhr/MHRP39N0010.svg +7 -7
  114. package/assets/images/menu/dhr/MHRP39N0011.svg +14 -14
  115. package/assets/images/menu/dhr/MHRP39N0013.svg +10 -10
  116. package/assets/images/menu/dhr/MHRP39N0014.svg +11 -11
  117. package/assets/images/menu/dhr/MHRP39N0015.svg +5 -5
  118. package/assets/images/menu/dhr/MHRP39N0017.svg +11 -11
  119. package/assets/images/menu/dhr/MHRP39N0018.svg +11 -0
  120. package/assets/images/menu/dhr/MHRP39N1222.svg +12 -12
  121. package/assets/images/menu/dhr/MHRP51N0001.svg +9 -9
  122. package/assets/images/menu/dhr/MHRP51N0002.svg +13 -13
  123. package/assets/images/menu/dhr/MHRP52N0001.svg +21 -21
  124. package/assets/images/menu/dhr/MHRP52N0002.svg +21 -21
  125. package/assets/images/menu/dhr/MHRP52N0003.svg +16 -16
  126. package/assets/images/menu/dhr/MHRP75N0001.svg +19 -19
  127. package/assets/images/menu/dhr/MHRP75N0002.svg +25 -25
  128. package/assets/images/menu/dhr/MHRP75N0003.svg +3 -3
  129. package/assets/images/menu/dhr/MHRP75N0006.svg +14 -14
  130. package/assets/images/menu/dhr/MHRP75N0007.svg +19 -19
  131. package/assets/images/menu/dhr/MHRP75N0008.svg +19 -19
  132. package/assets/images/menu/dhr/MHRP77N0007.svg +28 -28
  133. package/assets/images/menu/dhr/MHRP77N0008.svg +17 -17
  134. package/assets/images/menu/dhr/MHRP77N0009.svg +19 -19
  135. package/assets/images/menu/dhr/MHRP77N0010.svg +20 -20
  136. package/assets/images/menu/dhr/MHRP89N1000.svg +6 -6
  137. package/assets/images/menu/dhr/MHRP89N1001.svg +6 -6
  138. package/assets/images/menu/dhr/TASK.svg +9 -9
  139. package/assets/images/menu/dhr/W00F0001.svg +3 -3
  140. package/assets/images/menu/dhr/W00F0002.svg +3 -3
  141. package/assets/images/menu/dhr/W00F0003.svg +3 -3
  142. package/assets/images/menu/dhr/W00F0004.svg +3 -3
  143. package/assets/images/menu/dhr/W09F2000-WEB5.svg +17 -17
  144. package/assets/images/menu/dhr/W09F2000.svg +6 -6
  145. package/assets/images/menu/dhr/W09F2002-WEB5.svg +21 -21
  146. package/assets/images/menu/dhr/W09F2005-WEB5.svg +13 -13
  147. package/assets/images/menu/dhr/W09F2020-WEB5.svg +16 -16
  148. package/assets/images/menu/dhr/W09F2022-WEB5.svg +20 -20
  149. package/assets/images/menu/dhr/W09F2150-WEB5.svg +16 -16
  150. package/assets/images/menu/dhr/W09F2152-WEB5.svg +20 -20
  151. package/assets/images/menu/dhr/W09F2160-WEB5.svg +14 -14
  152. package/assets/images/menu/dhr/W09F2162-WEB5.svg +18 -18
  153. package/assets/images/menu/dhr/W29F4006-WEB5.svg +19 -19
  154. package/assets/images/menu/dhr/W75F2260-WEB5.svg +15 -15
  155. package/assets/images/menu/dhr/W75F2261-WEB5.svg +19 -19
  156. package/assets/images/menu/dhr/W75F3005-WEB5.svg +13 -13
  157. package/assets/images/menu/dhr/W75F4070-WEB5.svg +21 -21
  158. package/assets/images/menu/dhr/W75F4071-WEB5.svg +17 -17
  159. package/assets/images/menu/dhr/W75F4100-WEB5.svg +14 -14
  160. package/assets/images/menu/dhr/W77F1011.svg +19 -19
  161. package/assets/images/menu/dhr/W77F1013.svg +22 -22
  162. package/assets/images/menu/erp/D05.svg +8 -8
  163. package/assets/images/menu/erp/D06.svg +4 -4
  164. package/assets/images/menu/erp/D90R.svg +9 -9
  165. package/assets/images/menu/erp/DBC.svg +9 -9
  166. package/assets/images/menu/erp/W00F0001.svg +3 -3
  167. package/assets/images/menu/erp/W00F0002.svg +3 -3
  168. package/assets/images/menu/erp/W00F0003.svg +3 -3
  169. package/assets/images/menu/erp/W00F0004.svg +3 -3
  170. package/assets/images/menu/erp/W05F0001.svg +16 -16
  171. package/assets/images/menu/erp/W05F0001N0000.svg +16 -16
  172. package/assets/images/menu/erp/W05F0004N0000.svg +6 -6
  173. package/assets/images/menu/erp/W05F0006N0000.svg +30 -30
  174. package/assets/images/menu/erp/W05F0007N0000.svg +6 -6
  175. package/assets/images/menu/erp/W05F0008N0000.svg +14 -14
  176. package/assets/images/menu/erp/W05F0011N0000.svg +20 -20
  177. package/assets/images/menu/erp/W05F0013N0000.svg +9 -9
  178. package/assets/images/menu/erp/W05F4000N0000.svg +9 -9
  179. package/assets/images/menu/erp/W06F0001.svg +17 -17
  180. package/assets/images/menu/erp/W06F0001N0000.svg +17 -17
  181. package/assets/images/menu/erp/W06F0004N0000.svg +22 -22
  182. package/assets/images/menu/erp/W06F0005N0000.svg +22 -22
  183. package/assets/images/menu/erp/W06F0006N0000.svg +55 -55
  184. package/assets/images/menu/erp/W06F0008N0000.svg +17 -17
  185. package/assets/images/menu/erp/W94F1000N0000.svg +9 -9
  186. package/assets/images/menu/erp/W94F1000N0001.svg +9 -9
  187. package/assets/images/menu/erp/WA3F1025.svg +5 -5
  188. package/assets/images/menu/erp/WA3F2100.svg +10 -10
  189. package/components/accordion/css.js +42 -35
  190. package/components/accordion/details.js +48 -42
  191. package/components/accordion/group.js +88 -82
  192. package/components/accordion/index.js +54 -48
  193. package/components/accordion/summary.js +52 -43
  194. package/components/alert/index.js +115 -103
  195. package/components/alert/notify.js +16 -18
  196. package/components/badge/index.js +5 -5
  197. package/components/button/icon.js +21 -21
  198. package/components/button/index.js +13 -13
  199. package/components/chart/Pie/Sector.js +2 -2
  200. package/components/chart/Pie-v2/Sector.js +2 -2
  201. package/components/chip/attach.js +5 -5
  202. package/components/chip/index.js +13 -10
  203. package/components/divider/index.js +17 -15
  204. package/components/form-control/attachment/index.js +1 -0
  205. package/components/form-control/calendar/function.js +295 -289
  206. package/components/form-control/calendar/index.js +16 -16
  207. package/components/form-control/checkbox/index.js +5 -5
  208. package/components/form-control/date-picker/index.js +7 -3
  209. package/components/form-control/date-range-picker/index.js +12 -8
  210. package/components/form-control/dropdown/index.js +139 -81
  211. package/components/form-control/input-base/index.js +32 -27
  212. package/components/form-control/money-input/index.js +17 -17
  213. package/components/form-control/number-input/index.js +11 -11
  214. package/components/form-control/number-input/index2.js +432 -0
  215. package/components/form-control/phone-input/index.js +7 -7
  216. package/components/form-control/radio/index.js +98 -146
  217. package/components/form-control/text-input/index.js +4 -4
  218. package/components/form-control/time-picker/index.js +305 -300
  219. package/components/form-control/toggle/index.js +92 -90
  220. package/components/index.js +1 -1
  221. package/components/modal/header.js +63 -65
  222. package/components/modal/modal.js +84 -130
  223. package/components/paging/page-selector.js +53 -49
  224. package/components/popup/index.js +5 -1
  225. package/components/popup/proposals_popup.js +5 -1
  226. package/components/popup/v2/index.js +12 -8
  227. package/components/progress/circular.js +12 -12
  228. package/components/rating/index.js +3 -3
  229. package/components/slider/slider-item.js +65 -25
  230. package/components/tab/tab-container.js +2 -2
  231. package/components/tab/tab-header.js +2 -2
  232. package/components/tab/tab-panel.js +2 -2
  233. package/components/tab/tab.js +2 -2
  234. package/components/transfer/index.js +3 -3
  235. package/components/tree-view/index.js +38 -38
  236. package/components/typography/index.js +10 -10
  237. package/icons/basic.js +75 -408
  238. package/icons/effect.js +15 -15
  239. package/package.json +45 -45
  240. package/readme.md +677 -654
  241. package/styles/color-helper.js +103 -103
  242. package/styles/colors.js +7 -7
  243. package/styles/general.js +40 -12
  244. package/styles/utils.js +5 -5
  245. package/theme/set-theme.js +3 -3
  246. package/theme/settings.js +3 -2
  247. package/utils/array/array.js +36 -36
  248. package/utils/date.js +56 -56
  249. package/utils/error/error.js +2 -2
  250. package/utils/error/errors.js +99 -99
  251. package/utils/number.js +6 -6
  252. package/utils/render-portal.js +5 -1
  253. package/utils/renderIcon.js +5 -5
  254. package/utils/useOnClickOutside.js +2 -2
  255. package/utils/usePortal.js +9 -9
  256. package/utils/validate.js +33 -33
@@ -1,6 +1,10 @@
1
1
  import { css } from '@emotion/core';
2
2
  import { typography } from '../../styles/typography';
3
3
  import { color as colors } from '../../styles/colors';
4
+ import { alignCenter, backgroundTransparent, borderBox, borderRadius4px, breakWord, cursorPointer, displayInlineBlock, flexRow, flexRowReverse, inlineFlex, justifyBetween, justifyCenter, justifyEnd, pointerEventsNone, positionAbsolute, positionRelative, userSelectNone } from '../../styles/general';
5
+ const {
6
+ heading3
7
+ } = typography;
4
8
  const {
5
9
  system: {
6
10
  active,
@@ -14,36 +18,37 @@ const {
14
18
  pressed
15
19
  }
16
20
  } = colors;
17
- export const SummaryRoot = css`
18
- display: flex;
19
- position: relative;
20
- justify-content: space-between;
21
- align-items: center;
21
+ export const SummaryRootCSS = css`
22
+ ${flexRow};
23
+ ${positionRelative};
24
+ ${justifyBetween};
25
+ ${alignCenter};
26
+ ${cursorPointer};
27
+ ${borderBox};
28
+ ${borderRadius4px};
22
29
  width: 100%;
23
30
  min-height: 56px;
24
- cursor: pointer;
25
- box-sizing: border-box;
26
31
  padding: 16px 24px;
27
- border-radius: 4px;
28
32
  &.background {
29
33
  background-color: ${headerbar};
30
34
  }
31
- .Accordion-Expand-Icon, .Accordion-Collapse-Icon {
32
- cursor: pointer;
35
+ .Accordion-Expand-Icon,
36
+ .Accordion-Collapse-Icon {
37
+ ${cursorPointer};
33
38
  color: ${active} !important;
34
39
  &:active,
35
40
  &:focus,
36
41
  &:hover {
42
+ ${backgroundTransparent};
37
43
  color: ${active};
38
- background-color: transparent;
39
44
  }
40
45
  }
41
46
  .Accordion-Icon-Root {
42
- display: flex;
47
+ ${flexRow};
43
48
  .Accordion-Icon.rotate-able {
49
+ ${borderBox};
44
50
  width: 24px;
45
51
  height: 24px;
46
- box-sizing: border-box;
47
52
  &:not(.TreeView) {
48
53
  transform: rotateZ(0deg);
49
54
  transform-origin: center;
@@ -54,8 +59,8 @@ export const SummaryRoot = css`
54
59
  }
55
60
  }
56
61
  &.start {
57
- flex-direction: row-reverse;
58
- justify-content: flex-end;
62
+ ${flexRowReverse};
63
+ ${justifyEnd};
59
64
  .Accordion-Icon.rotate-able {
60
65
  margin-right: 8px;
61
66
  &.TreeView {
@@ -103,7 +108,7 @@ export const SummaryRoot = css`
103
108
  }
104
109
  }
105
110
  &.disabled {
106
- pointer-events: none;
111
+ ${pointerEventsNone};
107
112
  background-color: ${fillDisabled};
108
113
  .DGN-UI-Accordion-Summary-Content,
109
114
  .Accordion-Expand-Icon {
@@ -111,58 +116,60 @@ export const SummaryRoot = css`
111
116
  }
112
117
  }
113
118
  &.treeview-disabled {
114
- pointer-events: none;
119
+ ${pointerEventsNone};
115
120
  &:hover {
116
- background-color: transparent;
121
+ ${backgroundTransparent};
117
122
  }
118
123
  .TreeView-Item {
119
124
  color: ${systemDisabled};
120
125
  }
121
126
  .Accordion-Icon.rotate-able.TreeView .DGN-UI-Icon {
127
+ ${cursorPointer};
122
128
  pointer-events: initial;
123
- cursor: pointer;
124
129
  }
125
130
  }
126
131
  .DGN-UI-Accordion-Summary-Content {
127
- display: flex;
128
- position: relative;
129
- align-items: center;
130
- ${typography.heading3};
132
+ ${heading3};
133
+ ${flexRow};
134
+ ${positionRelative};
135
+ ${alignCenter};
136
+ ${breakWord};
137
+ ${userSelectNone};
138
+ ${borderBox}
131
139
  color: ${active};
132
140
  width: 100%;
133
141
  min-height: 24px;
134
- word-break: break-word;
135
- user-select: none;
136
- box-sizing: border-box;
137
142
  }
138
143
  .Accordion-Icon {
139
- display: inline-block;
140
- position: relative;
141
- cursor: pointer;
144
+ ${displayInlineBlock};
145
+ ${positionRelative};
146
+ ${cursorPointer};
147
+ width: 24px;
148
+ height: 24px;
142
149
  transition: transform 200ms linear;
143
150
  .Accordion-Expand-Icon {
144
151
  transform: scale(1);
145
152
  transition: transform 200ms linear;
146
153
  &.effect {
147
- position: relative;
154
+ ${positionRelative};
148
155
  }
149
156
  }
150
157
  .Accordion-Collapse-Icon {
151
- position: absolute;
158
+ ${positionAbsolute};
152
159
  inset: 0;
153
160
  transform: scale(0);
154
161
  transition: transform 200ms linear;
155
162
  }
156
163
  .effect {
157
- display: inline-flex;
158
- justify-content: center;
159
- align-items: center;
164
+ ${inlineFlex};
165
+ ${justifyCenter};
166
+ ${alignCenter};
167
+ ${cursorPointer};
160
168
  min-width: 24px;
161
169
  max-width: 34px;
162
170
  min-height: 24px;
163
171
  max-height: 34px;
164
172
  padding: 3px;
165
- cursor: pointer;
166
173
  }
167
174
  }
168
175
  `;
@@ -1,11 +1,11 @@
1
1
  /** @jsxRuntime classic */
2
2
 
3
3
  /** @jsx jsx */
4
- import { memo, forwardRef, useRef } from 'react';
5
- import { any, string, node, object } from 'prop-types';
4
+ import { memo, forwardRef, useRef, useMemo, useImperativeHandle } from 'react';
5
+ import PropTypes from 'prop-types';
6
6
  import { jsx, css } from '@emotion/core';
7
7
  import { borderBox, displayBlock, overflowHidden, pointerEventsNone, positionRelative, userSelectNone } from '../../styles/general';
8
- import { typography } from "../../styles/typography";
8
+ import { typography } from '../../styles/typography';
9
9
  import { color as colors } from '../../styles/colors';
10
10
  const {
11
11
  paragraph1
@@ -19,54 +19,60 @@ const AccordionDetails = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
19
19
  children,
20
20
  className,
21
21
  style,
22
- ...props
23
- }, ref) => {
24
- if (!ref) {
25
- ref = useRef(null);
26
- }
22
+ id
23
+ }, reference) => {
24
+ const ref = useRef(null);
25
+ useImperativeHandle(reference, () => {
26
+ const currentRef = ref.current || {};
27
+ const _instance = {}; // methods
27
28
 
28
- const DetailsRoot = css`
29
- ${displayBlock}
30
- ${positionRelative}
31
- ${overflowHidden}
32
- height: 0;
33
- transition: height 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
34
- .DGN-UI-Accordion-Details-Content {
35
- ${borderBox}
36
- ${paragraph1}
37
- padding: 0 24px 16px 24px;
38
- color: ${main};
39
- &.disabled {
40
- ${pointerEventsNone}
41
- ${userSelectNone}
42
- }
43
- }
44
- `;
45
- return jsx("div", {
46
- css: DetailsRoot,
47
- className: 'DGN-UI-Accordion-Details',
48
- ref: ref,
49
- ...props
50
- }, jsx("div", {
51
- style: style,
52
- className: ['DGN-UI-Accordion-Details-Content', className].join(' ').trim().replace(/\s+/g, ' ')
53
- }, children));
29
+ _instance.__proto__ = {}; // hidden methods
30
+
31
+ currentRef.instance = _instance;
32
+ return currentRef;
33
+ });
34
+ return useMemo(() => {
35
+ return jsx("div", {
36
+ css: DetailsRootCSS,
37
+ className: 'DGN-UI-Accordion-Details',
38
+ ref: ref,
39
+ id: id
40
+ }, jsx("div", {
41
+ style: style,
42
+ className: ['DGN-UI-Accordion-Details-Content', className].join(' ').trim().replace(/\s+/g, ' ')
43
+ }, children));
44
+ }, [style, className, children, id]);
54
45
  }));
46
+ const DetailsRootCSS = css`
47
+ ${displayBlock};
48
+ ${positionRelative};
49
+ ${overflowHidden};
50
+ height: 0;
51
+ transition: height 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
52
+ .DGN-UI-Accordion-Details-Content {
53
+ ${borderBox};
54
+ ${paragraph1};
55
+ padding: 0 24px 16px 24px;
56
+ color: ${main};
57
+ &.disabled {
58
+ ${pointerEventsNone}
59
+ ${userSelectNone}
60
+ }
61
+ }
62
+ `;
55
63
  AccordionDetails.defaultProps = {
56
64
  className: '',
57
- style: {}
65
+ style: {},
66
+ id: ''
58
67
  };
59
68
  AccordionDetails.propTypes = {
60
69
  /** The element to display in alert like text props (priority) */
61
- children: node,
70
+ children: PropTypes.node,
62
71
 
63
72
  /** class for De */
64
- className: string,
65
-
66
- /** style inline for Detail */
67
- style: object,
73
+ className: PropTypes.string,
68
74
 
69
- /** any props else */
70
- props: any
75
+ /** style inline of component */
76
+ style: PropTypes.object
71
77
  };
72
78
  export default AccordionDetails;
@@ -1,7 +1,7 @@
1
1
  /** @jsxRuntime classic */
2
2
 
3
3
  /** @jsx jsx */
4
- import { memo, useRef, forwardRef, Children, cloneElement } from 'react';
4
+ import { memo, useRef, forwardRef, Children, cloneElement, useMemo, useImperativeHandle } from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import { jsx, css } from '@emotion/core';
7
7
  import { borderRadius4px } from '../../styles/general';
@@ -9,73 +9,9 @@ const AccordionGroup = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
9
9
  className,
10
10
  children,
11
11
  collapseOther,
12
- ...props
13
- }, ref) => {
14
- if (!ref) {
15
- ref = useRef(null);
16
- }
17
-
18
- const AccordionGroupRoot = css`
19
- ${borderRadius4px}
20
- .DGN-UI-Accordion {
21
- &:first-of-type {
22
- &,
23
- .DGN-UI-Accordion-Summary {
24
- border-radius: 4px 4px 0px 0px;
25
- }
26
- &.expanding {
27
- ${borderRadius4px}
28
- margin: 0 0 16px 0;
29
- .DGN-UI-Divider {
30
- display: none !important;
31
- }
32
- }
33
- }
34
- &:last-child {
35
- &,
36
- .DGN-UI-Accordion-Summary {
37
- border-radius: 0px 0px 4px 4px;
38
- }
39
- &.expanding {
40
- ${borderRadius4px}
41
- margin: 16px 0 0 0;
42
- .DGN-UI-Accordion-Summary {
43
- border-radius: 4px 4px 0px 0px;
44
- }
45
- .DGN-UI-Divider {
46
- display: none !important;
47
- }
48
- }
49
- }
50
- &:not(:first-of-type):not(:last-child) {
51
- &,
52
- .DGN-UI-Accordion-Summary {
53
- border-radius: 0px;
54
- }
55
- &.expanding {
56
- margin: 16px 0;
57
- border-radius: 4px;
58
- .DGN-UI-Accordion-Summary {
59
- border-radius: 4px 4px 0px 0px;
60
- }
61
- .DGN-UI-Divider {
62
- display: none !important;
63
- }
64
- }
65
- }
66
- &:not(:last-child) {
67
- .DGN-UI-Divider {
68
- display: block !important;
69
- }
70
- box-shadow: -2px 0px 2px -2px rgba(0, 0, 0, 0.25), 2px 0px 2px -2px rgba(0, 0, 0, 0.25);
71
- &.expanding,
72
- &.previousExpanding {
73
- ${borderRadius4px}
74
- box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.25);
75
- }
76
- }
77
- }
78
- `;
12
+ style
13
+ }, reference) => {
14
+ const ref = useRef(null);
79
15
 
80
16
  const onCollapseOther = (e, onExpand) => {
81
17
  if (collapseOther) {
@@ -90,18 +26,91 @@ const AccordionGroup = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
90
26
  }
91
27
  };
92
28
 
93
- return jsx("div", {
94
- css: AccordionGroupRoot,
95
- ref: ref,
96
- ...props,
97
- className: 'DGN-UI-Accordion-Group ' + className
98
- }, Children.map(children, child => /*#__PURE__*/cloneElement(child, {
99
- onExpand: e => onCollapseOther(e, child.props.onExpand)
100
- })));
29
+ useImperativeHandle(reference, () => {
30
+ const currentRef = ref.current || {};
31
+ const _instance = {}; // methods
32
+
33
+ _instance.__proto__ = {}; // hidden methods
34
+
35
+ currentRef.instance = _instance;
36
+ return currentRef;
37
+ });
38
+ return useMemo(() => {
39
+ return jsx("div", {
40
+ css: AccordionGroupRootCSS,
41
+ ref: ref,
42
+ style: style,
43
+ className: ['DGN-UI-Accordion-Group', className].join(' ').trim().replace(/\s+/g, ' ')
44
+ }, Children.map(children, child => /*#__PURE__*/cloneElement(child, {
45
+ onExpand: e => onCollapseOther(e, child.props.onExpand)
46
+ })));
47
+ }, [className, children]);
101
48
  }));
49
+ const AccordionGroupRootCSS = css`
50
+ ${borderRadius4px};
51
+ .DGN-UI-Accordion {
52
+ &:first-of-type {
53
+ &,
54
+ .DGN-UI-Accordion-Summary {
55
+ border-radius: 4px 4px 0px 0px;
56
+ }
57
+ &.expanding {
58
+ ${borderRadius4px};
59
+ margin: 0 0 16px 0;
60
+ .DGN-UI-Divider {
61
+ display: none !important;
62
+ }
63
+ }
64
+ }
65
+ &:last-child {
66
+ &,
67
+ .DGN-UI-Accordion-Summary {
68
+ border-radius: 0px 0px 4px 4px;
69
+ }
70
+ &.expanding {
71
+ ${borderRadius4px};
72
+ margin: 16px 0 0 0;
73
+ .DGN-UI-Accordion-Summary {
74
+ border-radius: 4px 4px 0px 0px;
75
+ }
76
+ .DGN-UI-Divider {
77
+ display: none !important;
78
+ }
79
+ }
80
+ }
81
+ &:not(:first-of-type):not(:last-child) {
82
+ &,
83
+ .DGN-UI-Accordion-Summary {
84
+ border-radius: 0px;
85
+ }
86
+ &.expanding {
87
+ ${borderRadius4px};
88
+ margin: 16px 0;
89
+ .DGN-UI-Accordion-Summary {
90
+ border-radius: 4px 4px 0px 0px;
91
+ }
92
+ .DGN-UI-Divider {
93
+ display: none !important;
94
+ }
95
+ }
96
+ }
97
+ &:not(:last-child) {
98
+ .DGN-UI-Divider {
99
+ display: block !important;
100
+ }
101
+ box-shadow: -2px 0px 2px -2px rgba(0, 0, 0, 0.25), 2px 0px 2px -2px rgba(0, 0, 0, 0.25);
102
+ &.expanding,
103
+ &.previousExpanding {
104
+ ${borderRadius4px};
105
+ box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.25);
106
+ }
107
+ }
108
+ }
109
+ `;
102
110
  AccordionGroup.defaultProps = {
103
111
  className: '',
104
- collapseOther: true
112
+ collapseOther: true,
113
+ style: {}
105
114
  };
106
115
  AccordionGroup.propTypes = {
107
116
  /** collapse other if true */
@@ -113,10 +122,7 @@ AccordionGroup.propTypes = {
113
122
  /** insist <Accordion /> */
114
123
  children: PropTypes.node.isRequired,
115
124
 
116
- /** style inline for AccordionGroup */
117
- style: PropTypes.object,
118
-
119
- /** any props else */
120
- props: PropTypes.any
125
+ /** style inline of component */
126
+ style: PropTypes.object
121
127
  };
122
128
  export default AccordionGroup;
@@ -1,7 +1,7 @@
1
1
  /** @jsxRuntime classic */
2
2
 
3
3
  /** @jsx jsx */
4
- import { memo, useEffect, useRef, forwardRef, useState } from 'react';
4
+ import { memo, useEffect, useRef, forwardRef, useState, useMemo, useImperativeHandle } from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import { jsx, css } from '@emotion/core';
7
7
  import AccordionContext from './context';
@@ -23,27 +23,10 @@ const Accordion = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
23
23
  boxShadow,
24
24
  className,
25
25
  children,
26
- ...props
27
- }, ref) => {
28
- if (!ref) {
29
- ref = useRef(null);
30
- }
31
-
26
+ style
27
+ }, reference) => {
28
+ const ref = useRef(null);
32
29
  const [expandState, setExpandState] = useState(expanded || expand);
33
- const AccordionRoot = css`
34
- ${displayBlock}
35
- ${positionRelative}
36
- ${borderRadius4px}
37
- width: 100%;
38
- transition: margin 300ms ease;
39
- &.boxShadow {
40
- box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.25);
41
- }
42
- &.disabled {
43
- cursor: no-drop;
44
- box-shadow: none;
45
- }
46
- `;
47
30
  useEffect(() => {
48
31
  if (ref.current) {
49
32
  const previous = ref.current.previousElementSibling;
@@ -63,34 +46,60 @@ const Accordion = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(({
63
46
  });
64
47
  };
65
48
 
66
- return jsx("div", {
67
- css: AccordionRoot,
68
- ref: ref,
69
- ...props,
70
- className: ['DGN-UI-Accordion', disabled ? 'disabled' : '', className, boxShadow === true ? 'boxShadow' : '', expandState ? 'expanding' : ''].join(' ').trim().replace(/\s+/g, ' ')
71
- }, jsx(AccordionContext.Provider, {
72
- value: {
73
- expanded,
74
- expandState,
75
- disabled,
76
- onClickAccordion: onClick ? onClickAccordion : null,
77
- onExpand,
78
- onCollapse,
79
- setExpandState
49
+ useImperativeHandle(reference, () => {
50
+ const currentRef = ref.current || {};
51
+ const _instance = {}; // methods
52
+
53
+ _instance.__proto__ = {}; // hidden methods
54
+
55
+ currentRef.instance = _instance;
56
+ return currentRef;
57
+ });
58
+ return useMemo(() => {
59
+ return jsx("div", {
60
+ css: AccordionRootCSS,
61
+ ref: ref,
62
+ style: style,
63
+ className: ['DGN-UI-Accordion', disabled ? 'disabled' : '', className, boxShadow === true ? 'boxShadow' : '', expandState ? 'expanding' : ''].join(' ').trim().replace(/\s+/g, ' ')
64
+ }, jsx(AccordionContext.Provider, {
65
+ value: {
66
+ expanded,
67
+ expandState,
68
+ disabled,
69
+ onClickAccordion: onClick ? onClickAccordion : null,
70
+ onExpand,
71
+ onCollapse,
72
+ setExpandState
73
+ }
74
+ }, children, jsx(Divider, {
75
+ color: category,
76
+ style: {
77
+ margin: 0,
78
+ display: 'none'
79
+ }
80
+ })));
81
+ }, [disabled, className, boxShadow, onClick, children, expanded, onExpand, onCollapse, expandState]);
82
+ }));
83
+ const AccordionRootCSS = css`
84
+ ${displayBlock};
85
+ ${positionRelative};
86
+ ${borderRadius4px};
87
+ width: 100%;
88
+ transition: margin 300ms ease;
89
+ &.boxShadow {
90
+ box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.25);
80
91
  }
81
- }, children, jsx(Divider, {
82
- color: category,
83
- style: {
84
- margin: 0,
85
- display: 'none'
92
+ &.disabled {
93
+ cursor: no-drop;
94
+ box-shadow: none;
86
95
  }
87
- })));
88
- }));
96
+ `;
89
97
  Accordion.defaultProps = {
90
98
  expand: false,
91
99
  disabled: false,
92
100
  className: '',
93
- boxShadow: true
101
+ boxShadow: true,
102
+ style: {}
94
103
  };
95
104
  Accordion.propTypes = {
96
105
  /** prevent all event if true */
@@ -117,10 +126,7 @@ Accordion.propTypes = {
117
126
  /** insist <AccordionSummary />, <AccordionDetails /> */
118
127
  children: PropTypes.node,
119
128
 
120
- /** style inline for Accordion */
121
- style: PropTypes.object,
122
-
123
- /** any props else */
124
- props: PropTypes.any
129
+ /** style inline of component */
130
+ style: PropTypes.object
125
131
  };
126
132
  export default Accordion;