@hitachivantara/uikit-react-lab 2.6.18

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 (388) hide show
  1. package/CHANGELOG.md +2334 -0
  2. package/LICENSE.txt +201 -0
  3. package/README.md +11 -0
  4. package/dist/AppSwitcherPanel/Action/Action.d.ts +67 -0
  5. package/dist/AppSwitcherPanel/Action/Action.js +255 -0
  6. package/dist/AppSwitcherPanel/Action/Action.js.map +1 -0
  7. package/dist/AppSwitcherPanel/Action/index.d.ts +2 -0
  8. package/dist/AppSwitcherPanel/Action/index.js +21 -0
  9. package/dist/AppSwitcherPanel/Action/index.js.map +1 -0
  10. package/dist/AppSwitcherPanel/Action/styles.js +91 -0
  11. package/dist/AppSwitcherPanel/Action/styles.js.map +1 -0
  12. package/dist/AppSwitcherPanel/AppSwitcherPanel.d.ts +50 -0
  13. package/dist/AppSwitcherPanel/AppSwitcherPanel.js +230 -0
  14. package/dist/AppSwitcherPanel/AppSwitcherPanel.js.map +1 -0
  15. package/dist/AppSwitcherPanel/index.d.ts +2 -0
  16. package/dist/AppSwitcherPanel/index.js +21 -0
  17. package/dist/AppSwitcherPanel/index.js.map +1 -0
  18. package/dist/AppSwitcherPanel/styles.js +83 -0
  19. package/dist/AppSwitcherPanel/styles.js.map +1 -0
  20. package/dist/CodeEditor/CodeEditor.d.ts +14 -0
  21. package/dist/CodeEditor/CodeEditor.js +144 -0
  22. package/dist/CodeEditor/CodeEditor.js.map +1 -0
  23. package/dist/CodeEditor/index.d.ts +2 -0
  24. package/dist/CodeEditor/index.js +16 -0
  25. package/dist/CodeEditor/index.js.map +1 -0
  26. package/dist/CodeEditor/styles.js +53 -0
  27. package/dist/CodeEditor/styles.js.map +1 -0
  28. package/dist/Footer/Footer.d.ts +12 -0
  29. package/dist/Footer/Footer.js +67 -0
  30. package/dist/Footer/Footer.js.map +1 -0
  31. package/dist/Footer/index.d.ts +2 -0
  32. package/dist/Footer/index.js +16 -0
  33. package/dist/Footer/index.js.map +1 -0
  34. package/dist/Footer/styles.js +54 -0
  35. package/dist/Footer/styles.js.map +1 -0
  36. package/dist/FormComposer/FormComposer.d.ts +41 -0
  37. package/dist/FormComposer/FormComposer.js +258 -0
  38. package/dist/FormComposer/FormComposer.js.map +1 -0
  39. package/dist/FormComposer/index.d.ts +2 -0
  40. package/dist/FormComposer/index.js +16 -0
  41. package/dist/FormComposer/index.js.map +1 -0
  42. package/dist/FormComposer/styles.js +39 -0
  43. package/dist/FormComposer/styles.js.map +1 -0
  44. package/dist/Loading/Loading.d.ts +32 -0
  45. package/dist/Loading/Loading.js +89 -0
  46. package/dist/Loading/Loading.js.map +1 -0
  47. package/dist/Loading/LoadingWithDelay.d.ts +12 -0
  48. package/dist/Loading/LoadingWithDelay.js +135 -0
  49. package/dist/Loading/LoadingWithDelay.js.map +1 -0
  50. package/dist/Loading/index.d.ts +2 -0
  51. package/dist/Loading/index.js +16 -0
  52. package/dist/Loading/index.js.map +1 -0
  53. package/dist/Loading/styles.js +85 -0
  54. package/dist/Loading/styles.js.map +1 -0
  55. package/dist/NavigationAnchors/NavigationAnchors.d.ts +46 -0
  56. package/dist/NavigationAnchors/NavigationAnchors.js +297 -0
  57. package/dist/NavigationAnchors/NavigationAnchors.js.map +1 -0
  58. package/dist/NavigationAnchors/index.d.ts +2 -0
  59. package/dist/NavigationAnchors/index.js +16 -0
  60. package/dist/NavigationAnchors/index.js.map +1 -0
  61. package/dist/NavigationAnchors/styles.js +87 -0
  62. package/dist/NavigationAnchors/styles.js.map +1 -0
  63. package/dist/NotificationPanel/Notification/Notification.js +153 -0
  64. package/dist/NotificationPanel/Notification/Notification.js.map +1 -0
  65. package/dist/NotificationPanel/Notification/index.js +21 -0
  66. package/dist/NotificationPanel/Notification/index.js.map +1 -0
  67. package/dist/NotificationPanel/Notification/styles.js +73 -0
  68. package/dist/NotificationPanel/Notification/styles.js.map +1 -0
  69. package/dist/NotificationPanel/NotificationPanel.d.ts +49 -0
  70. package/dist/NotificationPanel/NotificationPanel.js +219 -0
  71. package/dist/NotificationPanel/NotificationPanel.js.map +1 -0
  72. package/dist/NotificationPanel/Panel/Panel.js +202 -0
  73. package/dist/NotificationPanel/Panel/Panel.js.map +1 -0
  74. package/dist/NotificationPanel/Panel/index.js +21 -0
  75. package/dist/NotificationPanel/Panel/index.js.map +1 -0
  76. package/dist/NotificationPanel/Panel/styles.js +84 -0
  77. package/dist/NotificationPanel/Panel/styles.js.map +1 -0
  78. package/dist/NotificationPanel/index.d.ts +2 -0
  79. package/dist/NotificationPanel/index.js +16 -0
  80. package/dist/NotificationPanel/index.js.map +1 -0
  81. package/dist/NotificationPanel/styles.js +16 -0
  82. package/dist/NotificationPanel/styles.js.map +1 -0
  83. package/dist/Slider/KnobRing/KnobRing.js +26 -0
  84. package/dist/Slider/KnobRing/KnobRing.js.map +1 -0
  85. package/dist/Slider/KnobRing/index.js +19 -0
  86. package/dist/Slider/KnobRing/index.js.map +1 -0
  87. package/dist/Slider/KnobRing/styles.js +40 -0
  88. package/dist/Slider/KnobRing/styles.js.map +1 -0
  89. package/dist/Slider/Slider.d.ts +133 -0
  90. package/dist/Slider/Slider.js +607 -0
  91. package/dist/Slider/Slider.js.map +1 -0
  92. package/dist/Slider/index.d.ts +2 -0
  93. package/dist/Slider/index.js +16 -0
  94. package/dist/Slider/index.js.map +1 -0
  95. package/dist/Slider/styles.js +125 -0
  96. package/dist/Slider/styles.js.map +1 -0
  97. package/dist/TimePicker/PeriodPicker/PeriodPicker.js +128 -0
  98. package/dist/TimePicker/PeriodPicker/PeriodPicker.js.map +1 -0
  99. package/dist/TimePicker/PeriodPicker/index.js +21 -0
  100. package/dist/TimePicker/PeriodPicker/index.js.map +1 -0
  101. package/dist/TimePicker/PeriodPicker/styles.js +63 -0
  102. package/dist/TimePicker/PeriodPicker/styles.js.map +1 -0
  103. package/dist/TimePicker/TimePicker.d.ts +77 -0
  104. package/dist/TimePicker/TimePicker.js +425 -0
  105. package/dist/TimePicker/TimePicker.js.map +1 -0
  106. package/dist/TimePicker/UnitTimePicker/UnitTimePicker.js +225 -0
  107. package/dist/TimePicker/UnitTimePicker/UnitTimePicker.js.map +1 -0
  108. package/dist/TimePicker/UnitTimePicker/index.js +21 -0
  109. package/dist/TimePicker/UnitTimePicker/index.js.map +1 -0
  110. package/dist/TimePicker/UnitTimePicker/styles.js +80 -0
  111. package/dist/TimePicker/UnitTimePicker/styles.js.map +1 -0
  112. package/dist/TimePicker/enums.js +40 -0
  113. package/dist/TimePicker/enums.js.map +1 -0
  114. package/dist/TimePicker/index.d.ts +2 -0
  115. package/dist/TimePicker/index.js +16 -0
  116. package/dist/TimePicker/index.js.map +1 -0
  117. package/dist/TimePicker/styles.js +113 -0
  118. package/dist/TimePicker/styles.js.map +1 -0
  119. package/dist/TimePicker/timePickerConverter.js +90 -0
  120. package/dist/TimePicker/timePickerConverter.js.map +1 -0
  121. package/dist/TimePicker/timePickerFormatter.js +77 -0
  122. package/dist/TimePicker/timePickerFormatter.js.map +1 -0
  123. package/dist/TimePicker/timePickerUtils.js +36 -0
  124. package/dist/TimePicker/timePickerUtils.js.map +1 -0
  125. package/dist/index.d.ts +26 -0
  126. package/dist/index.js +80 -0
  127. package/dist/index.js.map +1 -0
  128. package/dist/legacy/AppSwitcherPanel/Action/Action.d.ts +67 -0
  129. package/dist/legacy/AppSwitcherPanel/Action/Action.js +214 -0
  130. package/dist/legacy/AppSwitcherPanel/Action/Action.js.map +1 -0
  131. package/dist/legacy/AppSwitcherPanel/Action/index.d.ts +2 -0
  132. package/dist/legacy/AppSwitcherPanel/Action/index.js +7 -0
  133. package/dist/legacy/AppSwitcherPanel/Action/index.js.map +1 -0
  134. package/dist/legacy/AppSwitcherPanel/Action/styles.js +83 -0
  135. package/dist/legacy/AppSwitcherPanel/Action/styles.js.map +1 -0
  136. package/dist/legacy/AppSwitcherPanel/AppSwitcherPanel.d.ts +50 -0
  137. package/dist/legacy/AppSwitcherPanel/AppSwitcherPanel.js +195 -0
  138. package/dist/legacy/AppSwitcherPanel/AppSwitcherPanel.js.map +1 -0
  139. package/dist/legacy/AppSwitcherPanel/index.d.ts +2 -0
  140. package/dist/legacy/AppSwitcherPanel/index.js +7 -0
  141. package/dist/legacy/AppSwitcherPanel/index.js.map +1 -0
  142. package/dist/legacy/AppSwitcherPanel/styles.js +65 -0
  143. package/dist/legacy/AppSwitcherPanel/styles.js.map +1 -0
  144. package/dist/legacy/CodeEditor/CodeEditor.d.ts +14 -0
  145. package/dist/legacy/CodeEditor/CodeEditor.js +114 -0
  146. package/dist/legacy/CodeEditor/CodeEditor.js.map +1 -0
  147. package/dist/legacy/CodeEditor/index.d.ts +2 -0
  148. package/dist/legacy/CodeEditor/index.js +2 -0
  149. package/dist/legacy/CodeEditor/index.js.map +1 -0
  150. package/dist/legacy/CodeEditor/styles.js +45 -0
  151. package/dist/legacy/CodeEditor/styles.js.map +1 -0
  152. package/dist/legacy/Footer/Footer.d.ts +12 -0
  153. package/dist/legacy/Footer/Footer.js +51 -0
  154. package/dist/legacy/Footer/Footer.js.map +1 -0
  155. package/dist/legacy/Footer/index.d.ts +2 -0
  156. package/dist/legacy/Footer/index.js +2 -0
  157. package/dist/legacy/Footer/index.js.map +1 -0
  158. package/dist/legacy/Footer/styles.js +44 -0
  159. package/dist/legacy/Footer/styles.js.map +1 -0
  160. package/dist/legacy/FormComposer/FormComposer.d.ts +41 -0
  161. package/dist/legacy/FormComposer/FormComposer.js +218 -0
  162. package/dist/legacy/FormComposer/FormComposer.js.map +1 -0
  163. package/dist/legacy/FormComposer/index.d.ts +2 -0
  164. package/dist/legacy/FormComposer/index.js +2 -0
  165. package/dist/legacy/FormComposer/index.js.map +1 -0
  166. package/dist/legacy/FormComposer/styles.js +31 -0
  167. package/dist/legacy/FormComposer/styles.js.map +1 -0
  168. package/dist/legacy/Loading/Loading.d.ts +32 -0
  169. package/dist/legacy/Loading/Loading.js +71 -0
  170. package/dist/legacy/Loading/Loading.js.map +1 -0
  171. package/dist/legacy/Loading/LoadingWithDelay.d.ts +12 -0
  172. package/dist/legacy/Loading/LoadingWithDelay.js +97 -0
  173. package/dist/legacy/Loading/LoadingWithDelay.js.map +1 -0
  174. package/dist/legacy/Loading/index.d.ts +2 -0
  175. package/dist/legacy/Loading/index.js +2 -0
  176. package/dist/legacy/Loading/index.js.map +1 -0
  177. package/dist/legacy/Loading/styles.js +78 -0
  178. package/dist/legacy/Loading/styles.js.map +1 -0
  179. package/dist/legacy/NavigationAnchors/NavigationAnchors.d.ts +46 -0
  180. package/dist/legacy/NavigationAnchors/NavigationAnchors.js +275 -0
  181. package/dist/legacy/NavigationAnchors/NavigationAnchors.js.map +1 -0
  182. package/dist/legacy/NavigationAnchors/index.d.ts +2 -0
  183. package/dist/legacy/NavigationAnchors/index.js +2 -0
  184. package/dist/legacy/NavigationAnchors/index.js.map +1 -0
  185. package/dist/legacy/NavigationAnchors/styles.js +70 -0
  186. package/dist/legacy/NavigationAnchors/styles.js.map +1 -0
  187. package/dist/legacy/NotificationPanel/Notification/Notification.js +119 -0
  188. package/dist/legacy/NotificationPanel/Notification/Notification.js.map +1 -0
  189. package/dist/legacy/NotificationPanel/Notification/index.js +7 -0
  190. package/dist/legacy/NotificationPanel/Notification/index.js.map +1 -0
  191. package/dist/legacy/NotificationPanel/Notification/styles.js +56 -0
  192. package/dist/legacy/NotificationPanel/Notification/styles.js.map +1 -0
  193. package/dist/legacy/NotificationPanel/NotificationPanel.d.ts +49 -0
  194. package/dist/legacy/NotificationPanel/NotificationPanel.js +182 -0
  195. package/dist/legacy/NotificationPanel/NotificationPanel.js.map +1 -0
  196. package/dist/legacy/NotificationPanel/Panel/Panel.js +166 -0
  197. package/dist/legacy/NotificationPanel/Panel/Panel.js.map +1 -0
  198. package/dist/legacy/NotificationPanel/Panel/index.js +7 -0
  199. package/dist/legacy/NotificationPanel/Panel/index.js.map +1 -0
  200. package/dist/legacy/NotificationPanel/Panel/styles.js +66 -0
  201. package/dist/legacy/NotificationPanel/Panel/styles.js.map +1 -0
  202. package/dist/legacy/NotificationPanel/index.d.ts +2 -0
  203. package/dist/legacy/NotificationPanel/index.js +2 -0
  204. package/dist/legacy/NotificationPanel/index.js.map +1 -0
  205. package/dist/legacy/NotificationPanel/styles.js +9 -0
  206. package/dist/legacy/NotificationPanel/styles.js.map +1 -0
  207. package/dist/legacy/Slider/KnobRing/KnobRing.js +15 -0
  208. package/dist/legacy/Slider/KnobRing/KnobRing.js.map +1 -0
  209. package/dist/legacy/Slider/KnobRing/index.js +5 -0
  210. package/dist/legacy/Slider/KnobRing/index.js.map +1 -0
  211. package/dist/legacy/Slider/KnobRing/styles.js +32 -0
  212. package/dist/legacy/Slider/KnobRing/styles.js.map +1 -0
  213. package/dist/legacy/Slider/Slider.d.ts +133 -0
  214. package/dist/legacy/Slider/Slider.js +583 -0
  215. package/dist/legacy/Slider/Slider.js.map +1 -0
  216. package/dist/legacy/Slider/index.d.ts +2 -0
  217. package/dist/legacy/Slider/index.js +2 -0
  218. package/dist/legacy/Slider/index.js.map +1 -0
  219. package/dist/legacy/Slider/styles.js +108 -0
  220. package/dist/legacy/Slider/styles.js.map +1 -0
  221. package/dist/legacy/TimePicker/PeriodPicker/PeriodPicker.js +110 -0
  222. package/dist/legacy/TimePicker/PeriodPicker/PeriodPicker.js.map +1 -0
  223. package/dist/legacy/TimePicker/PeriodPicker/index.js +7 -0
  224. package/dist/legacy/TimePicker/PeriodPicker/index.js.map +1 -0
  225. package/dist/legacy/TimePicker/PeriodPicker/styles.js +46 -0
  226. package/dist/legacy/TimePicker/PeriodPicker/styles.js.map +1 -0
  227. package/dist/legacy/TimePicker/TimePicker.d.ts +77 -0
  228. package/dist/legacy/TimePicker/TimePicker.js +402 -0
  229. package/dist/legacy/TimePicker/TimePicker.js.map +1 -0
  230. package/dist/legacy/TimePicker/UnitTimePicker/UnitTimePicker.js +207 -0
  231. package/dist/legacy/TimePicker/UnitTimePicker/UnitTimePicker.js.map +1 -0
  232. package/dist/legacy/TimePicker/UnitTimePicker/index.js +7 -0
  233. package/dist/legacy/TimePicker/UnitTimePicker/index.js.map +1 -0
  234. package/dist/legacy/TimePicker/UnitTimePicker/styles.js +63 -0
  235. package/dist/legacy/TimePicker/UnitTimePicker/styles.js.map +1 -0
  236. package/dist/legacy/TimePicker/enums.js +32 -0
  237. package/dist/legacy/TimePicker/enums.js.map +1 -0
  238. package/dist/legacy/TimePicker/index.d.ts +2 -0
  239. package/dist/legacy/TimePicker/index.js +2 -0
  240. package/dist/legacy/TimePicker/index.js.map +1 -0
  241. package/dist/legacy/TimePicker/styles.js +96 -0
  242. package/dist/legacy/TimePicker/styles.js.map +1 -0
  243. package/dist/legacy/TimePicker/timePickerConverter.js +71 -0
  244. package/dist/legacy/TimePicker/timePickerConverter.js.map +1 -0
  245. package/dist/legacy/TimePicker/timePickerFormatter.js +63 -0
  246. package/dist/legacy/TimePicker/timePickerFormatter.js.map +1 -0
  247. package/dist/legacy/TimePicker/timePickerUtils.js +27 -0
  248. package/dist/legacy/TimePicker/timePickerUtils.js.map +1 -0
  249. package/dist/legacy/index.d.ts +26 -0
  250. package/dist/legacy/index.js +11 -0
  251. package/dist/legacy/index.js.map +1 -0
  252. package/dist/legacy/withStyleProps/WithStyleProps.js +14 -0
  253. package/dist/legacy/withStyleProps/WithStyleProps.js.map +1 -0
  254. package/dist/legacy/withStyleProps/index.js +2 -0
  255. package/dist/legacy/withStyleProps/index.js.map +1 -0
  256. package/dist/modern/AppSwitcherPanel/Action/Action.d.ts +67 -0
  257. package/dist/modern/AppSwitcherPanel/Action/Action.js +177 -0
  258. package/dist/modern/AppSwitcherPanel/Action/Action.js.map +1 -0
  259. package/dist/modern/AppSwitcherPanel/Action/index.d.ts +2 -0
  260. package/dist/modern/AppSwitcherPanel/Action/index.js +7 -0
  261. package/dist/modern/AppSwitcherPanel/Action/index.js.map +1 -0
  262. package/dist/modern/AppSwitcherPanel/Action/styles.js +77 -0
  263. package/dist/modern/AppSwitcherPanel/Action/styles.js.map +1 -0
  264. package/dist/modern/AppSwitcherPanel/AppSwitcherPanel.d.ts +50 -0
  265. package/dist/modern/AppSwitcherPanel/AppSwitcherPanel.js +167 -0
  266. package/dist/modern/AppSwitcherPanel/AppSwitcherPanel.js.map +1 -0
  267. package/dist/modern/AppSwitcherPanel/index.d.ts +2 -0
  268. package/dist/modern/AppSwitcherPanel/index.js +7 -0
  269. package/dist/modern/AppSwitcherPanel/index.js.map +1 -0
  270. package/dist/modern/AppSwitcherPanel/styles.js +55 -0
  271. package/dist/modern/AppSwitcherPanel/styles.js.map +1 -0
  272. package/dist/modern/CodeEditor/CodeEditor.d.ts +14 -0
  273. package/dist/modern/CodeEditor/CodeEditor.js +109 -0
  274. package/dist/modern/CodeEditor/CodeEditor.js.map +1 -0
  275. package/dist/modern/CodeEditor/index.d.ts +2 -0
  276. package/dist/modern/CodeEditor/index.js +2 -0
  277. package/dist/modern/CodeEditor/index.js.map +1 -0
  278. package/dist/modern/CodeEditor/styles.js +43 -0
  279. package/dist/modern/CodeEditor/styles.js.map +1 -0
  280. package/dist/modern/Footer/Footer.d.ts +12 -0
  281. package/dist/modern/Footer/Footer.js +51 -0
  282. package/dist/modern/Footer/Footer.js.map +1 -0
  283. package/dist/modern/Footer/index.d.ts +2 -0
  284. package/dist/modern/Footer/index.js +2 -0
  285. package/dist/modern/Footer/index.js.map +1 -0
  286. package/dist/modern/Footer/styles.js +43 -0
  287. package/dist/modern/Footer/styles.js.map +1 -0
  288. package/dist/modern/FormComposer/FormComposer.d.ts +41 -0
  289. package/dist/modern/FormComposer/FormComposer.js +183 -0
  290. package/dist/modern/FormComposer/FormComposer.js.map +1 -0
  291. package/dist/modern/FormComposer/index.d.ts +2 -0
  292. package/dist/modern/FormComposer/index.js +2 -0
  293. package/dist/modern/FormComposer/index.js.map +1 -0
  294. package/dist/modern/FormComposer/styles.js +29 -0
  295. package/dist/modern/FormComposer/styles.js.map +1 -0
  296. package/dist/modern/Loading/Loading.d.ts +32 -0
  297. package/dist/modern/Loading/Loading.js +72 -0
  298. package/dist/modern/Loading/Loading.js.map +1 -0
  299. package/dist/modern/Loading/LoadingWithDelay.d.ts +12 -0
  300. package/dist/modern/Loading/LoadingWithDelay.js +92 -0
  301. package/dist/modern/Loading/LoadingWithDelay.js.map +1 -0
  302. package/dist/modern/Loading/index.d.ts +2 -0
  303. package/dist/modern/Loading/index.js +2 -0
  304. package/dist/modern/Loading/index.js.map +1 -0
  305. package/dist/modern/Loading/styles.js +76 -0
  306. package/dist/modern/Loading/styles.js.map +1 -0
  307. package/dist/modern/NavigationAnchors/NavigationAnchors.d.ts +46 -0
  308. package/dist/modern/NavigationAnchors/NavigationAnchors.js +243 -0
  309. package/dist/modern/NavigationAnchors/NavigationAnchors.js.map +1 -0
  310. package/dist/modern/NavigationAnchors/index.d.ts +2 -0
  311. package/dist/modern/NavigationAnchors/index.js +2 -0
  312. package/dist/modern/NavigationAnchors/index.js.map +1 -0
  313. package/dist/modern/NavigationAnchors/styles.js +61 -0
  314. package/dist/modern/NavigationAnchors/styles.js.map +1 -0
  315. package/dist/modern/NotificationPanel/Notification/Notification.js +90 -0
  316. package/dist/modern/NotificationPanel/Notification/Notification.js.map +1 -0
  317. package/dist/modern/NotificationPanel/Notification/index.js +7 -0
  318. package/dist/modern/NotificationPanel/Notification/index.js.map +1 -0
  319. package/dist/modern/NotificationPanel/Notification/styles.js +45 -0
  320. package/dist/modern/NotificationPanel/Notification/styles.js.map +1 -0
  321. package/dist/modern/NotificationPanel/NotificationPanel.d.ts +49 -0
  322. package/dist/modern/NotificationPanel/NotificationPanel.js +153 -0
  323. package/dist/modern/NotificationPanel/NotificationPanel.js.map +1 -0
  324. package/dist/modern/NotificationPanel/Panel/Panel.js +133 -0
  325. package/dist/modern/NotificationPanel/Panel/Panel.js.map +1 -0
  326. package/dist/modern/NotificationPanel/Panel/index.js +7 -0
  327. package/dist/modern/NotificationPanel/Panel/index.js.map +1 -0
  328. package/dist/modern/NotificationPanel/Panel/styles.js +56 -0
  329. package/dist/modern/NotificationPanel/Panel/styles.js.map +1 -0
  330. package/dist/modern/NotificationPanel/index.d.ts +2 -0
  331. package/dist/modern/NotificationPanel/index.js +2 -0
  332. package/dist/modern/NotificationPanel/index.js.map +1 -0
  333. package/dist/modern/NotificationPanel/styles.js +9 -0
  334. package/dist/modern/NotificationPanel/styles.js.map +1 -0
  335. package/dist/modern/Slider/KnobRing/KnobRing.js +17 -0
  336. package/dist/modern/Slider/KnobRing/KnobRing.js.map +1 -0
  337. package/dist/modern/Slider/KnobRing/index.js +5 -0
  338. package/dist/modern/Slider/KnobRing/index.js.map +1 -0
  339. package/dist/modern/Slider/KnobRing/styles.js +34 -0
  340. package/dist/modern/Slider/KnobRing/styles.js.map +1 -0
  341. package/dist/modern/Slider/Slider.d.ts +133 -0
  342. package/dist/modern/Slider/Slider.js +542 -0
  343. package/dist/modern/Slider/Slider.js.map +1 -0
  344. package/dist/modern/Slider/index.d.ts +2 -0
  345. package/dist/modern/Slider/index.js +2 -0
  346. package/dist/modern/Slider/index.js.map +1 -0
  347. package/dist/modern/Slider/styles.js +99 -0
  348. package/dist/modern/Slider/styles.js.map +1 -0
  349. package/dist/modern/TimePicker/PeriodPicker/PeriodPicker.js +88 -0
  350. package/dist/modern/TimePicker/PeriodPicker/PeriodPicker.js.map +1 -0
  351. package/dist/modern/TimePicker/PeriodPicker/index.js +7 -0
  352. package/dist/modern/TimePicker/PeriodPicker/index.js.map +1 -0
  353. package/dist/modern/TimePicker/PeriodPicker/styles.js +37 -0
  354. package/dist/modern/TimePicker/PeriodPicker/styles.js.map +1 -0
  355. package/dist/modern/TimePicker/TimePicker.d.ts +77 -0
  356. package/dist/modern/TimePicker/TimePicker.js +394 -0
  357. package/dist/modern/TimePicker/TimePicker.js.map +1 -0
  358. package/dist/modern/TimePicker/UnitTimePicker/UnitTimePicker.js +186 -0
  359. package/dist/modern/TimePicker/UnitTimePicker/UnitTimePicker.js.map +1 -0
  360. package/dist/modern/TimePicker/UnitTimePicker/index.js +7 -0
  361. package/dist/modern/TimePicker/UnitTimePicker/index.js.map +1 -0
  362. package/dist/modern/TimePicker/UnitTimePicker/styles.js +54 -0
  363. package/dist/modern/TimePicker/UnitTimePicker/styles.js.map +1 -0
  364. package/dist/modern/TimePicker/enums.js +32 -0
  365. package/dist/modern/TimePicker/enums.js.map +1 -0
  366. package/dist/modern/TimePicker/index.d.ts +2 -0
  367. package/dist/modern/TimePicker/index.js +2 -0
  368. package/dist/modern/TimePicker/index.js.map +1 -0
  369. package/dist/modern/TimePicker/styles.js +87 -0
  370. package/dist/modern/TimePicker/styles.js.map +1 -0
  371. package/dist/modern/TimePicker/timePickerConverter.js +66 -0
  372. package/dist/modern/TimePicker/timePickerConverter.js.map +1 -0
  373. package/dist/modern/TimePicker/timePickerFormatter.js +62 -0
  374. package/dist/modern/TimePicker/timePickerFormatter.js.map +1 -0
  375. package/dist/modern/TimePicker/timePickerUtils.js +26 -0
  376. package/dist/modern/TimePicker/timePickerUtils.js.map +1 -0
  377. package/dist/modern/index.d.ts +26 -0
  378. package/dist/modern/index.js +11 -0
  379. package/dist/modern/index.js.map +1 -0
  380. package/dist/modern/withStyleProps/WithStyleProps.js +10 -0
  381. package/dist/modern/withStyleProps/WithStyleProps.js.map +1 -0
  382. package/dist/modern/withStyleProps/index.js +2 -0
  383. package/dist/modern/withStyleProps/index.js.map +1 -0
  384. package/dist/withStyleProps/WithStyleProps.js +25 -0
  385. package/dist/withStyleProps/WithStyleProps.js.map +1 -0
  386. package/dist/withStyleProps/index.js +16 -0
  387. package/dist/withStyleProps/index.js.map +1 -0
  388. package/package.json +72 -0
@@ -0,0 +1,394 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
+ import "core-js/modules/es.array.includes.js";
3
+
4
+ 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; }
5
+
6
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
+
8
+ import React from "react";
9
+ import PropTypes from "prop-types";
10
+ import { ClickAwayListener, Popper, withStyles } from "@material-ui/core";
11
+ import clsx from "clsx";
12
+ import { HvTypography } from "@hitachivantara/uikit-react-core";
13
+ import { Time as TimeIcon } from "@hitachivantara/uikit-react-icons";
14
+ import UnitTimePicker from "./UnitTimePicker";
15
+ import { TimePickerUnits, TimeFormat } from "./enums";
16
+ import { getPeriodForDate } from "./timePickerUtils";
17
+ import { getFormattedTime, getTimeFormatForLocale } from "./timePickerFormatter";
18
+ import { getHoursForTimeFormat, getTimeWithFormat24 } from "./timePickerConverter";
19
+ import PeriodPicker from "./PeriodPicker";
20
+ import styles from "./styles";
21
+ /**
22
+ * A TimePicker component with a popup used to choose the time, following specifications provided by Design System. Still in development.
23
+ */
24
+
25
+ class HvTimePicker extends React.Component {
26
+ constructor(props) {
27
+ super(props);
28
+
29
+ _defineProperty(this, "handleTimePopperClickAway", () => {
30
+ this.cancelTimeSelection();
31
+ });
32
+
33
+ _defineProperty(this, "handleTimeIconClick", event => {
34
+ const {
35
+ currentTarget
36
+ } = event;
37
+ const {
38
+ timePopperOpen
39
+ } = this.state;
40
+ this.setTimePopperState(currentTarget.parentElement, !timePopperOpen);
41
+ });
42
+
43
+ _defineProperty(this, "cancelTimeSelection", () => {
44
+ this.setTimePopperState(null, false);
45
+ });
46
+
47
+ _defineProperty(this, "handleHoursChange", hours => {
48
+ const {
49
+ selectedTime
50
+ } = this.state;
51
+
52
+ const newSelectedTime = _objectSpread(_objectSpread({}, selectedTime), {}, {
53
+ hours
54
+ });
55
+
56
+ this.onSelectedTimeChange(newSelectedTime);
57
+ });
58
+
59
+ _defineProperty(this, "handleMinutesChange", minutes => {
60
+ const {
61
+ selectedTime
62
+ } = this.state;
63
+
64
+ const newSelectedTime = _objectSpread(_objectSpread({}, selectedTime), {}, {
65
+ minutes
66
+ });
67
+
68
+ this.onSelectedTimeChange(newSelectedTime);
69
+ });
70
+
71
+ _defineProperty(this, "handleSecondsChange", seconds => {
72
+ const {
73
+ selectedTime
74
+ } = this.state;
75
+
76
+ const newSelectedTime = _objectSpread(_objectSpread({}, selectedTime), {}, {
77
+ seconds
78
+ });
79
+
80
+ this.onSelectedTimeChange(newSelectedTime);
81
+ });
82
+
83
+ _defineProperty(this, "handleChangePeriod", period => {
84
+ const {
85
+ selectedTime
86
+ } = this.state;
87
+
88
+ const newSelectedTime = _objectSpread(_objectSpread({}, selectedTime), {}, {
89
+ period
90
+ });
91
+
92
+ this.onSelectedTimeChange(newSelectedTime);
93
+ });
94
+
95
+ _defineProperty(this, "setTimePopperState", (anchor, open) => {
96
+ this.setState({
97
+ timePopperAnchor: anchor,
98
+ timePopperOpen: open
99
+ });
100
+ });
101
+
102
+ _defineProperty(this, "setTimePopperPlacement", placement => {
103
+ const {
104
+ timePopperPlacement
105
+ } = this.state;
106
+
107
+ if (timePopperPlacement !== placement) {
108
+ this.setState({
109
+ timePopperPlacement: placement
110
+ });
111
+ }
112
+ });
113
+
114
+ _defineProperty(this, "onSelectedTimeChange", selectedTime => {
115
+ const {
116
+ onChange
117
+ } = this.props;
118
+ const {
119
+ timeFormat
120
+ } = this.state;
121
+ this.setState({
122
+ selectedTime
123
+ });
124
+ const selectedTimeIn24Format = getTimeWithFormat24(selectedTime, timeFormat);
125
+ onChange(selectedTimeIn24Format);
126
+ });
127
+
128
+ _defineProperty(this, "getTimeFormat", () => {
129
+ const {
130
+ timeFormat,
131
+ locale
132
+ } = this.props;
133
+
134
+ if (timeFormat) {
135
+ return timeFormat;
136
+ }
137
+
138
+ return getTimeFormatForLocale(locale);
139
+ });
140
+
141
+ _defineProperty(this, "isPopperBelowParent", () => {
142
+ const {
143
+ timePopperPlacement
144
+ } = this.state;
145
+ return timePopperPlacement.includes("bottom");
146
+ });
147
+
148
+ _defineProperty(this, "renderLabel", () => {
149
+ const {
150
+ classes,
151
+ labels
152
+ } = this.props;
153
+ return /*#__PURE__*/React.createElement(HvTypography, {
154
+ variant: "labelText",
155
+ className: classes.label
156
+ }, labels.title);
157
+ });
158
+
159
+ _defineProperty(this, "renderInput", () => {
160
+ const {
161
+ classes,
162
+ labels
163
+ } = this.props;
164
+ const {
165
+ selectedTime,
166
+ timePopperOpen
167
+ } = this.state;
168
+ const isPopperBelow = this.isPopperBelowParent();
169
+ return /*#__PURE__*/React.createElement(React.Fragment, null, labels && labels.title && this.renderLabel(), /*#__PURE__*/React.createElement("div", {
170
+ className: clsx(classes.inputContainer, timePopperOpen ? isPopperBelow ? classes.inputPopperOpenedBelow : classes.inputPopperOpenedAbove : classes.inputPopperClosed)
171
+ }, /*#__PURE__*/React.createElement("input", {
172
+ ref: element => {
173
+ this.inputElement = element;
174
+ },
175
+ className: classes.input,
176
+ value: getFormattedTime(selectedTime),
177
+ placeholder: labels.placeholder,
178
+ type: "text",
179
+ readOnly: true
180
+ }), /*#__PURE__*/React.createElement(TimeIcon, {
181
+ className: classes.icon,
182
+ onClick: this.handleTimeIconClick
183
+ })));
184
+ });
185
+
186
+ _defineProperty(this, "renderPopper", () => {
187
+ const {
188
+ classes
189
+ } = this.props;
190
+ const {
191
+ timePopperOpen,
192
+ timePopperAnchor
193
+ } = this.state;
194
+ const isPopperBelow = this.isPopperBelowParent();
195
+ return /*#__PURE__*/React.createElement(Popper, {
196
+ className: clsx(classes.popper, isPopperBelow ? classes.popperBelow : classes.popperAbove),
197
+ open: timePopperOpen,
198
+ anchorEl: timePopperAnchor,
199
+ placement: "bottom-start",
200
+ disablePortal: true,
201
+ popperOptions: {
202
+ onCreate: data => {
203
+ this.setTimePopperPlacement(data.placement);
204
+ },
205
+ onUpdate: data => {
206
+ this.setTimePopperPlacement(data.placement);
207
+ }
208
+ }
209
+ }, this.renderTimePopperContent());
210
+ });
211
+
212
+ _defineProperty(this, "renderTimePopperContent", () => {
213
+ const {
214
+ classes
215
+ } = this.props;
216
+ const {
217
+ selectedTime,
218
+ timeFormat
219
+ } = this.state;
220
+ const separator = /*#__PURE__*/React.createElement("span", {
221
+ className: classes.separator
222
+ }, ":");
223
+ return /*#__PURE__*/React.createElement("div", {
224
+ className: classes.timePopperContainer
225
+ }, /*#__PURE__*/React.createElement(UnitTimePicker, {
226
+ unit: timeFormat === TimeFormat.H24 ? TimePickerUnits.HOUR_24.type : TimePickerUnits.HOUR_12.type,
227
+ unitValue: selectedTime.hours,
228
+ onChangeUnitTimeValue: this.handleHoursChange
229
+ }), separator, /*#__PURE__*/React.createElement(UnitTimePicker, {
230
+ unit: TimePickerUnits.MINUTE.type,
231
+ unitValue: selectedTime.minutes,
232
+ onChangeUnitTimeValue: this.handleMinutesChange
233
+ }), separator, /*#__PURE__*/React.createElement(UnitTimePicker, {
234
+ unit: TimePickerUnits.SECOND.type,
235
+ unitValue: selectedTime.seconds,
236
+ onChangeUnitTimeValue: this.handleSecondsChange
237
+ }), timeFormat === TimeFormat.H12 && /*#__PURE__*/React.createElement("div", {
238
+ className: classes.periodContainer
239
+ }, /*#__PURE__*/React.createElement(PeriodPicker, {
240
+ onChangePeriod: this.handleChangePeriod,
241
+ period: selectedTime.period
242
+ })));
243
+ });
244
+
245
+ const {
246
+ onChange: _onChange,
247
+ hours: _hours,
248
+ minutes: _minutes,
249
+ seconds: _seconds,
250
+ period: _period
251
+ } = this.props;
252
+
253
+ const _timeFormat = this.getTimeFormat();
254
+
255
+ const _selectedTime = {
256
+ hours: getHoursForTimeFormat(_hours, _timeFormat),
257
+ minutes: _minutes,
258
+ seconds: _seconds,
259
+ period: _timeFormat === TimeFormat.H24 ? undefined : _period
260
+ };
261
+ this.state = {
262
+ timePopperOpen: false,
263
+ timePopperAnchor: null,
264
+ timePopperPlacement: "bottom-start",
265
+ timeFormat: _timeFormat,
266
+ selectedTime: _selectedTime
267
+ };
268
+
269
+ _onChange(getTimeWithFormat24(_selectedTime, _timeFormat));
270
+ }
271
+ /**
272
+ * Handles the event of clicking away from the Popper.
273
+ *
274
+ * @memberof HvTimePicker
275
+ */
276
+
277
+
278
+ /**
279
+ * Renders the TimePicker component.
280
+ *
281
+ * @returns
282
+ * @memberof HvTimePicker
283
+ */
284
+ render() {
285
+ const {
286
+ classes
287
+ } = this.props;
288
+ return /*#__PURE__*/React.createElement(ClickAwayListener, {
289
+ onClickAway: this.handleTimePopperClickAway
290
+ }, /*#__PURE__*/React.createElement("div", {
291
+ className: classes.timePickerContainer
292
+ }, this.renderInput(), this.renderPopper()));
293
+ }
294
+
295
+ }
296
+
297
+ process.env.NODE_ENV !== "production" ? HvTimePicker.propTypes = {
298
+ /**
299
+ * An Object containing the various text associated with the time picker.
300
+ */
301
+ labels: PropTypes.shape({
302
+ /**
303
+ * Time picker label (appears above the input)
304
+ */
305
+ title: PropTypes.string,
306
+
307
+ /**
308
+ * Time picker placeholder (appears in the input)
309
+ */
310
+ placeholder: PropTypes.string
311
+ }),
312
+
313
+ /**
314
+ * If the time should be presented in 12 or 24 hour format.
315
+ * If undefined, the component will use a format according to the passed locale.
316
+ * If defined, it will "override" the default value given by the locale
317
+ */
318
+ timeFormat: PropTypes.oneOf([TimeFormat.H12, TimeFormat.H24, undefined]),
319
+
320
+ /**
321
+ * Locale that will provide the time format(12 or 24 hour format)
322
+ * It is "overwritten" by the timeFormat prop
323
+ */
324
+ locale: PropTypes.string,
325
+
326
+ /**
327
+ * Default value for the hours picker
328
+ */
329
+ hours: PropTypes.number,
330
+
331
+ /**
332
+ * Default value for the minutes picker
333
+ */
334
+ minutes: PropTypes.number,
335
+
336
+ /**
337
+ * Default value for the seconds picker
338
+ */
339
+ seconds: PropTypes.number,
340
+
341
+ /**
342
+ * Default value for the period picker
343
+ */
344
+ period: PropTypes.string,
345
+
346
+ /**
347
+ * Callback function to be triggered when the input value is changed.
348
+ * It is invoked with a object param with the following props:
349
+ * - hours (in a 24h format)
350
+ * - minutes
351
+ * - seconds
352
+ * - period
353
+ *
354
+ * It is always invoked with the hours in a 24h format
355
+ */
356
+ onChange: PropTypes.func,
357
+
358
+ /**
359
+ * A Jss Object used to override or extend the styles applied to the input/popper
360
+ */
361
+ classes: PropTypes.shape({
362
+ input: PropTypes.string,
363
+ inputPopperOpenedBelow: PropTypes.string,
364
+ inputPopperOpenedAbove: PropTypes.string,
365
+ inputPopperClosed: PropTypes.string,
366
+ inputContainer: PropTypes.string,
367
+ icon: PropTypes.string,
368
+ timePickerContainer: PropTypes.string,
369
+ label: PropTypes.string,
370
+ timePopperContainer: PropTypes.string,
371
+ popper: PropTypes.string,
372
+ popperBelow: PropTypes.string,
373
+ popperAbove: PropTypes.string,
374
+ separator: PropTypes.string,
375
+ periodContainer: PropTypes.string
376
+ }).isRequired
377
+ } : void 0;
378
+ HvTimePicker.defaultProps = {
379
+ labels: {
380
+ title: undefined,
381
+ placeholder: "hh:mm:ss"
382
+ },
383
+ timeFormat: undefined,
384
+ locale: "en",
385
+ hours: new Date().getHours(),
386
+ minutes: new Date().getMinutes(),
387
+ seconds: 0,
388
+ period: getPeriodForDate(),
389
+ onChange: () => {}
390
+ };
391
+ export default withStyles(styles, {
392
+ name: "HvTimePicker"
393
+ })(HvTimePicker);
394
+ //# sourceMappingURL=TimePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimePicker.js","names":["React","PropTypes","ClickAwayListener","Popper","withStyles","clsx","HvTypography","Time","TimeIcon","UnitTimePicker","TimePickerUnits","TimeFormat","getPeriodForDate","getFormattedTime","getTimeFormatForLocale","getHoursForTimeFormat","getTimeWithFormat24","PeriodPicker","styles","HvTimePicker","Component","constructor","props","cancelTimeSelection","event","currentTarget","timePopperOpen","state","setTimePopperState","parentElement","hours","selectedTime","newSelectedTime","onSelectedTimeChange","minutes","seconds","period","anchor","open","setState","timePopperAnchor","placement","timePopperPlacement","onChange","timeFormat","selectedTimeIn24Format","locale","includes","classes","labels","label","title","isPopperBelow","isPopperBelowParent","renderLabel","inputContainer","inputPopperOpenedBelow","inputPopperOpenedAbove","inputPopperClosed","element","inputElement","input","placeholder","icon","handleTimeIconClick","popper","popperBelow","popperAbove","onCreate","data","setTimePopperPlacement","onUpdate","renderTimePopperContent","separator","timePopperContainer","H24","HOUR_24","type","HOUR_12","handleHoursChange","MINUTE","handleMinutesChange","SECOND","handleSecondsChange","H12","periodContainer","handleChangePeriod","getTimeFormat","undefined","render","handleTimePopperClickAway","timePickerContainer","renderInput","renderPopper","propTypes","shape","string","oneOf","number","func","isRequired","defaultProps","Date","getHours","getMinutes","name"],"sources":["../../../src/TimePicker/TimePicker.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport { ClickAwayListener, Popper, withStyles } from \"@material-ui/core\";\nimport clsx from \"clsx\";\nimport { HvTypography } from \"@hitachivantara/uikit-react-core\";\nimport { Time as TimeIcon } from \"@hitachivantara/uikit-react-icons\";\nimport UnitTimePicker from \"./UnitTimePicker\";\nimport { TimePickerUnits, TimeFormat } from \"./enums\";\nimport { getPeriodForDate } from \"./timePickerUtils\";\nimport { getFormattedTime, getTimeFormatForLocale } from \"./timePickerFormatter\";\nimport { getHoursForTimeFormat, getTimeWithFormat24 } from \"./timePickerConverter\";\nimport PeriodPicker from \"./PeriodPicker\";\nimport styles from \"./styles\";\n\n/**\n * A TimePicker component with a popup used to choose the time, following specifications provided by Design System. Still in development.\n */\nclass HvTimePicker extends React.Component {\n constructor(props) {\n super(props);\n\n const { onChange, hours, minutes, seconds, period } = this.props;\n const timeFormat = this.getTimeFormat();\n const selectedTime = {\n hours: getHoursForTimeFormat(hours, timeFormat),\n minutes,\n seconds,\n period: timeFormat === TimeFormat.H24 ? undefined : period,\n };\n\n this.state = {\n timePopperOpen: false,\n timePopperAnchor: null,\n timePopperPlacement: \"bottom-start\",\n timeFormat,\n selectedTime,\n };\n\n onChange(getTimeWithFormat24(selectedTime, timeFormat));\n }\n\n /**\n * Handles the event of clicking away from the Popper.\n *\n * @memberof HvTimePicker\n */\n handleTimePopperClickAway = () => {\n this.cancelTimeSelection();\n };\n\n /**\n * Handles the click on the Time icon inside the input.\n *\n * @param {Object} event - on click event on the icon\n * @memberof HvTimePicker\n */\n handleTimeIconClick = (event) => {\n const { currentTarget } = event;\n const { timePopperOpen } = this.state;\n this.setTimePopperState(currentTarget.parentElement, !timePopperOpen);\n };\n\n /**\n * Cancels the time selection and closes the Time popper.\n *\n * @memberof HvTimePicker\n */\n cancelTimeSelection = () => {\n this.setTimePopperState(null, false);\n };\n\n /**\n * Handles the change of the hours value\n * @param {Number} hours - selected hours\n * @memberof HvTimePicker\n */\n handleHoursChange = (hours) => {\n const { selectedTime } = this.state;\n const newSelectedTime = {\n ...selectedTime,\n hours,\n };\n this.onSelectedTimeChange(newSelectedTime);\n };\n\n /**\n * Handles the change of the minutes value\n * @param {Number} minutes - selected minutes\n * @memberof HvTimePicker\n */\n handleMinutesChange = (minutes) => {\n const { selectedTime } = this.state;\n const newSelectedTime = {\n ...selectedTime,\n minutes,\n };\n this.onSelectedTimeChange(newSelectedTime);\n };\n\n /**\n * Handles the change of the seconds value\n * @param {Number} seconds - selected seconds\n * @memberof HvTimePicker\n */\n handleSecondsChange = (seconds) => {\n const { selectedTime } = this.state;\n const newSelectedTime = {\n ...selectedTime,\n seconds,\n };\n this.onSelectedTimeChange(newSelectedTime);\n };\n\n /**\n * Handles the change of the period (am/pm)\n * @param {String} period - selected period\n * @memberof HvTimePicker\n */\n handleChangePeriod = (period) => {\n const { selectedTime } = this.state;\n const newSelectedTime = {\n ...selectedTime,\n period,\n };\n this.onSelectedTimeChange(newSelectedTime);\n };\n\n /**\n * Changes the popper open state according to the received flag.\n *\n * @param {element} anchor - Anchor element to append the popper\n * @param {boolean} open - Opens / closes the popper according to this flag.\n * @memberof HvTimePicker\n */\n setTimePopperState = (anchor, open) => {\n this.setState({\n timePopperAnchor: anchor,\n timePopperOpen: open,\n });\n };\n\n /**\n * Changes the popper placement in the state\n *\n * @param {String} placement - Popper placement\n * @memberof HvTimePicker\n */\n setTimePopperPlacement = (placement) => {\n const { timePopperPlacement } = this.state;\n if (timePopperPlacement !== placement) {\n this.setState({\n timePopperPlacement: placement,\n });\n }\n };\n\n /**\n * Changes the selected time on the component state\n * Also calls the onChange callback\n * @param {Object} selectedTime - time object with the selected values for hours, minutes, seconds and period\n */\n onSelectedTimeChange = (selectedTime) => {\n const { onChange } = this.props;\n const { timeFormat } = this.state;\n this.setState({\n selectedTime,\n });\n const selectedTimeIn24Format = getTimeWithFormat24(selectedTime, timeFormat);\n onChange(selectedTimeIn24Format);\n };\n\n /**\n * Returns the appropriate time format (12 or 24) depending on the passed props(timeFormat and locale)\n * @memberof HvTimePicker\n */\n getTimeFormat = () => {\n const { timeFormat, locale } = this.props;\n if (timeFormat) {\n return timeFormat;\n }\n return getTimeFormatForLocale(locale);\n };\n\n /**\n * Returns true if the popper is below the input and false otherwise\n * @memberof HvTimePicker\n */\n isPopperBelowParent = () => {\n const { timePopperPlacement } = this.state;\n return timePopperPlacement.includes(\"bottom\");\n };\n\n /**\n * Renderers\n */\n\n /**\n * Renders the Label element.\n *\n * @memberof HvTimePicker\n */\n renderLabel = () => {\n const { classes, labels } = this.props;\n return (\n <HvTypography variant=\"labelText\" className={classes.label}>\n {labels.title}\n </HvTypography>\n );\n };\n\n /**\n * Renders the input.\n *\n * @memberof HvTimePicker\n */\n renderInput = () => {\n const { classes, labels } = this.props;\n const { selectedTime, timePopperOpen } = this.state;\n const isPopperBelow = this.isPopperBelowParent();\n return (\n <>\n {labels && labels.title && this.renderLabel()}\n <div\n className={clsx(classes.inputContainer, {\n [classes.inputPopperOpenedBelow]: timePopperOpen && isPopperBelow,\n [classes.inputPopperOpenedAbove]: timePopperOpen && !isPopperBelow,\n [classes.inputPopperClosed]: !timePopperOpen,\n })}\n >\n <input\n ref={(element) => {\n this.inputElement = element;\n }}\n className={classes.input}\n value={getFormattedTime(selectedTime)}\n placeholder={labels.placeholder}\n type=\"text\"\n readOnly\n />\n <TimeIcon className={classes.icon} onClick={this.handleTimeIconClick} />\n </div>\n </>\n );\n };\n\n /**\n * Renders the Popper to choose the time\n *\n * @memberof HvTimePicker\n */\n renderPopper = () => {\n const { classes } = this.props;\n const { timePopperOpen, timePopperAnchor } = this.state;\n const isPopperBelow = this.isPopperBelowParent();\n\n return (\n <Popper\n className={clsx(classes.popper, {\n [classes.popperBelow]: isPopperBelow,\n [classes.popperAbove]: !isPopperBelow,\n })}\n open={timePopperOpen}\n anchorEl={timePopperAnchor}\n placement=\"bottom-start\"\n disablePortal\n popperOptions={{\n onCreate: (data) => {\n this.setTimePopperPlacement(data.placement);\n },\n onUpdate: (data) => {\n this.setTimePopperPlacement(data.placement);\n },\n }}\n >\n {this.renderTimePopperContent()}\n </Popper>\n );\n };\n\n /**\n * Renders the time popper content for time selection.\n *\n * @memberof HvTimePicker\n */\n renderTimePopperContent = () => {\n const { classes } = this.props;\n const { selectedTime, timeFormat } = this.state;\n\n const separator = <span className={classes.separator}>:</span>;\n\n return (\n <div className={classes.timePopperContainer}>\n <UnitTimePicker\n unit={\n timeFormat === TimeFormat.H24\n ? TimePickerUnits.HOUR_24.type\n : TimePickerUnits.HOUR_12.type\n }\n unitValue={selectedTime.hours}\n onChangeUnitTimeValue={this.handleHoursChange}\n />\n {separator}\n <UnitTimePicker\n unit={TimePickerUnits.MINUTE.type}\n unitValue={selectedTime.minutes}\n onChangeUnitTimeValue={this.handleMinutesChange}\n />\n {separator}\n <UnitTimePicker\n unit={TimePickerUnits.SECOND.type}\n unitValue={selectedTime.seconds}\n onChangeUnitTimeValue={this.handleSecondsChange}\n />\n {timeFormat === TimeFormat.H12 && (\n <div className={classes.periodContainer}>\n <PeriodPicker onChangePeriod={this.handleChangePeriod} period={selectedTime.period} />\n </div>\n )}\n </div>\n );\n };\n\n /**\n * Renders the TimePicker component.\n *\n * @returns\n * @memberof HvTimePicker\n */\n render() {\n const { classes } = this.props;\n\n return (\n <ClickAwayListener onClickAway={this.handleTimePopperClickAway}>\n <div className={classes.timePickerContainer}>\n {this.renderInput()}\n {this.renderPopper()}\n </div>\n </ClickAwayListener>\n );\n }\n}\n\nHvTimePicker.propTypes = {\n /**\n * An Object containing the various text associated with the time picker.\n */\n labels: PropTypes.shape({\n /**\n * Time picker label (appears above the input)\n */\n title: PropTypes.string,\n /**\n * Time picker placeholder (appears in the input)\n */\n placeholder: PropTypes.string,\n }),\n /**\n * If the time should be presented in 12 or 24 hour format.\n * If undefined, the component will use a format according to the passed locale.\n * If defined, it will \"override\" the default value given by the locale\n */\n timeFormat: PropTypes.oneOf([TimeFormat.H12, TimeFormat.H24, undefined]),\n /**\n * Locale that will provide the time format(12 or 24 hour format)\n * It is \"overwritten\" by the timeFormat prop\n */\n locale: PropTypes.string,\n /**\n * Default value for the hours picker\n */\n hours: PropTypes.number,\n /**\n * Default value for the minutes picker\n */\n minutes: PropTypes.number,\n /**\n * Default value for the seconds picker\n */\n seconds: PropTypes.number,\n /**\n * Default value for the period picker\n */\n period: PropTypes.string,\n /**\n * Callback function to be triggered when the input value is changed.\n * It is invoked with a object param with the following props:\n * - hours (in a 24h format)\n * - minutes\n * - seconds\n * - period\n *\n * It is always invoked with the hours in a 24h format\n */\n onChange: PropTypes.func,\n /**\n * A Jss Object used to override or extend the styles applied to the input/popper\n */\n classes: PropTypes.shape({\n input: PropTypes.string,\n inputPopperOpenedBelow: PropTypes.string,\n inputPopperOpenedAbove: PropTypes.string,\n inputPopperClosed: PropTypes.string,\n inputContainer: PropTypes.string,\n icon: PropTypes.string,\n timePickerContainer: PropTypes.string,\n label: PropTypes.string,\n timePopperContainer: PropTypes.string,\n popper: PropTypes.string,\n popperBelow: PropTypes.string,\n popperAbove: PropTypes.string,\n separator: PropTypes.string,\n periodContainer: PropTypes.string,\n }).isRequired,\n};\n\nHvTimePicker.defaultProps = {\n labels: {\n title: undefined,\n placeholder: \"hh:mm:ss\",\n },\n timeFormat: undefined,\n locale: \"en\",\n hours: new Date().getHours(),\n minutes: new Date().getMinutes(),\n seconds: 0,\n period: getPeriodForDate(),\n onChange: () => {},\n};\n\nexport default withStyles(styles, { name: \"HvTimePicker\" })(HvTimePicker);\n"],"mappings":"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"}
@@ -0,0 +1,186 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
+ import React from "react";
3
+ import PropTypes from "prop-types";
4
+ import clsx from "clsx";
5
+ import { HvInput } from "@hitachivantara/uikit-react-core";
6
+ import { DropUpXS as AddTimeIcon, DropDownXS as SubtractTimeIcon } from "@hitachivantara/uikit-react-icons";
7
+ import { isUnitTimeInValidRange } from "../timePickerUtils";
8
+ import { padTime } from "../timePickerFormatter";
9
+ import { TimePickerUnits } from "../enums";
10
+
11
+ class UnitTimePicker extends React.Component {
12
+ constructor(props) {
13
+ super(props);
14
+
15
+ _defineProperty(this, "handleCurrentValueChange", (event, value) => {
16
+ const unitTime = value === "" ? value : Number(value);
17
+
18
+ if ((unitTime || unitTime === "") && unitTime.toString().length <= 2) {
19
+ this.changeTimeUnit(unitTime);
20
+ }
21
+ });
22
+
23
+ _defineProperty(this, "handleFocusChange", () => {
24
+ const {
25
+ isFocused
26
+ } = this.state;
27
+ this.setState({
28
+ isFocused: !isFocused
29
+ });
30
+ });
31
+
32
+ _defineProperty(this, "handleAddTime", () => {
33
+ const {
34
+ currentValue,
35
+ maxValue,
36
+ minValue
37
+ } = this.state;
38
+ let newUnitTime = currentValue === "" ? minValue : currentValue + 1;
39
+
40
+ if (newUnitTime > maxValue) {
41
+ newUnitTime = minValue;
42
+ }
43
+
44
+ this.changeTimeUnit(newUnitTime);
45
+ });
46
+
47
+ _defineProperty(this, "handleSubtractTime", () => {
48
+ const {
49
+ currentValue,
50
+ maxValue,
51
+ minValue
52
+ } = this.state;
53
+ let newUnitTime = currentValue === "" ? maxValue : currentValue - 1;
54
+
55
+ if (newUnitTime < minValue) {
56
+ newUnitTime = maxValue;
57
+ }
58
+
59
+ this.changeTimeUnit(newUnitTime);
60
+ });
61
+
62
+ _defineProperty(this, "changeTimeUnit", value => {
63
+ const {
64
+ onChangeUnitTimeValue
65
+ } = this.props;
66
+ this.setState({
67
+ currentValue: value
68
+ });
69
+
70
+ if (this.isUnitTimeValid(value)) {
71
+ onChangeUnitTimeValue(value);
72
+ }
73
+ });
74
+
75
+ _defineProperty(this, "isUnitTimeValid", unitTime => {
76
+ const {
77
+ unit
78
+ } = this.props;
79
+ const isValid = isUnitTimeInValidRange(unitTime, unit);
80
+ this.setState({
81
+ isValid
82
+ });
83
+ return isValid;
84
+ });
85
+
86
+ _defineProperty(this, "renderTimeUnit", () => {
87
+ const {
88
+ currentValue,
89
+ isFocused
90
+ } = this.state;
91
+ return isFocused ? currentValue.toString() : padTime(currentValue).toString();
92
+ });
93
+
94
+ this.state = {
95
+ minValue: TimePickerUnits[props.unit].min,
96
+ maxValue: TimePickerUnits[props.unit].max,
97
+ currentValue: props.unitValue,
98
+ isFocused: false,
99
+ isValid: true
100
+ };
101
+ }
102
+ /**
103
+ * Handles the unit time value change when it is done through a change on the input.
104
+ * It only reflects on the state if the number of digits is between 0 and 2
105
+ * @param {Number} value - new unit time value
106
+ * @memberof UnitTimePicker
107
+ */
108
+
109
+
110
+ /**
111
+ * Renders the UnitTimePicker
112
+ */
113
+ render() {
114
+ const {
115
+ classes
116
+ } = this.props;
117
+ const {
118
+ isValid
119
+ } = this.state;
120
+ return /*#__PURE__*/React.createElement("div", {
121
+ className: classes.unitTimeContainer
122
+ }, /*#__PURE__*/React.createElement(AddTimeIcon, {
123
+ className: classes.addIcon,
124
+ onClick: this.handleAddTime
125
+ }), /*#__PURE__*/React.createElement(HvInput, {
126
+ disableClear: true,
127
+ className: classes.unitTime,
128
+ classes: {
129
+ input: classes.unitTimeInput,
130
+ root: classes.inputContainer,
131
+ inputRoot: clsx(classes.unitTimeInputRoot, !isValid && classes.unitTimeInputRootInvalid)
132
+ },
133
+ value: this.renderTimeUnit(),
134
+ onChange: this.handleCurrentValueChange,
135
+ onFocus: this.handleFocusChange,
136
+ onBlur: this.handleFocusChange,
137
+ validationIconVisible: false,
138
+ showInfo: false,
139
+ validation: this.validateUnitTime,
140
+ labels: {
141
+ placeholder: ""
142
+ }
143
+ }), /*#__PURE__*/React.createElement(SubtractTimeIcon, {
144
+ className: classes.subtractIcon,
145
+ onClick: this.handleSubtractTime
146
+ }));
147
+ }
148
+
149
+ }
150
+
151
+ process.env.NODE_ENV !== "production" ? UnitTimePicker.propTypes = {
152
+ /**
153
+ * A Jss Object used to override or extend the styles applied to the input/popper
154
+ */
155
+ classes: PropTypes.instanceOf(Object).isRequired,
156
+
157
+ /**
158
+ * Type of Unit time picker (hour, minute or second)
159
+ */
160
+ unit: PropTypes.oneOf([TimePickerUnits.HOUR_24.type, TimePickerUnits.HOUR_12.type, TimePickerUnits.MINUTE.type, TimePickerUnits.SECOND.type]).isRequired,
161
+
162
+ /**
163
+ * Default unit time value
164
+ */
165
+ unitValue: (otherProps, propName, componentName) => {
166
+ const minValue = TimePickerUnits[otherProps.unit].min;
167
+ const maxValue = TimePickerUnits[otherProps.unit].max;
168
+ const unitValue = otherProps[propName];
169
+
170
+ if (unitValue > maxValue || unitValue < minValue) {
171
+ return new Error(`Invalid prop ${propName} supplied to ${componentName}. Value not in the correct range ${minValue}-${maxValue}`);
172
+ }
173
+
174
+ return null;
175
+ },
176
+
177
+ /**
178
+ * Callback function called when the unit time value changes
179
+ */
180
+ onChangeUnitTimeValue: PropTypes.func.isRequired
181
+ } : void 0;
182
+ UnitTimePicker.defaultProps = {
183
+ unitValue: 0
184
+ };
185
+ export default UnitTimePicker;
186
+ //# sourceMappingURL=UnitTimePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UnitTimePicker.js","names":["React","PropTypes","clsx","HvInput","DropUpXS","AddTimeIcon","DropDownXS","SubtractTimeIcon","isUnitTimeInValidRange","padTime","TimePickerUnits","UnitTimePicker","Component","constructor","props","event","value","unitTime","Number","toString","length","changeTimeUnit","isFocused","state","setState","currentValue","maxValue","minValue","newUnitTime","onChangeUnitTimeValue","isUnitTimeValid","unit","isValid","min","max","unitValue","render","classes","unitTimeContainer","addIcon","handleAddTime","input","unitTimeInput","root","inputContainer","inputRoot","unitTimeInputRoot","unitTimeInputRootInvalid","renderTimeUnit","handleCurrentValueChange","handleFocusChange","validateUnitTime","placeholder","subtractIcon","handleSubtractTime","propTypes","instanceOf","Object","isRequired","oneOf","HOUR_24","type","HOUR_12","MINUTE","SECOND","otherProps","propName","componentName","Error","func","defaultProps"],"sources":["../../../../src/TimePicker/UnitTimePicker/UnitTimePicker.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { HvInput } from \"@hitachivantara/uikit-react-core\";\nimport {\n DropUpXS as AddTimeIcon,\n DropDownXS as SubtractTimeIcon,\n} from \"@hitachivantara/uikit-react-icons\";\nimport { isUnitTimeInValidRange } from \"../timePickerUtils\";\nimport { padTime } from \"../timePickerFormatter\";\nimport { TimePickerUnits } from \"../enums\";\n\nclass UnitTimePicker extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n minValue: TimePickerUnits[props.unit].min,\n maxValue: TimePickerUnits[props.unit].max,\n currentValue: props.unitValue,\n isFocused: false,\n isValid: true,\n };\n }\n\n /**\n * Handles the unit time value change when it is done through a change on the input.\n * It only reflects on the state if the number of digits is between 0 and 2\n * @param {Number} value - new unit time value\n * @memberof UnitTimePicker\n */\n handleCurrentValueChange = (event, value) => {\n const unitTime = value === \"\" ? value : Number(value);\n if ((unitTime || unitTime === \"\") && unitTime.toString().length <= 2) {\n this.changeTimeUnit(unitTime);\n }\n };\n\n /**\n * Handles the change on the focus of the input\n * @memberof UnitTimePicker\n */\n handleFocusChange = () => {\n const { isFocused } = this.state;\n\n this.setState({\n isFocused: !isFocused,\n });\n };\n\n /**\n * Handles the action to increase the unit time value\n * If the new value surpasses the max allowed, it updates the time to the min value.\n * @memberof UnitTimePicker\n */\n handleAddTime = () => {\n const { currentValue, maxValue, minValue } = this.state;\n let newUnitTime = currentValue === \"\" ? minValue : currentValue + 1;\n if (newUnitTime > maxValue) {\n newUnitTime = minValue;\n }\n this.changeTimeUnit(newUnitTime);\n };\n\n /**\n * Handles the action to decrease the unit time value\n * If the new value goes below the min allowed, it updates the time to the max value.\n * @memberof UnitTimePicker\n */\n handleSubtractTime = () => {\n const { currentValue, maxValue, minValue } = this.state;\n let newUnitTime = currentValue === \"\" ? maxValue : currentValue - 1;\n if (newUnitTime < minValue) {\n newUnitTime = maxValue;\n }\n this.changeTimeUnit(newUnitTime);\n };\n\n /**\n * Changes the time unit value in the state.\n * The onChange callback is only called if the new value is a valid one (in the allowed range)\n *\n * @param {Number} value - new time unit value\n * @memberof UnitTimePicker\n */\n changeTimeUnit = (value) => {\n const { onChangeUnitTimeValue } = this.props;\n this.setState({\n currentValue: value,\n });\n if (this.isUnitTimeValid(value)) {\n onChangeUnitTimeValue(value);\n }\n };\n\n /**\n * Checks if the unit time is valid, meaning that is between the min and max values for the specific unit time\n * @memberof UnitTimePicker\n */\n isUnitTimeValid = (unitTime) => {\n const { unit } = this.props;\n const isValid = isUnitTimeInValidRange(unitTime, unit);\n this.setState({\n isValid,\n });\n return isValid;\n };\n\n /**\n * Renderers\n */\n\n /**\n * Renders the time unit value input in the correct format\n * @memberof UnitTimePicker\n */\n renderTimeUnit = () => {\n const { currentValue, isFocused } = this.state;\n return isFocused ? currentValue.toString() : padTime(currentValue).toString();\n };\n\n /**\n * Renders the UnitTimePicker\n */\n render() {\n const { classes } = this.props;\n const { isValid } = this.state;\n\n return (\n <div className={classes.unitTimeContainer}>\n <AddTimeIcon className={classes.addIcon} onClick={this.handleAddTime} />\n <HvInput\n disableClear\n className={classes.unitTime}\n classes={{\n input: classes.unitTimeInput,\n root: classes.inputContainer,\n inputRoot: clsx(classes.unitTimeInputRoot, {\n [classes.unitTimeInputRootInvalid]: !isValid,\n }),\n }}\n value={this.renderTimeUnit()}\n onChange={this.handleCurrentValueChange}\n onFocus={this.handleFocusChange}\n onBlur={this.handleFocusChange}\n validationIconVisible={false}\n showInfo={false}\n validation={this.validateUnitTime}\n labels={{\n placeholder: \"\",\n }}\n />\n <SubtractTimeIcon className={classes.subtractIcon} onClick={this.handleSubtractTime} />\n </div>\n );\n }\n}\n\nUnitTimePicker.propTypes = {\n /**\n * A Jss Object used to override or extend the styles applied to the input/popper\n */\n classes: PropTypes.instanceOf(Object).isRequired,\n /**\n * Type of Unit time picker (hour, minute or second)\n */\n unit: PropTypes.oneOf([\n TimePickerUnits.HOUR_24.type,\n TimePickerUnits.HOUR_12.type,\n TimePickerUnits.MINUTE.type,\n TimePickerUnits.SECOND.type,\n ]).isRequired,\n /**\n * Default unit time value\n */\n unitValue: (otherProps, propName, componentName) => {\n const minValue = TimePickerUnits[otherProps.unit].min;\n const maxValue = TimePickerUnits[otherProps.unit].max;\n const unitValue = otherProps[propName];\n if (unitValue > maxValue || unitValue < minValue) {\n return new Error(\n `Invalid prop ${propName} supplied to ${componentName}. Value not in the correct range ${minValue}-${maxValue}`\n );\n }\n return null;\n },\n /**\n * Callback function called when the unit time value changes\n */\n onChangeUnitTimeValue: PropTypes.func.isRequired,\n};\n\nUnitTimePicker.defaultProps = {\n unitValue: 0,\n};\n\nexport default UnitTimePicker;\n"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import withStyles from "@material-ui/core/styles/withStyles";
2
+ import styles from "./styles";
3
+ import UnitTimePicker from "./UnitTimePicker";
4
+ export default withStyles(styles, {
5
+ name: "HvTimePickerUnitTimePicker"
6
+ })(UnitTimePicker);
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["withStyles","styles","UnitTimePicker","name"],"sources":["../../../../src/TimePicker/UnitTimePicker/index.js"],"sourcesContent":["import withStyles from \"@material-ui/core/styles/withStyles\";\nimport styles from \"./styles\";\nimport UnitTimePicker from \"./UnitTimePicker\";\n\nexport default withStyles(styles, { name: \"HvTimePickerUnitTimePicker\" })(UnitTimePicker);\n"],"mappings":"AAAA,OAAOA,UAAP,MAAuB,qCAAvB;AACA,OAAOC,MAAP,MAAmB,UAAnB;AACA,OAAOC,cAAP,MAA2B,kBAA3B;AAEA,eAAeF,UAAU,CAACC,MAAD,EAAS;EAAEE,IAAI,EAAE;AAAR,CAAT,CAAV,CAA2DD,cAA3D,CAAf"}