hakumi_components 0.1.3.pre

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 (1339) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +60 -0
  3. data/LICENSE +21 -0
  4. data/app/assets/icons/filled/account-book.svg +1 -0
  5. data/app/assets/icons/filled/alert.svg +1 -0
  6. data/app/assets/icons/filled/alipay-circle.svg +1 -0
  7. data/app/assets/icons/filled/alipay-square.svg +1 -0
  8. data/app/assets/icons/filled/aliwangwang.svg +1 -0
  9. data/app/assets/icons/filled/amazon-circle.svg +1 -0
  10. data/app/assets/icons/filled/amazon-square.svg +1 -0
  11. data/app/assets/icons/filled/android.svg +1 -0
  12. data/app/assets/icons/filled/api.svg +1 -0
  13. data/app/assets/icons/filled/apple.svg +1 -0
  14. data/app/assets/icons/filled/appstore.svg +1 -0
  15. data/app/assets/icons/filled/audio.svg +1 -0
  16. data/app/assets/icons/filled/backward.svg +1 -0
  17. data/app/assets/icons/filled/bank.svg +1 -0
  18. data/app/assets/icons/filled/behance-circle.svg +1 -0
  19. data/app/assets/icons/filled/behance-square.svg +1 -0
  20. data/app/assets/icons/filled/bell.svg +1 -0
  21. data/app/assets/icons/filled/bilibili.svg +1 -0
  22. data/app/assets/icons/filled/book.svg +1 -0
  23. data/app/assets/icons/filled/box-plot.svg +1 -0
  24. data/app/assets/icons/filled/bug.svg +1 -0
  25. data/app/assets/icons/filled/build.svg +1 -0
  26. data/app/assets/icons/filled/bulb.svg +1 -0
  27. data/app/assets/icons/filled/calculator.svg +1 -0
  28. data/app/assets/icons/filled/calendar.svg +1 -0
  29. data/app/assets/icons/filled/camera.svg +1 -0
  30. data/app/assets/icons/filled/car.svg +1 -0
  31. data/app/assets/icons/filled/caret-down.svg +1 -0
  32. data/app/assets/icons/filled/caret-left.svg +1 -0
  33. data/app/assets/icons/filled/caret-right.svg +1 -0
  34. data/app/assets/icons/filled/caret-up.svg +1 -0
  35. data/app/assets/icons/filled/carry-out.svg +1 -0
  36. data/app/assets/icons/filled/check-circle.svg +1 -0
  37. data/app/assets/icons/filled/check-square.svg +1 -0
  38. data/app/assets/icons/filled/chrome.svg +1 -0
  39. data/app/assets/icons/filled/ci-circle.svg +1 -0
  40. data/app/assets/icons/filled/clock-circle.svg +1 -0
  41. data/app/assets/icons/filled/close-circle.svg +1 -0
  42. data/app/assets/icons/filled/close-square.svg +1 -0
  43. data/app/assets/icons/filled/cloud.svg +1 -0
  44. data/app/assets/icons/filled/code-sandbox-circle.svg +1 -0
  45. data/app/assets/icons/filled/code-sandbox-square.svg +1 -0
  46. data/app/assets/icons/filled/code.svg +1 -0
  47. data/app/assets/icons/filled/codepen-circle.svg +1 -0
  48. data/app/assets/icons/filled/codepen-square.svg +1 -0
  49. data/app/assets/icons/filled/compass.svg +1 -0
  50. data/app/assets/icons/filled/contacts.svg +1 -0
  51. data/app/assets/icons/filled/container.svg +1 -0
  52. data/app/assets/icons/filled/control.svg +1 -0
  53. data/app/assets/icons/filled/copy.svg +1 -0
  54. data/app/assets/icons/filled/copyright-circle.svg +1 -0
  55. data/app/assets/icons/filled/credit-card.svg +1 -0
  56. data/app/assets/icons/filled/crown.svg +1 -0
  57. data/app/assets/icons/filled/customer-service.svg +1 -0
  58. data/app/assets/icons/filled/dashboard.svg +1 -0
  59. data/app/assets/icons/filled/database.svg +1 -0
  60. data/app/assets/icons/filled/delete.svg +1 -0
  61. data/app/assets/icons/filled/diff.svg +1 -0
  62. data/app/assets/icons/filled/dingtalk-circle.svg +1 -0
  63. data/app/assets/icons/filled/dingtalk-square.svg +1 -0
  64. data/app/assets/icons/filled/discord.svg +1 -0
  65. data/app/assets/icons/filled/dislike.svg +1 -0
  66. data/app/assets/icons/filled/dollar-circle.svg +1 -0
  67. data/app/assets/icons/filled/down-circle.svg +1 -0
  68. data/app/assets/icons/filled/down-square.svg +1 -0
  69. data/app/assets/icons/filled/dribbble-circle.svg +1 -0
  70. data/app/assets/icons/filled/dribbble-square.svg +1 -0
  71. data/app/assets/icons/filled/dropbox-circle.svg +1 -0
  72. data/app/assets/icons/filled/dropbox-square.svg +1 -0
  73. data/app/assets/icons/filled/edit.svg +1 -0
  74. data/app/assets/icons/filled/environment.svg +1 -0
  75. data/app/assets/icons/filled/euro-circle.svg +1 -0
  76. data/app/assets/icons/filled/exclamation-circle.svg +1 -0
  77. data/app/assets/icons/filled/experiment.svg +1 -0
  78. data/app/assets/icons/filled/eye-invisible.svg +1 -0
  79. data/app/assets/icons/filled/eye.svg +1 -0
  80. data/app/assets/icons/filled/facebook.svg +1 -0
  81. data/app/assets/icons/filled/fast-backward.svg +1 -0
  82. data/app/assets/icons/filled/fast-forward.svg +1 -0
  83. data/app/assets/icons/filled/file-add.svg +1 -0
  84. data/app/assets/icons/filled/file-excel.svg +1 -0
  85. data/app/assets/icons/filled/file-exclamation.svg +1 -0
  86. data/app/assets/icons/filled/file-image.svg +1 -0
  87. data/app/assets/icons/filled/file-markdown.svg +1 -0
  88. data/app/assets/icons/filled/file-pdf.svg +1 -0
  89. data/app/assets/icons/filled/file-ppt.svg +1 -0
  90. data/app/assets/icons/filled/file-text.svg +1 -0
  91. data/app/assets/icons/filled/file-unknown.svg +1 -0
  92. data/app/assets/icons/filled/file-word.svg +1 -0
  93. data/app/assets/icons/filled/file-zip.svg +1 -0
  94. data/app/assets/icons/filled/file.svg +1 -0
  95. data/app/assets/icons/filled/filter.svg +1 -0
  96. data/app/assets/icons/filled/fire.svg +1 -0
  97. data/app/assets/icons/filled/flag.svg +1 -0
  98. data/app/assets/icons/filled/folder-add.svg +1 -0
  99. data/app/assets/icons/filled/folder-open.svg +1 -0
  100. data/app/assets/icons/filled/folder.svg +1 -0
  101. data/app/assets/icons/filled/format-painter.svg +1 -0
  102. data/app/assets/icons/filled/forward.svg +1 -0
  103. data/app/assets/icons/filled/frown.svg +1 -0
  104. data/app/assets/icons/filled/fund.svg +1 -0
  105. data/app/assets/icons/filled/funnel-plot.svg +1 -0
  106. data/app/assets/icons/filled/gift.svg +1 -0
  107. data/app/assets/icons/filled/github.svg +1 -0
  108. data/app/assets/icons/filled/gitlab.svg +1 -0
  109. data/app/assets/icons/filled/gold.svg +1 -0
  110. data/app/assets/icons/filled/golden.svg +1 -0
  111. data/app/assets/icons/filled/google-circle.svg +1 -0
  112. data/app/assets/icons/filled/google-plus-circle.svg +1 -0
  113. data/app/assets/icons/filled/google-plus-square.svg +1 -0
  114. data/app/assets/icons/filled/google-square.svg +1 -0
  115. data/app/assets/icons/filled/hdd.svg +1 -0
  116. data/app/assets/icons/filled/heart.svg +1 -0
  117. data/app/assets/icons/filled/highlight.svg +1 -0
  118. data/app/assets/icons/filled/home.svg +1 -0
  119. data/app/assets/icons/filled/hourglass.svg +1 -0
  120. data/app/assets/icons/filled/html5.svg +1 -0
  121. data/app/assets/icons/filled/idcard.svg +1 -0
  122. data/app/assets/icons/filled/ie-circle.svg +1 -0
  123. data/app/assets/icons/filled/ie-square.svg +1 -0
  124. data/app/assets/icons/filled/info-circle.svg +1 -0
  125. data/app/assets/icons/filled/instagram.svg +1 -0
  126. data/app/assets/icons/filled/insurance.svg +1 -0
  127. data/app/assets/icons/filled/interaction.svg +1 -0
  128. data/app/assets/icons/filled/layout.svg +1 -0
  129. data/app/assets/icons/filled/left-circle.svg +1 -0
  130. data/app/assets/icons/filled/left-square.svg +1 -0
  131. data/app/assets/icons/filled/like.svg +1 -0
  132. data/app/assets/icons/filled/linkedin.svg +1 -0
  133. data/app/assets/icons/filled/lock.svg +1 -0
  134. data/app/assets/icons/filled/mac-command.svg +1 -0
  135. data/app/assets/icons/filled/mail.svg +1 -0
  136. data/app/assets/icons/filled/medicine-box.svg +1 -0
  137. data/app/assets/icons/filled/medium-circle.svg +1 -0
  138. data/app/assets/icons/filled/medium-square.svg +1 -0
  139. data/app/assets/icons/filled/meh.svg +1 -0
  140. data/app/assets/icons/filled/merge.svg +1 -0
  141. data/app/assets/icons/filled/message.svg +1 -0
  142. data/app/assets/icons/filled/minus-circle.svg +1 -0
  143. data/app/assets/icons/filled/minus-square.svg +1 -0
  144. data/app/assets/icons/filled/mobile.svg +1 -0
  145. data/app/assets/icons/filled/money-collect.svg +1 -0
  146. data/app/assets/icons/filled/moon.svg +1 -0
  147. data/app/assets/icons/filled/muted.svg +1 -0
  148. data/app/assets/icons/filled/notification.svg +1 -0
  149. data/app/assets/icons/filled/open-a-i.svg +1 -0
  150. data/app/assets/icons/filled/pause-circle.svg +1 -0
  151. data/app/assets/icons/filled/pay-circle.svg +1 -0
  152. data/app/assets/icons/filled/phone.svg +1 -0
  153. data/app/assets/icons/filled/picture.svg +1 -0
  154. data/app/assets/icons/filled/pie-chart.svg +1 -0
  155. data/app/assets/icons/filled/pinterest.svg +1 -0
  156. data/app/assets/icons/filled/play-circle.svg +1 -0
  157. data/app/assets/icons/filled/play-square.svg +1 -0
  158. data/app/assets/icons/filled/plus-circle.svg +1 -0
  159. data/app/assets/icons/filled/plus-square.svg +1 -0
  160. data/app/assets/icons/filled/pound-circle.svg +1 -0
  161. data/app/assets/icons/filled/printer.svg +1 -0
  162. data/app/assets/icons/filled/product.svg +1 -0
  163. data/app/assets/icons/filled/profile.svg +1 -0
  164. data/app/assets/icons/filled/project.svg +1 -0
  165. data/app/assets/icons/filled/property-safety.svg +1 -0
  166. data/app/assets/icons/filled/pushpin.svg +1 -0
  167. data/app/assets/icons/filled/qq-circle.svg +1 -0
  168. data/app/assets/icons/filled/qq-square.svg +1 -0
  169. data/app/assets/icons/filled/question-circle.svg +1 -0
  170. data/app/assets/icons/filled/read.svg +1 -0
  171. data/app/assets/icons/filled/reconciliation.svg +1 -0
  172. data/app/assets/icons/filled/red-envelope.svg +1 -0
  173. data/app/assets/icons/filled/reddit-circle.svg +1 -0
  174. data/app/assets/icons/filled/reddit-square.svg +1 -0
  175. data/app/assets/icons/filled/rest.svg +1 -0
  176. data/app/assets/icons/filled/right-circle.svg +1 -0
  177. data/app/assets/icons/filled/right-square.svg +1 -0
  178. data/app/assets/icons/filled/robot.svg +1 -0
  179. data/app/assets/icons/filled/rocket.svg +1 -0
  180. data/app/assets/icons/filled/safety-certificate.svg +1 -0
  181. data/app/assets/icons/filled/save.svg +1 -0
  182. data/app/assets/icons/filled/schedule.svg +1 -0
  183. data/app/assets/icons/filled/security-scan.svg +1 -0
  184. data/app/assets/icons/filled/setting.svg +1 -0
  185. data/app/assets/icons/filled/shop.svg +1 -0
  186. data/app/assets/icons/filled/shopping.svg +1 -0
  187. data/app/assets/icons/filled/signal.svg +1 -0
  188. data/app/assets/icons/filled/signature.svg +1 -0
  189. data/app/assets/icons/filled/sketch-circle.svg +1 -0
  190. data/app/assets/icons/filled/sketch-square.svg +1 -0
  191. data/app/assets/icons/filled/skin.svg +1 -0
  192. data/app/assets/icons/filled/skype.svg +1 -0
  193. data/app/assets/icons/filled/slack-circle.svg +1 -0
  194. data/app/assets/icons/filled/slack-square.svg +1 -0
  195. data/app/assets/icons/filled/sliders.svg +1 -0
  196. data/app/assets/icons/filled/smile.svg +1 -0
  197. data/app/assets/icons/filled/snippets.svg +1 -0
  198. data/app/assets/icons/filled/sound.svg +1 -0
  199. data/app/assets/icons/filled/spotify.svg +1 -0
  200. data/app/assets/icons/filled/star.svg +1 -0
  201. data/app/assets/icons/filled/step-backward.svg +1 -0
  202. data/app/assets/icons/filled/step-forward.svg +1 -0
  203. data/app/assets/icons/filled/stop.svg +1 -0
  204. data/app/assets/icons/filled/sun.svg +1 -0
  205. data/app/assets/icons/filled/switcher.svg +1 -0
  206. data/app/assets/icons/filled/tablet.svg +1 -0
  207. data/app/assets/icons/filled/tag.svg +1 -0
  208. data/app/assets/icons/filled/tags.svg +1 -0
  209. data/app/assets/icons/filled/taobao-circle.svg +1 -0
  210. data/app/assets/icons/filled/taobao-square.svg +1 -0
  211. data/app/assets/icons/filled/thunderbolt.svg +1 -0
  212. data/app/assets/icons/filled/tik-tok.svg +1 -0
  213. data/app/assets/icons/filled/tool.svg +1 -0
  214. data/app/assets/icons/filled/trademark-circle.svg +1 -0
  215. data/app/assets/icons/filled/trophy.svg +1 -0
  216. data/app/assets/icons/filled/truck.svg +1 -0
  217. data/app/assets/icons/filled/twitch.svg +1 -0
  218. data/app/assets/icons/filled/twitter-circle.svg +1 -0
  219. data/app/assets/icons/filled/twitter-square.svg +1 -0
  220. data/app/assets/icons/filled/unlock.svg +1 -0
  221. data/app/assets/icons/filled/up-circle.svg +1 -0
  222. data/app/assets/icons/filled/up-square.svg +1 -0
  223. data/app/assets/icons/filled/usb.svg +1 -0
  224. data/app/assets/icons/filled/video-camera.svg +1 -0
  225. data/app/assets/icons/filled/wallet.svg +1 -0
  226. data/app/assets/icons/filled/warning.svg +1 -0
  227. data/app/assets/icons/filled/wechat-work.svg +1 -0
  228. data/app/assets/icons/filled/wechat.svg +1 -0
  229. data/app/assets/icons/filled/weibo-circle.svg +1 -0
  230. data/app/assets/icons/filled/weibo-square.svg +1 -0
  231. data/app/assets/icons/filled/windows.svg +1 -0
  232. data/app/assets/icons/filled/x.svg +1 -0
  233. data/app/assets/icons/filled/yahoo.svg +1 -0
  234. data/app/assets/icons/filled/youtube.svg +1 -0
  235. data/app/assets/icons/filled/yuque.svg +1 -0
  236. data/app/assets/icons/filled/zhihu-circle.svg +1 -0
  237. data/app/assets/icons/filled/zhihu-square.svg +1 -0
  238. data/app/assets/icons/outlined/account-book.svg +1 -0
  239. data/app/assets/icons/outlined/aim.svg +1 -0
  240. data/app/assets/icons/outlined/alert.svg +1 -0
  241. data/app/assets/icons/outlined/alibaba.svg +1 -0
  242. data/app/assets/icons/outlined/align-center.svg +1 -0
  243. data/app/assets/icons/outlined/align-left.svg +1 -0
  244. data/app/assets/icons/outlined/align-right.svg +1 -0
  245. data/app/assets/icons/outlined/alipay-circle.svg +1 -0
  246. data/app/assets/icons/outlined/alipay.svg +1 -0
  247. data/app/assets/icons/outlined/aliwangwang.svg +1 -0
  248. data/app/assets/icons/outlined/aliyun.svg +1 -0
  249. data/app/assets/icons/outlined/amazon.svg +1 -0
  250. data/app/assets/icons/outlined/android.svg +1 -0
  251. data/app/assets/icons/outlined/ant-cloud.svg +1 -0
  252. data/app/assets/icons/outlined/ant-design.svg +1 -0
  253. data/app/assets/icons/outlined/apartment.svg +1 -0
  254. data/app/assets/icons/outlined/api.svg +1 -0
  255. data/app/assets/icons/outlined/apple.svg +1 -0
  256. data/app/assets/icons/outlined/appstore-add.svg +1 -0
  257. data/app/assets/icons/outlined/appstore.svg +1 -0
  258. data/app/assets/icons/outlined/area-chart.svg +1 -0
  259. data/app/assets/icons/outlined/arrow-down.svg +1 -0
  260. data/app/assets/icons/outlined/arrow-left.svg +1 -0
  261. data/app/assets/icons/outlined/arrow-right.svg +1 -0
  262. data/app/assets/icons/outlined/arrow-up.svg +1 -0
  263. data/app/assets/icons/outlined/arrows-alt.svg +1 -0
  264. data/app/assets/icons/outlined/audio-muted.svg +1 -0
  265. data/app/assets/icons/outlined/audio.svg +1 -0
  266. data/app/assets/icons/outlined/audit.svg +1 -0
  267. data/app/assets/icons/outlined/backward.svg +1 -0
  268. data/app/assets/icons/outlined/baidu.svg +1 -0
  269. data/app/assets/icons/outlined/bank.svg +1 -0
  270. data/app/assets/icons/outlined/bar-chart.svg +1 -0
  271. data/app/assets/icons/outlined/barcode.svg +1 -0
  272. data/app/assets/icons/outlined/bars.svg +1 -0
  273. data/app/assets/icons/outlined/behance-square.svg +1 -0
  274. data/app/assets/icons/outlined/behance.svg +1 -0
  275. data/app/assets/icons/outlined/bell.svg +1 -0
  276. data/app/assets/icons/outlined/bg-colors.svg +1 -0
  277. data/app/assets/icons/outlined/bilibili.svg +1 -0
  278. data/app/assets/icons/outlined/block.svg +1 -0
  279. data/app/assets/icons/outlined/bold.svg +1 -0
  280. data/app/assets/icons/outlined/book.svg +1 -0
  281. data/app/assets/icons/outlined/border-bottom.svg +1 -0
  282. data/app/assets/icons/outlined/border-horizontal.svg +1 -0
  283. data/app/assets/icons/outlined/border-inner.svg +1 -0
  284. data/app/assets/icons/outlined/border-left.svg +1 -0
  285. data/app/assets/icons/outlined/border-outer.svg +1 -0
  286. data/app/assets/icons/outlined/border-right.svg +1 -0
  287. data/app/assets/icons/outlined/border-top.svg +1 -0
  288. data/app/assets/icons/outlined/border-verticle.svg +1 -0
  289. data/app/assets/icons/outlined/border.svg +1 -0
  290. data/app/assets/icons/outlined/borderless-table.svg +1 -0
  291. data/app/assets/icons/outlined/box-plot.svg +1 -0
  292. data/app/assets/icons/outlined/branches.svg +1 -0
  293. data/app/assets/icons/outlined/bug.svg +1 -0
  294. data/app/assets/icons/outlined/build.svg +1 -0
  295. data/app/assets/icons/outlined/bulb.svg +1 -0
  296. data/app/assets/icons/outlined/calculator.svg +1 -0
  297. data/app/assets/icons/outlined/calendar.svg +1 -0
  298. data/app/assets/icons/outlined/camera.svg +1 -0
  299. data/app/assets/icons/outlined/car.svg +1 -0
  300. data/app/assets/icons/outlined/caret-down.svg +1 -0
  301. data/app/assets/icons/outlined/caret-left.svg +1 -0
  302. data/app/assets/icons/outlined/caret-right.svg +1 -0
  303. data/app/assets/icons/outlined/caret-up.svg +1 -0
  304. data/app/assets/icons/outlined/carry-out.svg +1 -0
  305. data/app/assets/icons/outlined/check-circle.svg +1 -0
  306. data/app/assets/icons/outlined/check-square.svg +1 -0
  307. data/app/assets/icons/outlined/check.svg +1 -0
  308. data/app/assets/icons/outlined/chrome.svg +1 -0
  309. data/app/assets/icons/outlined/ci-circle.svg +1 -0
  310. data/app/assets/icons/outlined/ci.svg +1 -0
  311. data/app/assets/icons/outlined/clear.svg +1 -0
  312. data/app/assets/icons/outlined/clock-circle.svg +1 -0
  313. data/app/assets/icons/outlined/close-circle.svg +1 -0
  314. data/app/assets/icons/outlined/close-square.svg +1 -0
  315. data/app/assets/icons/outlined/close.svg +1 -0
  316. data/app/assets/icons/outlined/cloud-download.svg +1 -0
  317. data/app/assets/icons/outlined/cloud-server.svg +1 -0
  318. data/app/assets/icons/outlined/cloud-sync.svg +1 -0
  319. data/app/assets/icons/outlined/cloud-upload.svg +1 -0
  320. data/app/assets/icons/outlined/cloud.svg +1 -0
  321. data/app/assets/icons/outlined/cluster.svg +1 -0
  322. data/app/assets/icons/outlined/code-sandbox.svg +1 -0
  323. data/app/assets/icons/outlined/code.svg +1 -0
  324. data/app/assets/icons/outlined/codepen-circle.svg +1 -0
  325. data/app/assets/icons/outlined/codepen.svg +1 -0
  326. data/app/assets/icons/outlined/coffee.svg +1 -0
  327. data/app/assets/icons/outlined/column-height.svg +1 -0
  328. data/app/assets/icons/outlined/column-width.svg +1 -0
  329. data/app/assets/icons/outlined/comment.svg +1 -0
  330. data/app/assets/icons/outlined/compass.svg +1 -0
  331. data/app/assets/icons/outlined/compress.svg +1 -0
  332. data/app/assets/icons/outlined/console-sql.svg +1 -0
  333. data/app/assets/icons/outlined/contacts.svg +1 -0
  334. data/app/assets/icons/outlined/container.svg +1 -0
  335. data/app/assets/icons/outlined/control.svg +1 -0
  336. data/app/assets/icons/outlined/copy.svg +1 -0
  337. data/app/assets/icons/outlined/copyright-circle.svg +1 -0
  338. data/app/assets/icons/outlined/copyright.svg +1 -0
  339. data/app/assets/icons/outlined/credit-card.svg +1 -0
  340. data/app/assets/icons/outlined/crown.svg +1 -0
  341. data/app/assets/icons/outlined/customer-service.svg +1 -0
  342. data/app/assets/icons/outlined/dash.svg +1 -0
  343. data/app/assets/icons/outlined/dashboard.svg +1 -0
  344. data/app/assets/icons/outlined/database.svg +1 -0
  345. data/app/assets/icons/outlined/delete-column.svg +1 -0
  346. data/app/assets/icons/outlined/delete-row.svg +1 -0
  347. data/app/assets/icons/outlined/delete.svg +1 -0
  348. data/app/assets/icons/outlined/delivered-procedure.svg +1 -0
  349. data/app/assets/icons/outlined/deployment-unit.svg +1 -0
  350. data/app/assets/icons/outlined/desktop.svg +1 -0
  351. data/app/assets/icons/outlined/diff.svg +1 -0
  352. data/app/assets/icons/outlined/dingding.svg +1 -0
  353. data/app/assets/icons/outlined/dingtalk.svg +1 -0
  354. data/app/assets/icons/outlined/disconnect.svg +1 -0
  355. data/app/assets/icons/outlined/discord.svg +1 -0
  356. data/app/assets/icons/outlined/dislike.svg +1 -0
  357. data/app/assets/icons/outlined/docker.svg +1 -0
  358. data/app/assets/icons/outlined/dollar-circle.svg +1 -0
  359. data/app/assets/icons/outlined/dollar.svg +1 -0
  360. data/app/assets/icons/outlined/dot-chart.svg +1 -0
  361. data/app/assets/icons/outlined/dot-net.svg +1 -0
  362. data/app/assets/icons/outlined/double-left.svg +1 -0
  363. data/app/assets/icons/outlined/double-right.svg +1 -0
  364. data/app/assets/icons/outlined/down-circle.svg +1 -0
  365. data/app/assets/icons/outlined/down-square.svg +1 -0
  366. data/app/assets/icons/outlined/down.svg +1 -0
  367. data/app/assets/icons/outlined/download.svg +1 -0
  368. data/app/assets/icons/outlined/drag.svg +1 -0
  369. data/app/assets/icons/outlined/dribbble-square.svg +1 -0
  370. data/app/assets/icons/outlined/dribbble.svg +1 -0
  371. data/app/assets/icons/outlined/dropbox.svg +1 -0
  372. data/app/assets/icons/outlined/edit.svg +1 -0
  373. data/app/assets/icons/outlined/ellipsis.svg +1 -0
  374. data/app/assets/icons/outlined/enter.svg +1 -0
  375. data/app/assets/icons/outlined/environment.svg +1 -0
  376. data/app/assets/icons/outlined/euro-circle.svg +1 -0
  377. data/app/assets/icons/outlined/euro.svg +1 -0
  378. data/app/assets/icons/outlined/exception.svg +1 -0
  379. data/app/assets/icons/outlined/exclamation-circle.svg +1 -0
  380. data/app/assets/icons/outlined/exclamation.svg +1 -0
  381. data/app/assets/icons/outlined/expand-alt.svg +1 -0
  382. data/app/assets/icons/outlined/expand.svg +1 -0
  383. data/app/assets/icons/outlined/experiment.svg +1 -0
  384. data/app/assets/icons/outlined/export.svg +1 -0
  385. data/app/assets/icons/outlined/eye-invisible.svg +1 -0
  386. data/app/assets/icons/outlined/eye.svg +1 -0
  387. data/app/assets/icons/outlined/facebook.svg +1 -0
  388. data/app/assets/icons/outlined/fall.svg +1 -0
  389. data/app/assets/icons/outlined/fast-backward.svg +1 -0
  390. data/app/assets/icons/outlined/fast-forward.svg +1 -0
  391. data/app/assets/icons/outlined/field-binary.svg +1 -0
  392. data/app/assets/icons/outlined/field-number.svg +1 -0
  393. data/app/assets/icons/outlined/field-string.svg +1 -0
  394. data/app/assets/icons/outlined/field-time.svg +1 -0
  395. data/app/assets/icons/outlined/file-add.svg +1 -0
  396. data/app/assets/icons/outlined/file-done.svg +1 -0
  397. data/app/assets/icons/outlined/file-excel.svg +1 -0
  398. data/app/assets/icons/outlined/file-exclamation.svg +1 -0
  399. data/app/assets/icons/outlined/file-gif.svg +1 -0
  400. data/app/assets/icons/outlined/file-image.svg +1 -0
  401. data/app/assets/icons/outlined/file-jpg.svg +1 -0
  402. data/app/assets/icons/outlined/file-markdown.svg +1 -0
  403. data/app/assets/icons/outlined/file-pdf.svg +1 -0
  404. data/app/assets/icons/outlined/file-ppt.svg +1 -0
  405. data/app/assets/icons/outlined/file-protect.svg +1 -0
  406. data/app/assets/icons/outlined/file-search.svg +1 -0
  407. data/app/assets/icons/outlined/file-sync.svg +1 -0
  408. data/app/assets/icons/outlined/file-text.svg +1 -0
  409. data/app/assets/icons/outlined/file-unknown.svg +1 -0
  410. data/app/assets/icons/outlined/file-word.svg +1 -0
  411. data/app/assets/icons/outlined/file-zip.svg +1 -0
  412. data/app/assets/icons/outlined/file.svg +1 -0
  413. data/app/assets/icons/outlined/filter.svg +1 -0
  414. data/app/assets/icons/outlined/fire.svg +1 -0
  415. data/app/assets/icons/outlined/flag.svg +1 -0
  416. data/app/assets/icons/outlined/folder-add.svg +1 -0
  417. data/app/assets/icons/outlined/folder-open.svg +1 -0
  418. data/app/assets/icons/outlined/folder-view.svg +1 -0
  419. data/app/assets/icons/outlined/folder.svg +1 -0
  420. data/app/assets/icons/outlined/font-colors.svg +1 -0
  421. data/app/assets/icons/outlined/font-size.svg +1 -0
  422. data/app/assets/icons/outlined/fork.svg +1 -0
  423. data/app/assets/icons/outlined/form.svg +1 -0
  424. data/app/assets/icons/outlined/format-painter.svg +1 -0
  425. data/app/assets/icons/outlined/forward.svg +1 -0
  426. data/app/assets/icons/outlined/frown.svg +1 -0
  427. data/app/assets/icons/outlined/fullscreen-exit.svg +1 -0
  428. data/app/assets/icons/outlined/fullscreen.svg +1 -0
  429. data/app/assets/icons/outlined/function.svg +1 -0
  430. data/app/assets/icons/outlined/fund-projection-screen.svg +1 -0
  431. data/app/assets/icons/outlined/fund-view.svg +1 -0
  432. data/app/assets/icons/outlined/fund.svg +1 -0
  433. data/app/assets/icons/outlined/funnel-plot.svg +1 -0
  434. data/app/assets/icons/outlined/gateway.svg +1 -0
  435. data/app/assets/icons/outlined/gif.svg +1 -0
  436. data/app/assets/icons/outlined/gift.svg +1 -0
  437. data/app/assets/icons/outlined/github.svg +1 -0
  438. data/app/assets/icons/outlined/gitlab.svg +1 -0
  439. data/app/assets/icons/outlined/global.svg +1 -0
  440. data/app/assets/icons/outlined/gold.svg +1 -0
  441. data/app/assets/icons/outlined/google-plus.svg +1 -0
  442. data/app/assets/icons/outlined/google.svg +1 -0
  443. data/app/assets/icons/outlined/group.svg +1 -0
  444. data/app/assets/icons/outlined/harmony-o-s.svg +1 -0
  445. data/app/assets/icons/outlined/hdd.svg +1 -0
  446. data/app/assets/icons/outlined/heart.svg +1 -0
  447. data/app/assets/icons/outlined/heat-map.svg +1 -0
  448. data/app/assets/icons/outlined/highlight.svg +1 -0
  449. data/app/assets/icons/outlined/history.svg +1 -0
  450. data/app/assets/icons/outlined/holder.svg +1 -0
  451. data/app/assets/icons/outlined/home.svg +1 -0
  452. data/app/assets/icons/outlined/hourglass.svg +1 -0
  453. data/app/assets/icons/outlined/html5.svg +1 -0
  454. data/app/assets/icons/outlined/idcard.svg +1 -0
  455. data/app/assets/icons/outlined/ie.svg +1 -0
  456. data/app/assets/icons/outlined/import.svg +1 -0
  457. data/app/assets/icons/outlined/inbox.svg +1 -0
  458. data/app/assets/icons/outlined/info-circle.svg +1 -0
  459. data/app/assets/icons/outlined/info.svg +1 -0
  460. data/app/assets/icons/outlined/insert-row-above.svg +1 -0
  461. data/app/assets/icons/outlined/insert-row-below.svg +1 -0
  462. data/app/assets/icons/outlined/insert-row-left.svg +1 -0
  463. data/app/assets/icons/outlined/insert-row-right.svg +1 -0
  464. data/app/assets/icons/outlined/instagram.svg +1 -0
  465. data/app/assets/icons/outlined/insurance.svg +1 -0
  466. data/app/assets/icons/outlined/interaction.svg +1 -0
  467. data/app/assets/icons/outlined/issues-close.svg +1 -0
  468. data/app/assets/icons/outlined/italic.svg +1 -0
  469. data/app/assets/icons/outlined/java-script.svg +1 -0
  470. data/app/assets/icons/outlined/java.svg +1 -0
  471. data/app/assets/icons/outlined/key.svg +1 -0
  472. data/app/assets/icons/outlined/kubernetes.svg +1 -0
  473. data/app/assets/icons/outlined/laptop.svg +1 -0
  474. data/app/assets/icons/outlined/layout.svg +1 -0
  475. data/app/assets/icons/outlined/left-circle.svg +1 -0
  476. data/app/assets/icons/outlined/left-square.svg +1 -0
  477. data/app/assets/icons/outlined/left.svg +1 -0
  478. data/app/assets/icons/outlined/like.svg +1 -0
  479. data/app/assets/icons/outlined/line-chart.svg +1 -0
  480. data/app/assets/icons/outlined/line-height.svg +1 -0
  481. data/app/assets/icons/outlined/line.svg +1 -0
  482. data/app/assets/icons/outlined/link.svg +1 -0
  483. data/app/assets/icons/outlined/linkedin.svg +1 -0
  484. data/app/assets/icons/outlined/linux.svg +1 -0
  485. data/app/assets/icons/outlined/loading-3-quarters.svg +1 -0
  486. data/app/assets/icons/outlined/loading.svg +1 -0
  487. data/app/assets/icons/outlined/lock.svg +1 -0
  488. data/app/assets/icons/outlined/login.svg +1 -0
  489. data/app/assets/icons/outlined/logout.svg +1 -0
  490. data/app/assets/icons/outlined/mac-command.svg +1 -0
  491. data/app/assets/icons/outlined/mail.svg +1 -0
  492. data/app/assets/icons/outlined/man.svg +1 -0
  493. data/app/assets/icons/outlined/medicine-box.svg +1 -0
  494. data/app/assets/icons/outlined/medium-workmark.svg +1 -0
  495. data/app/assets/icons/outlined/medium.svg +1 -0
  496. data/app/assets/icons/outlined/meh.svg +1 -0
  497. data/app/assets/icons/outlined/menu-fold.svg +1 -0
  498. data/app/assets/icons/outlined/menu-unfold.svg +1 -0
  499. data/app/assets/icons/outlined/menu.svg +1 -0
  500. data/app/assets/icons/outlined/merge-cells.svg +1 -0
  501. data/app/assets/icons/outlined/merge.svg +1 -0
  502. data/app/assets/icons/outlined/message.svg +1 -0
  503. data/app/assets/icons/outlined/minus-circle.svg +1 -0
  504. data/app/assets/icons/outlined/minus-square.svg +1 -0
  505. data/app/assets/icons/outlined/minus.svg +1 -0
  506. data/app/assets/icons/outlined/mobile.svg +1 -0
  507. data/app/assets/icons/outlined/money-collect.svg +1 -0
  508. data/app/assets/icons/outlined/monitor.svg +1 -0
  509. data/app/assets/icons/outlined/moon.svg +1 -0
  510. data/app/assets/icons/outlined/more.svg +1 -0
  511. data/app/assets/icons/outlined/muted.svg +1 -0
  512. data/app/assets/icons/outlined/node-collapse.svg +1 -0
  513. data/app/assets/icons/outlined/node-expand.svg +1 -0
  514. data/app/assets/icons/outlined/node-index.svg +1 -0
  515. data/app/assets/icons/outlined/notification.svg +1 -0
  516. data/app/assets/icons/outlined/number.svg +1 -0
  517. data/app/assets/icons/outlined/one-to-one.svg +1 -0
  518. data/app/assets/icons/outlined/open-a-i.svg +1 -0
  519. data/app/assets/icons/outlined/ordered-list.svg +1 -0
  520. data/app/assets/icons/outlined/paper-clip.svg +1 -0
  521. data/app/assets/icons/outlined/partition.svg +1 -0
  522. data/app/assets/icons/outlined/pause-circle.svg +1 -0
  523. data/app/assets/icons/outlined/pause.svg +1 -0
  524. data/app/assets/icons/outlined/pay-circle.svg +1 -0
  525. data/app/assets/icons/outlined/percentage.svg +1 -0
  526. data/app/assets/icons/outlined/phone.svg +1 -0
  527. data/app/assets/icons/outlined/pic-center.svg +1 -0
  528. data/app/assets/icons/outlined/pic-left.svg +1 -0
  529. data/app/assets/icons/outlined/pic-right.svg +1 -0
  530. data/app/assets/icons/outlined/picture.svg +1 -0
  531. data/app/assets/icons/outlined/pie-chart.svg +1 -0
  532. data/app/assets/icons/outlined/pinterest.svg +1 -0
  533. data/app/assets/icons/outlined/play-circle.svg +1 -0
  534. data/app/assets/icons/outlined/play-square.svg +1 -0
  535. data/app/assets/icons/outlined/plus-circle.svg +1 -0
  536. data/app/assets/icons/outlined/plus-square.svg +1 -0
  537. data/app/assets/icons/outlined/plus.svg +1 -0
  538. data/app/assets/icons/outlined/pound-circle.svg +1 -0
  539. data/app/assets/icons/outlined/pound.svg +1 -0
  540. data/app/assets/icons/outlined/poweroff.svg +1 -0
  541. data/app/assets/icons/outlined/printer.svg +1 -0
  542. data/app/assets/icons/outlined/product.svg +1 -0
  543. data/app/assets/icons/outlined/profile.svg +1 -0
  544. data/app/assets/icons/outlined/project.svg +1 -0
  545. data/app/assets/icons/outlined/property-safety.svg +1 -0
  546. data/app/assets/icons/outlined/pull-request.svg +1 -0
  547. data/app/assets/icons/outlined/pushpin.svg +1 -0
  548. data/app/assets/icons/outlined/python.svg +1 -0
  549. data/app/assets/icons/outlined/qq.svg +1 -0
  550. data/app/assets/icons/outlined/qrcode.svg +1 -0
  551. data/app/assets/icons/outlined/question-circle.svg +1 -0
  552. data/app/assets/icons/outlined/question.svg +1 -0
  553. data/app/assets/icons/outlined/radar-chart.svg +1 -0
  554. data/app/assets/icons/outlined/radius-bottomleft.svg +1 -0
  555. data/app/assets/icons/outlined/radius-bottomright.svg +1 -0
  556. data/app/assets/icons/outlined/radius-setting.svg +1 -0
  557. data/app/assets/icons/outlined/radius-upleft.svg +1 -0
  558. data/app/assets/icons/outlined/radius-upright.svg +1 -0
  559. data/app/assets/icons/outlined/read.svg +1 -0
  560. data/app/assets/icons/outlined/reconciliation.svg +1 -0
  561. data/app/assets/icons/outlined/red-envelope.svg +1 -0
  562. data/app/assets/icons/outlined/reddit.svg +1 -0
  563. data/app/assets/icons/outlined/redo.svg +1 -0
  564. data/app/assets/icons/outlined/reload.svg +1 -0
  565. data/app/assets/icons/outlined/rest.svg +1 -0
  566. data/app/assets/icons/outlined/retweet.svg +1 -0
  567. data/app/assets/icons/outlined/right-circle.svg +1 -0
  568. data/app/assets/icons/outlined/right-square.svg +1 -0
  569. data/app/assets/icons/outlined/right.svg +1 -0
  570. data/app/assets/icons/outlined/rise.svg +1 -0
  571. data/app/assets/icons/outlined/robot.svg +1 -0
  572. data/app/assets/icons/outlined/rocket.svg +1 -0
  573. data/app/assets/icons/outlined/rollback.svg +1 -0
  574. data/app/assets/icons/outlined/rotate-left.svg +1 -0
  575. data/app/assets/icons/outlined/rotate-right.svg +1 -0
  576. data/app/assets/icons/outlined/ruby.svg +1 -0
  577. data/app/assets/icons/outlined/safety-certificate.svg +1 -0
  578. data/app/assets/icons/outlined/safety.svg +1 -0
  579. data/app/assets/icons/outlined/save.svg +1 -0
  580. data/app/assets/icons/outlined/scan.svg +1 -0
  581. data/app/assets/icons/outlined/schedule.svg +1 -0
  582. data/app/assets/icons/outlined/scissor.svg +1 -0
  583. data/app/assets/icons/outlined/search.svg +1 -0
  584. data/app/assets/icons/outlined/security-scan.svg +1 -0
  585. data/app/assets/icons/outlined/select.svg +1 -0
  586. data/app/assets/icons/outlined/send.svg +1 -0
  587. data/app/assets/icons/outlined/setting.svg +1 -0
  588. data/app/assets/icons/outlined/shake.svg +1 -0
  589. data/app/assets/icons/outlined/share-alt.svg +1 -0
  590. data/app/assets/icons/outlined/shop.svg +1 -0
  591. data/app/assets/icons/outlined/shopping-cart.svg +1 -0
  592. data/app/assets/icons/outlined/shopping.svg +1 -0
  593. data/app/assets/icons/outlined/shrink.svg +1 -0
  594. data/app/assets/icons/outlined/signature.svg +1 -0
  595. data/app/assets/icons/outlined/sisternode.svg +1 -0
  596. data/app/assets/icons/outlined/sketch.svg +1 -0
  597. data/app/assets/icons/outlined/skin.svg +1 -0
  598. data/app/assets/icons/outlined/skype.svg +1 -0
  599. data/app/assets/icons/outlined/slack-square.svg +1 -0
  600. data/app/assets/icons/outlined/slack.svg +1 -0
  601. data/app/assets/icons/outlined/sliders.svg +1 -0
  602. data/app/assets/icons/outlined/small-dash.svg +1 -0
  603. data/app/assets/icons/outlined/smile.svg +1 -0
  604. data/app/assets/icons/outlined/snippets.svg +1 -0
  605. data/app/assets/icons/outlined/solution.svg +1 -0
  606. data/app/assets/icons/outlined/sort-ascending.svg +1 -0
  607. data/app/assets/icons/outlined/sort-descending.svg +1 -0
  608. data/app/assets/icons/outlined/sound.svg +1 -0
  609. data/app/assets/icons/outlined/split-cells.svg +1 -0
  610. data/app/assets/icons/outlined/spotify.svg +1 -0
  611. data/app/assets/icons/outlined/star.svg +1 -0
  612. data/app/assets/icons/outlined/step-backward.svg +1 -0
  613. data/app/assets/icons/outlined/step-forward.svg +1 -0
  614. data/app/assets/icons/outlined/stock.svg +1 -0
  615. data/app/assets/icons/outlined/stop.svg +1 -0
  616. data/app/assets/icons/outlined/strikethrough.svg +1 -0
  617. data/app/assets/icons/outlined/subnode.svg +1 -0
  618. data/app/assets/icons/outlined/sun.svg +1 -0
  619. data/app/assets/icons/outlined/swap-left.svg +1 -0
  620. data/app/assets/icons/outlined/swap-right.svg +1 -0
  621. data/app/assets/icons/outlined/swap.svg +1 -0
  622. data/app/assets/icons/outlined/switcher.svg +1 -0
  623. data/app/assets/icons/outlined/sync.svg +1 -0
  624. data/app/assets/icons/outlined/table.svg +1 -0
  625. data/app/assets/icons/outlined/tablet.svg +1 -0
  626. data/app/assets/icons/outlined/tag.svg +1 -0
  627. data/app/assets/icons/outlined/tags.svg +1 -0
  628. data/app/assets/icons/outlined/taobao-circle.svg +1 -0
  629. data/app/assets/icons/outlined/taobao.svg +1 -0
  630. data/app/assets/icons/outlined/team.svg +1 -0
  631. data/app/assets/icons/outlined/thunderbolt.svg +1 -0
  632. data/app/assets/icons/outlined/tik-tok.svg +1 -0
  633. data/app/assets/icons/outlined/to-top.svg +1 -0
  634. data/app/assets/icons/outlined/tool.svg +1 -0
  635. data/app/assets/icons/outlined/trademark-circle.svg +1 -0
  636. data/app/assets/icons/outlined/trademark.svg +1 -0
  637. data/app/assets/icons/outlined/transaction.svg +1 -0
  638. data/app/assets/icons/outlined/translation.svg +1 -0
  639. data/app/assets/icons/outlined/trophy.svg +1 -0
  640. data/app/assets/icons/outlined/truck.svg +1 -0
  641. data/app/assets/icons/outlined/twitch.svg +1 -0
  642. data/app/assets/icons/outlined/twitter.svg +1 -0
  643. data/app/assets/icons/outlined/underline.svg +1 -0
  644. data/app/assets/icons/outlined/undo.svg +1 -0
  645. data/app/assets/icons/outlined/ungroup.svg +1 -0
  646. data/app/assets/icons/outlined/unlock.svg +1 -0
  647. data/app/assets/icons/outlined/unordered-list.svg +1 -0
  648. data/app/assets/icons/outlined/up-circle.svg +1 -0
  649. data/app/assets/icons/outlined/up-square.svg +1 -0
  650. data/app/assets/icons/outlined/up.svg +1 -0
  651. data/app/assets/icons/outlined/upload.svg +1 -0
  652. data/app/assets/icons/outlined/usb.svg +1 -0
  653. data/app/assets/icons/outlined/user-add.svg +1 -0
  654. data/app/assets/icons/outlined/user-delete.svg +1 -0
  655. data/app/assets/icons/outlined/user-switch.svg +1 -0
  656. data/app/assets/icons/outlined/user.svg +1 -0
  657. data/app/assets/icons/outlined/usergroup-add.svg +1 -0
  658. data/app/assets/icons/outlined/usergroup-delete.svg +1 -0
  659. data/app/assets/icons/outlined/verified.svg +1 -0
  660. data/app/assets/icons/outlined/vertical-align-bottom.svg +1 -0
  661. data/app/assets/icons/outlined/vertical-align-middle.svg +1 -0
  662. data/app/assets/icons/outlined/vertical-align-top.svg +1 -0
  663. data/app/assets/icons/outlined/vertical-left.svg +1 -0
  664. data/app/assets/icons/outlined/vertical-right.svg +1 -0
  665. data/app/assets/icons/outlined/video-camera-add.svg +1 -0
  666. data/app/assets/icons/outlined/video-camera.svg +1 -0
  667. data/app/assets/icons/outlined/wallet.svg +1 -0
  668. data/app/assets/icons/outlined/warning.svg +1 -0
  669. data/app/assets/icons/outlined/wechat-work.svg +1 -0
  670. data/app/assets/icons/outlined/wechat.svg +1 -0
  671. data/app/assets/icons/outlined/weibo-circle.svg +1 -0
  672. data/app/assets/icons/outlined/weibo-square.svg +1 -0
  673. data/app/assets/icons/outlined/weibo.svg +1 -0
  674. data/app/assets/icons/outlined/whats-app.svg +1 -0
  675. data/app/assets/icons/outlined/wifi.svg +1 -0
  676. data/app/assets/icons/outlined/windows.svg +1 -0
  677. data/app/assets/icons/outlined/woman.svg +1 -0
  678. data/app/assets/icons/outlined/x.svg +1 -0
  679. data/app/assets/icons/outlined/yahoo.svg +1 -0
  680. data/app/assets/icons/outlined/youtube.svg +1 -0
  681. data/app/assets/icons/outlined/yuque.svg +1 -0
  682. data/app/assets/icons/outlined/zhihu.svg +1 -0
  683. data/app/assets/icons/outlined/zoom-in.svg +1 -0
  684. data/app/assets/icons/outlined/zoom-out.svg +1 -0
  685. data/app/assets/icons/twotone/account-book.svg +1 -0
  686. data/app/assets/icons/twotone/alert.svg +1 -0
  687. data/app/assets/icons/twotone/api.svg +1 -0
  688. data/app/assets/icons/twotone/appstore.svg +1 -0
  689. data/app/assets/icons/twotone/audio.svg +1 -0
  690. data/app/assets/icons/twotone/bank.svg +1 -0
  691. data/app/assets/icons/twotone/bell.svg +1 -0
  692. data/app/assets/icons/twotone/book.svg +1 -0
  693. data/app/assets/icons/twotone/box-plot.svg +1 -0
  694. data/app/assets/icons/twotone/bug.svg +1 -0
  695. data/app/assets/icons/twotone/build.svg +1 -0
  696. data/app/assets/icons/twotone/bulb.svg +1 -0
  697. data/app/assets/icons/twotone/calculator.svg +1 -0
  698. data/app/assets/icons/twotone/calendar.svg +1 -0
  699. data/app/assets/icons/twotone/camera.svg +1 -0
  700. data/app/assets/icons/twotone/car.svg +1 -0
  701. data/app/assets/icons/twotone/carry-out.svg +1 -0
  702. data/app/assets/icons/twotone/check-circle.svg +1 -0
  703. data/app/assets/icons/twotone/check-square.svg +1 -0
  704. data/app/assets/icons/twotone/ci-circle.svg +1 -0
  705. data/app/assets/icons/twotone/ci.svg +1 -0
  706. data/app/assets/icons/twotone/clock-circle.svg +1 -0
  707. data/app/assets/icons/twotone/close-circle.svg +1 -0
  708. data/app/assets/icons/twotone/close-square.svg +1 -0
  709. data/app/assets/icons/twotone/cloud.svg +1 -0
  710. data/app/assets/icons/twotone/code.svg +1 -0
  711. data/app/assets/icons/twotone/compass.svg +1 -0
  712. data/app/assets/icons/twotone/contacts.svg +1 -0
  713. data/app/assets/icons/twotone/container.svg +1 -0
  714. data/app/assets/icons/twotone/control.svg +1 -0
  715. data/app/assets/icons/twotone/copy.svg +1 -0
  716. data/app/assets/icons/twotone/copyright-circle.svg +1 -0
  717. data/app/assets/icons/twotone/copyright.svg +1 -0
  718. data/app/assets/icons/twotone/credit-card.svg +1 -0
  719. data/app/assets/icons/twotone/crown.svg +1 -0
  720. data/app/assets/icons/twotone/customer-service.svg +1 -0
  721. data/app/assets/icons/twotone/dashboard.svg +1 -0
  722. data/app/assets/icons/twotone/database.svg +1 -0
  723. data/app/assets/icons/twotone/delete.svg +1 -0
  724. data/app/assets/icons/twotone/diff.svg +1 -0
  725. data/app/assets/icons/twotone/dislike.svg +1 -0
  726. data/app/assets/icons/twotone/dollar-circle.svg +1 -0
  727. data/app/assets/icons/twotone/dollar.svg +1 -0
  728. data/app/assets/icons/twotone/down-circle.svg +1 -0
  729. data/app/assets/icons/twotone/down-square.svg +1 -0
  730. data/app/assets/icons/twotone/edit.svg +1 -0
  731. data/app/assets/icons/twotone/environment.svg +1 -0
  732. data/app/assets/icons/twotone/euro-circle.svg +1 -0
  733. data/app/assets/icons/twotone/euro.svg +1 -0
  734. data/app/assets/icons/twotone/exclamation-circle.svg +1 -0
  735. data/app/assets/icons/twotone/experiment.svg +1 -0
  736. data/app/assets/icons/twotone/eye-invisible.svg +1 -0
  737. data/app/assets/icons/twotone/eye.svg +1 -0
  738. data/app/assets/icons/twotone/file-add.svg +1 -0
  739. data/app/assets/icons/twotone/file-excel.svg +1 -0
  740. data/app/assets/icons/twotone/file-exclamation.svg +1 -0
  741. data/app/assets/icons/twotone/file-image.svg +1 -0
  742. data/app/assets/icons/twotone/file-markdown.svg +1 -0
  743. data/app/assets/icons/twotone/file-pdf.svg +1 -0
  744. data/app/assets/icons/twotone/file-ppt.svg +1 -0
  745. data/app/assets/icons/twotone/file-text.svg +1 -0
  746. data/app/assets/icons/twotone/file-unknown.svg +1 -0
  747. data/app/assets/icons/twotone/file-word.svg +1 -0
  748. data/app/assets/icons/twotone/file-zip.svg +1 -0
  749. data/app/assets/icons/twotone/file.svg +1 -0
  750. data/app/assets/icons/twotone/filter.svg +1 -0
  751. data/app/assets/icons/twotone/fire.svg +1 -0
  752. data/app/assets/icons/twotone/flag.svg +1 -0
  753. data/app/assets/icons/twotone/folder-add.svg +1 -0
  754. data/app/assets/icons/twotone/folder-open.svg +1 -0
  755. data/app/assets/icons/twotone/folder.svg +1 -0
  756. data/app/assets/icons/twotone/frown.svg +1 -0
  757. data/app/assets/icons/twotone/fund.svg +1 -0
  758. data/app/assets/icons/twotone/funnel-plot.svg +1 -0
  759. data/app/assets/icons/twotone/gift.svg +1 -0
  760. data/app/assets/icons/twotone/gold.svg +1 -0
  761. data/app/assets/icons/twotone/hdd.svg +1 -0
  762. data/app/assets/icons/twotone/heart.svg +1 -0
  763. data/app/assets/icons/twotone/highlight.svg +1 -0
  764. data/app/assets/icons/twotone/home.svg +1 -0
  765. data/app/assets/icons/twotone/hourglass.svg +1 -0
  766. data/app/assets/icons/twotone/html5.svg +1 -0
  767. data/app/assets/icons/twotone/idcard.svg +1 -0
  768. data/app/assets/icons/twotone/info-circle.svg +1 -0
  769. data/app/assets/icons/twotone/insurance.svg +1 -0
  770. data/app/assets/icons/twotone/interaction.svg +1 -0
  771. data/app/assets/icons/twotone/layout.svg +1 -0
  772. data/app/assets/icons/twotone/left-circle.svg +1 -0
  773. data/app/assets/icons/twotone/left-square.svg +1 -0
  774. data/app/assets/icons/twotone/like.svg +1 -0
  775. data/app/assets/icons/twotone/lock.svg +1 -0
  776. data/app/assets/icons/twotone/mail.svg +1 -0
  777. data/app/assets/icons/twotone/medicine-box.svg +1 -0
  778. data/app/assets/icons/twotone/meh.svg +1 -0
  779. data/app/assets/icons/twotone/message.svg +1 -0
  780. data/app/assets/icons/twotone/minus-circle.svg +1 -0
  781. data/app/assets/icons/twotone/minus-square.svg +1 -0
  782. data/app/assets/icons/twotone/mobile.svg +1 -0
  783. data/app/assets/icons/twotone/money-collect.svg +1 -0
  784. data/app/assets/icons/twotone/notification.svg +1 -0
  785. data/app/assets/icons/twotone/pause-circle.svg +1 -0
  786. data/app/assets/icons/twotone/phone.svg +1 -0
  787. data/app/assets/icons/twotone/picture.svg +1 -0
  788. data/app/assets/icons/twotone/pie-chart.svg +1 -0
  789. data/app/assets/icons/twotone/play-circle.svg +1 -0
  790. data/app/assets/icons/twotone/play-square.svg +1 -0
  791. data/app/assets/icons/twotone/plus-circle.svg +1 -0
  792. data/app/assets/icons/twotone/plus-square.svg +1 -0
  793. data/app/assets/icons/twotone/pound-circle.svg +1 -0
  794. data/app/assets/icons/twotone/printer.svg +1 -0
  795. data/app/assets/icons/twotone/profile.svg +1 -0
  796. data/app/assets/icons/twotone/project.svg +1 -0
  797. data/app/assets/icons/twotone/property-safety.svg +1 -0
  798. data/app/assets/icons/twotone/pushpin.svg +1 -0
  799. data/app/assets/icons/twotone/question-circle.svg +1 -0
  800. data/app/assets/icons/twotone/reconciliation.svg +1 -0
  801. data/app/assets/icons/twotone/red-envelope.svg +1 -0
  802. data/app/assets/icons/twotone/rest.svg +1 -0
  803. data/app/assets/icons/twotone/right-circle.svg +1 -0
  804. data/app/assets/icons/twotone/right-square.svg +1 -0
  805. data/app/assets/icons/twotone/rocket.svg +1 -0
  806. data/app/assets/icons/twotone/safety-certificate.svg +1 -0
  807. data/app/assets/icons/twotone/save.svg +1 -0
  808. data/app/assets/icons/twotone/schedule.svg +1 -0
  809. data/app/assets/icons/twotone/security-scan.svg +1 -0
  810. data/app/assets/icons/twotone/setting.svg +1 -0
  811. data/app/assets/icons/twotone/shop.svg +1 -0
  812. data/app/assets/icons/twotone/shopping.svg +1 -0
  813. data/app/assets/icons/twotone/skin.svg +1 -0
  814. data/app/assets/icons/twotone/sliders.svg +1 -0
  815. data/app/assets/icons/twotone/smile.svg +1 -0
  816. data/app/assets/icons/twotone/snippets.svg +1 -0
  817. data/app/assets/icons/twotone/sound.svg +1 -0
  818. data/app/assets/icons/twotone/star.svg +1 -0
  819. data/app/assets/icons/twotone/stop.svg +1 -0
  820. data/app/assets/icons/twotone/switcher.svg +1 -0
  821. data/app/assets/icons/twotone/tablet.svg +1 -0
  822. data/app/assets/icons/twotone/tag.svg +1 -0
  823. data/app/assets/icons/twotone/tags.svg +1 -0
  824. data/app/assets/icons/twotone/thunderbolt.svg +1 -0
  825. data/app/assets/icons/twotone/tool.svg +1 -0
  826. data/app/assets/icons/twotone/trademark-circle.svg +1 -0
  827. data/app/assets/icons/twotone/trophy.svg +1 -0
  828. data/app/assets/icons/twotone/unlock.svg +1 -0
  829. data/app/assets/icons/twotone/up-circle.svg +1 -0
  830. data/app/assets/icons/twotone/up-square.svg +1 -0
  831. data/app/assets/icons/twotone/usb.svg +1 -0
  832. data/app/assets/icons/twotone/video-camera.svg +1 -0
  833. data/app/assets/icons/twotone/wallet.svg +1 -0
  834. data/app/assets/icons/twotone/warning.svg +1 -0
  835. data/app/assets/illustrations/success.svg +1 -0
  836. data/app/assets/javascripts/hakumi_components.js +1 -0
  837. data/app/assets/stylesheets/hakumi/alert.scss +1 -0
  838. data/app/assets/stylesheets/hakumi_components.css +1 -0
  839. data/app/components/hakumi/admin_panel/component.html.erb +61 -0
  840. data/app/components/hakumi/admin_panel/component.rb +40 -0
  841. data/app/components/hakumi/affix/component.html.erb +7 -0
  842. data/app/components/hakumi/affix/component.rb +88 -0
  843. data/app/components/hakumi/alert/component.html.erb +30 -0
  844. data/app/components/hakumi/alert/component.rb +128 -0
  845. data/app/components/hakumi/anchor/component.html.erb +8 -0
  846. data/app/components/hakumi/anchor/component.rb +80 -0
  847. data/app/components/hakumi/anchor/link/component.html.erb +12 -0
  848. data/app/components/hakumi/anchor/link/component.rb +34 -0
  849. data/app/components/hakumi/autocomplete/component.html.erb +74 -0
  850. data/app/components/hakumi/autocomplete/component.rb +202 -0
  851. data/app/components/hakumi/avatar/component.rb +91 -0
  852. data/app/components/hakumi/badge/component.rb +85 -0
  853. data/app/components/hakumi/base_component.rb +179 -0
  854. data/app/components/hakumi/breadcrumb/component.html.erb +12 -0
  855. data/app/components/hakumi/breadcrumb/component.rb +27 -0
  856. data/app/components/hakumi/breadcrumb/item/component.html.erb +17 -0
  857. data/app/components/hakumi/breadcrumb/item/component.rb +35 -0
  858. data/app/components/hakumi/button/component.rb +121 -0
  859. data/app/components/hakumi/calendar/component.html.erb +163 -0
  860. data/app/components/hakumi/calendar/component.rb +448 -0
  861. data/app/components/hakumi/card/component.html.erb +65 -0
  862. data/app/components/hakumi/card/component.rb +87 -0
  863. data/app/components/hakumi/card/grid/component.html.erb +3 -0
  864. data/app/components/hakumi/card/grid/component.rb +37 -0
  865. data/app/components/hakumi/card/meta/component.html.erb +23 -0
  866. data/app/components/hakumi/card/meta/component.rb +46 -0
  867. data/app/components/hakumi/carousel/component.html.erb +56 -0
  868. data/app/components/hakumi/carousel/component.rb +147 -0
  869. data/app/components/hakumi/cascader/component.html.erb +41 -0
  870. data/app/components/hakumi/cascader/component.rb +119 -0
  871. data/app/components/hakumi/checkbox/component.html.erb +21 -0
  872. data/app/components/hakumi/checkbox/component.rb +54 -0
  873. data/app/components/hakumi/checkbox/group/component.html.erb +12 -0
  874. data/app/components/hakumi/checkbox/group/component.rb +64 -0
  875. data/app/components/hakumi/collapse/component.html.erb +31 -0
  876. data/app/components/hakumi/collapse/component.rb +117 -0
  877. data/app/components/hakumi/collapse/panel/component.rb +56 -0
  878. data/app/components/hakumi/color_picker/component.html.erb +166 -0
  879. data/app/components/hakumi/color_picker/component.rb +173 -0
  880. data/app/components/hakumi/concerns/form_field.rb +135 -0
  881. data/app/components/hakumi/container/component.rb +76 -0
  882. data/app/components/hakumi/date_picker/component.html.erb +80 -0
  883. data/app/components/hakumi/date_picker/component.rb +140 -0
  884. data/app/components/hakumi/date_picker/range_picker.html.erb +54 -0
  885. data/app/components/hakumi/date_picker/range_picker.rb +136 -0
  886. data/app/components/hakumi/date_picker/shared_rendering.rb +199 -0
  887. data/app/components/hakumi/descriptions/component.html.erb +52 -0
  888. data/app/components/hakumi/descriptions/component.rb +182 -0
  889. data/app/components/hakumi/descriptions/item/component.rb +28 -0
  890. data/app/components/hakumi/divider/component.rb +66 -0
  891. data/app/components/hakumi/drawer/component.html.erb +44 -0
  892. data/app/components/hakumi/drawer/component.rb +115 -0
  893. data/app/components/hakumi/dropdown/component.html.erb +20 -0
  894. data/app/components/hakumi/dropdown/component.rb +97 -0
  895. data/app/components/hakumi/dropdown/divider/component.rb +13 -0
  896. data/app/components/hakumi/dropdown/item/component.html.erb +17 -0
  897. data/app/components/hakumi/dropdown/item/component.rb +47 -0
  898. data/app/components/hakumi/empty/component.rb +110 -0
  899. data/app/components/hakumi/flex/component.rb +78 -0
  900. data/app/components/hakumi/float_button/back_top/component.rb +79 -0
  901. data/app/components/hakumi/float_button/component.rb +203 -0
  902. data/app/components/hakumi/float_button/group/component.rb +227 -0
  903. data/app/components/hakumi/float_button/group_cluster/component.rb +141 -0
  904. data/app/components/hakumi/form/item/component.rb +114 -0
  905. data/app/components/hakumi/grid/col/component.rb +98 -0
  906. data/app/components/hakumi/grid/row/component.rb +79 -0
  907. data/app/components/hakumi/icon/component.html.erb +3 -0
  908. data/app/components/hakumi/icon/component.rb +167 -0
  909. data/app/components/hakumi/image/component.html.erb +81 -0
  910. data/app/components/hakumi/image/component.rb +112 -0
  911. data/app/components/hakumi/image/preview_group/component.html.erb +83 -0
  912. data/app/components/hakumi/image/preview_group/component.rb +70 -0
  913. data/app/components/hakumi/input/component.html.erb +27 -0
  914. data/app/components/hakumi/input/component.rb +187 -0
  915. data/app/components/hakumi/input/password/component.rb +95 -0
  916. data/app/components/hakumi/input/text_area/component.html.erb +21 -0
  917. data/app/components/hakumi/input/text_area/component.rb +133 -0
  918. data/app/components/hakumi/input_number/component.html.erb +73 -0
  919. data/app/components/hakumi/input_number/component.rb +199 -0
  920. data/app/components/hakumi/layout/component.html.erb +1 -0
  921. data/app/components/hakumi/layout/component.rb +21 -0
  922. data/app/components/hakumi/layout/content/component.html.erb +1 -0
  923. data/app/components/hakumi/layout/content/component.rb +19 -0
  924. data/app/components/hakumi/layout/footer/component.html.erb +1 -0
  925. data/app/components/hakumi/layout/footer/component.rb +19 -0
  926. data/app/components/hakumi/layout/header/component.html.erb +1 -0
  927. data/app/components/hakumi/layout/header/component.rb +19 -0
  928. data/app/components/hakumi/layout/sider/component.html.erb +1 -0
  929. data/app/components/hakumi/layout/sider/component.rb +56 -0
  930. data/app/components/hakumi/mentions/component.html.erb +51 -0
  931. data/app/components/hakumi/mentions/component.rb +166 -0
  932. data/app/components/hakumi/menu/component.html.erb +5 -0
  933. data/app/components/hakumi/menu/component.rb +126 -0
  934. data/app/components/hakumi/menu/divider/component.rb +13 -0
  935. data/app/components/hakumi/menu/group/component.html.erb +8 -0
  936. data/app/components/hakumi/menu/group/component.rb +47 -0
  937. data/app/components/hakumi/menu/item/component.html.erb +22 -0
  938. data/app/components/hakumi/menu/item/component.rb +47 -0
  939. data/app/components/hakumi/menu/sub_menu/component.html.erb +23 -0
  940. data/app/components/hakumi/menu/sub_menu/component.rb +92 -0
  941. data/app/components/hakumi/message/component.html.erb +1 -0
  942. data/app/components/hakumi/message/component.rb +106 -0
  943. data/app/components/hakumi/modal/component.rb +177 -0
  944. data/app/components/hakumi/modal/confirm/component.rb +64 -0
  945. data/app/components/hakumi/modal/error/component.rb +50 -0
  946. data/app/components/hakumi/modal/info/component.rb +50 -0
  947. data/app/components/hakumi/modal/success/component.rb +50 -0
  948. data/app/components/hakumi/modal/warning/component.rb +51 -0
  949. data/app/components/hakumi/notification/component.rb +126 -0
  950. data/app/components/hakumi/pagination/component.html.erb +115 -0
  951. data/app/components/hakumi/pagination/component.rb +205 -0
  952. data/app/components/hakumi/popconfirm/component.html.erb +55 -0
  953. data/app/components/hakumi/popconfirm/component.rb +88 -0
  954. data/app/components/hakumi/popover/component.html.erb +25 -0
  955. data/app/components/hakumi/popover/component.rb +132 -0
  956. data/app/components/hakumi/progress/component.html.erb +81 -0
  957. data/app/components/hakumi/progress/component.rb +565 -0
  958. data/app/components/hakumi/qr_code/component.html.erb +15 -0
  959. data/app/components/hakumi/qr_code/component.rb +339 -0
  960. data/app/components/hakumi/radio/component.html.erb +43 -0
  961. data/app/components/hakumi/radio/component.rb +80 -0
  962. data/app/components/hakumi/radio/group/component.html.erb +49 -0
  963. data/app/components/hakumi/radio/group/component.rb +132 -0
  964. data/app/components/hakumi/rate/component.html.erb +48 -0
  965. data/app/components/hakumi/rate/component.rb +132 -0
  966. data/app/components/hakumi/result/component.html.erb +23 -0
  967. data/app/components/hakumi/result/component.rb +125 -0
  968. data/app/components/hakumi/segmented/component.html.erb +17 -0
  969. data/app/components/hakumi/segmented/component.rb +273 -0
  970. data/app/components/hakumi/select/component.html.erb +103 -0
  971. data/app/components/hakumi/select/component.rb +125 -0
  972. data/app/components/hakumi/skeleton/avatar/component.html.erb +3 -0
  973. data/app/components/hakumi/skeleton/avatar/component.rb +66 -0
  974. data/app/components/hakumi/skeleton/button/component.html.erb +3 -0
  975. data/app/components/hakumi/skeleton/button/component.rb +59 -0
  976. data/app/components/hakumi/skeleton/component.html.erb +25 -0
  977. data/app/components/hakumi/skeleton/component.rb +200 -0
  978. data/app/components/hakumi/skeleton/image/component.html.erb +5 -0
  979. data/app/components/hakumi/skeleton/image/component.rb +80 -0
  980. data/app/components/hakumi/skeleton/input/component.html.erb +3 -0
  981. data/app/components/hakumi/skeleton/input/component.rb +51 -0
  982. data/app/components/hakumi/skeleton/node/component.html.erb +5 -0
  983. data/app/components/hakumi/skeleton/node/component.rb +43 -0
  984. data/app/components/hakumi/slider/component.html.erb +67 -0
  985. data/app/components/hakumi/slider/component.rb +232 -0
  986. data/app/components/hakumi/space/compact/component.html.erb +3 -0
  987. data/app/components/hakumi/space/compact/component.rb +36 -0
  988. data/app/components/hakumi/space/component.html.erb +12 -0
  989. data/app/components/hakumi/space/component.rb +73 -0
  990. data/app/components/hakumi/spin/component.html.erb +13 -0
  991. data/app/components/hakumi/spin/component.rb +209 -0
  992. data/app/components/hakumi/splitter/component.html.erb +3 -0
  993. data/app/components/hakumi/splitter/component.rb +38 -0
  994. data/app/components/hakumi/splitter/panel/component.html.erb +3 -0
  995. data/app/components/hakumi/splitter/panel/component.rb +73 -0
  996. data/app/components/hakumi/statistic/component.html.erb +16 -0
  997. data/app/components/hakumi/statistic/component.rb +291 -0
  998. data/app/components/hakumi/steps/component.html.erb +57 -0
  999. data/app/components/hakumi/steps/component.rb +145 -0
  1000. data/app/components/hakumi/steps/item/component.html.erb +1 -0
  1001. data/app/components/hakumi/steps/item/component.rb +91 -0
  1002. data/app/components/hakumi/switch/component.html.erb +28 -0
  1003. data/app/components/hakumi/switch/component.rb +125 -0
  1004. data/app/components/hakumi/table/column/component.rb +80 -0
  1005. data/app/components/hakumi/table/column_group/component.rb +78 -0
  1006. data/app/components/hakumi/table/component.html.erb +196 -0
  1007. data/app/components/hakumi/table/component.rb +957 -0
  1008. data/app/components/hakumi/table/concerns/columns.rb +219 -0
  1009. data/app/components/hakumi/tabs/component.html.erb +84 -0
  1010. data/app/components/hakumi/tabs/component.rb +196 -0
  1011. data/app/components/hakumi/tabs/item/component.rb +87 -0
  1012. data/app/components/hakumi/tag/component.rb +187 -0
  1013. data/app/components/hakumi/tag/group/component.rb +48 -0
  1014. data/app/components/hakumi/time_picker/component.html.erb +63 -0
  1015. data/app/components/hakumi/time_picker/component.rb +159 -0
  1016. data/app/components/hakumi/timeline/component.html.erb +7 -0
  1017. data/app/components/hakumi/timeline/component.rb +168 -0
  1018. data/app/components/hakumi/timeline/item/component.html.erb +19 -0
  1019. data/app/components/hakumi/timeline/item/component.rb +137 -0
  1020. data/app/components/hakumi/tooltip/component.html.erb +20 -0
  1021. data/app/components/hakumi/tooltip/component.rb +121 -0
  1022. data/app/components/hakumi/tour/component.html.erb +66 -0
  1023. data/app/components/hakumi/tour/component.rb +158 -0
  1024. data/app/components/hakumi/transfer/component.html.erb +173 -0
  1025. data/app/components/hakumi/transfer/component.rb +249 -0
  1026. data/app/components/hakumi/tree/component.html.erb +23 -0
  1027. data/app/components/hakumi/tree/component.rb +523 -0
  1028. data/app/components/hakumi/tree_select/component.html.erb +76 -0
  1029. data/app/components/hakumi/tree_select/component.rb +261 -0
  1030. data/app/components/hakumi/typography/base_component.rb +109 -0
  1031. data/app/components/hakumi/typography/link/component.rb +34 -0
  1032. data/app/components/hakumi/typography/paragraph/component.rb +13 -0
  1033. data/app/components/hakumi/typography/text/component.rb +8 -0
  1034. data/app/components/hakumi/typography/title/component.rb +29 -0
  1035. data/app/components/hakumi/upload/component.html.erb +117 -0
  1036. data/app/components/hakumi/upload/component.rb +193 -0
  1037. data/app/controllers/hakumi_components/components_controller.rb +27 -0
  1038. data/app/form_builders/hakumi/form_builder.rb +440 -0
  1039. data/app/javascript/hakumi_components/boot.js +8 -0
  1040. data/app/javascript/hakumi_components/controllers/base/registry_controller.js +101 -0
  1041. data/app/javascript/hakumi_components/controllers/hakumi/admin_panel_controller.js +363 -0
  1042. data/app/javascript/hakumi_components/controllers/hakumi/affix_controller.js +206 -0
  1043. data/app/javascript/hakumi_components/controllers/hakumi/alert_controller.js +46 -0
  1044. data/app/javascript/hakumi_components/controllers/hakumi/anchor_controller.js +212 -0
  1045. data/app/javascript/hakumi_components/controllers/hakumi/autocomplete_controller.js +357 -0
  1046. data/app/javascript/hakumi_components/controllers/hakumi/avatar_text_controller.js +48 -0
  1047. data/app/javascript/hakumi_components/controllers/hakumi/back_top_controller.js +83 -0
  1048. data/app/javascript/hakumi_components/controllers/hakumi/button_controller.js +65 -0
  1049. data/app/javascript/hakumi_components/controllers/hakumi/calendar_controller.js +1101 -0
  1050. data/app/javascript/hakumi_components/controllers/hakumi/carousel_controller.js +348 -0
  1051. data/app/javascript/hakumi_components/controllers/hakumi/cascader_controller.js +287 -0
  1052. data/app/javascript/hakumi_components/controllers/hakumi/checkbox_controller.js +84 -0
  1053. data/app/javascript/hakumi_components/controllers/hakumi/checkbox_group_controller.js +132 -0
  1054. data/app/javascript/hakumi_components/controllers/hakumi/collapse_controller.js +181 -0
  1055. data/app/javascript/hakumi_components/controllers/hakumi/color_picker_controller.js +735 -0
  1056. data/app/javascript/hakumi_components/controllers/hakumi/date_picker_controller.js +906 -0
  1057. data/app/javascript/hakumi_components/controllers/hakumi/drawer_controller.js +126 -0
  1058. data/app/javascript/hakumi_components/controllers/hakumi/dropdown_controller.js +103 -0
  1059. data/app/javascript/hakumi_components/controllers/hakumi/float_button_group_controller.js +52 -0
  1060. data/app/javascript/hakumi_components/controllers/hakumi/form_item_controller.js +348 -0
  1061. data/app/javascript/hakumi_components/controllers/hakumi/image_controller.js +437 -0
  1062. data/app/javascript/hakumi_components/controllers/hakumi/input_controller.js +84 -0
  1063. data/app/javascript/hakumi_components/controllers/hakumi/input_number_controller.js +302 -0
  1064. data/app/javascript/hakumi_components/controllers/hakumi/input_password_controller.js +112 -0
  1065. data/app/javascript/hakumi_components/controllers/hakumi/input_textarea_controller.js +102 -0
  1066. data/app/javascript/hakumi_components/controllers/hakumi/mentions_controller.js +412 -0
  1067. data/app/javascript/hakumi_components/controllers/hakumi/menu_controller.js +485 -0
  1068. data/app/javascript/hakumi_components/controllers/hakumi/message_controller.js +344 -0
  1069. data/app/javascript/hakumi_components/controllers/hakumi/modal_controller.js +167 -0
  1070. data/app/javascript/hakumi_components/controllers/hakumi/modal_trigger_controller.js +53 -0
  1071. data/app/javascript/hakumi_components/controllers/hakumi/notification_controller.js +433 -0
  1072. data/app/javascript/hakumi_components/controllers/hakumi/pagination_controller.js +406 -0
  1073. data/app/javascript/hakumi_components/controllers/hakumi/popconfirm_controller.js +357 -0
  1074. data/app/javascript/hakumi_components/controllers/hakumi/popover_controller.js +473 -0
  1075. data/app/javascript/hakumi_components/controllers/hakumi/progress_controller.js +185 -0
  1076. data/app/javascript/hakumi_components/controllers/hakumi/qr_code_controller.js +315 -0
  1077. data/app/javascript/hakumi_components/controllers/hakumi/radio_controller.js +86 -0
  1078. data/app/javascript/hakumi_components/controllers/hakumi/rate_controller.js +262 -0
  1079. data/app/javascript/hakumi_components/controllers/hakumi/segmented_controller.js +171 -0
  1080. data/app/javascript/hakumi_components/controllers/hakumi/select_controller.js +315 -0
  1081. data/app/javascript/hakumi_components/controllers/hakumi/slider_controller.js +471 -0
  1082. data/app/javascript/hakumi_components/controllers/hakumi/spin_controller.js +130 -0
  1083. data/app/javascript/hakumi_components/controllers/hakumi/splitter_controller.js +184 -0
  1084. data/app/javascript/hakumi_components/controllers/hakumi/statistic_controller.js +249 -0
  1085. data/app/javascript/hakumi_components/controllers/hakumi/steps_controller.js +125 -0
  1086. data/app/javascript/hakumi_components/controllers/hakumi/switch_controller.js +147 -0
  1087. data/app/javascript/hakumi_components/controllers/hakumi/table_controller.js +1198 -0
  1088. data/app/javascript/hakumi_components/controllers/hakumi/tabs_controller.js +567 -0
  1089. data/app/javascript/hakumi_components/controllers/hakumi/tag_controller.js +103 -0
  1090. data/app/javascript/hakumi_components/controllers/hakumi/tag_group_controller.js +94 -0
  1091. data/app/javascript/hakumi_components/controllers/hakumi/theme_controller.js +114 -0
  1092. data/app/javascript/hakumi_components/controllers/hakumi/time_picker_controller.js +291 -0
  1093. data/app/javascript/hakumi_components/controllers/hakumi/timeline_controller.js +88 -0
  1094. data/app/javascript/hakumi_components/controllers/hakumi/tooltip_controller.js +295 -0
  1095. data/app/javascript/hakumi_components/controllers/hakumi/tour_controller.js +508 -0
  1096. data/app/javascript/hakumi_components/controllers/hakumi/transfer_controller.js +315 -0
  1097. data/app/javascript/hakumi_components/controllers/hakumi/tree_controller.js +708 -0
  1098. data/app/javascript/hakumi_components/controllers/hakumi/tree_select_controller.js +281 -0
  1099. data/app/javascript/hakumi_components/controllers/hakumi/typography_controller.js +100 -0
  1100. data/app/javascript/hakumi_components/controllers/hakumi/upload_controller.js +1101 -0
  1101. data/app/javascript/hakumi_components/core/config.js +7 -0
  1102. data/app/javascript/hakumi_components/core/dom.js +27 -0
  1103. data/app/javascript/hakumi_components/core/persistence.js +132 -0
  1104. data/app/javascript/hakumi_components/core/registry.js +23 -0
  1105. data/app/javascript/hakumi_components/core/render_component.js +177 -0
  1106. data/app/javascript/hakumi_components/esbuild_loader.js +149 -0
  1107. data/app/javascript/hakumi_components/index.js +79 -0
  1108. data/app/javascript/hakumi_components/plugins/persisted_singletons.js +19 -0
  1109. data/app/javascript/hakumi_components/utils/date_helper.js +111 -0
  1110. data/app/javascript/lib/validation_manager.js +238 -0
  1111. data/app/javascript/stylesheets/_base.scss +63 -0
  1112. data/app/javascript/stylesheets/_hakumi_components.scss +83 -0
  1113. data/app/javascript/stylesheets/_theme-helpers.scss +53 -0
  1114. data/app/javascript/stylesheets/_theme-tokens.scss +270 -0
  1115. data/app/javascript/stylesheets/_variables.scss +229 -0
  1116. data/app/javascript/stylesheets/components/_admin_panel.scss +264 -0
  1117. data/app/javascript/stylesheets/components/_affix.scss +33 -0
  1118. data/app/javascript/stylesheets/components/_alert.scss +116 -0
  1119. data/app/javascript/stylesheets/components/_anchor.scss +132 -0
  1120. data/app/javascript/stylesheets/components/_autocomplete.scss +190 -0
  1121. data/app/javascript/stylesheets/components/_avatar.scss +99 -0
  1122. data/app/javascript/stylesheets/components/_badge.scss +121 -0
  1123. data/app/javascript/stylesheets/components/_breadcrumb.scss +77 -0
  1124. data/app/javascript/stylesheets/components/_button.scss +354 -0
  1125. data/app/javascript/stylesheets/components/_calendar.scss +859 -0
  1126. data/app/javascript/stylesheets/components/_card.scss +323 -0
  1127. data/app/javascript/stylesheets/components/_carousel.scss +180 -0
  1128. data/app/javascript/stylesheets/components/_cascader.scss +276 -0
  1129. data/app/javascript/stylesheets/components/_checkbox.scss +217 -0
  1130. data/app/javascript/stylesheets/components/_collapse.scss +148 -0
  1131. data/app/javascript/stylesheets/components/_color_picker.scss +387 -0
  1132. data/app/javascript/stylesheets/components/_container.scss +45 -0
  1133. data/app/javascript/stylesheets/components/_date_picker.scss +312 -0
  1134. data/app/javascript/stylesheets/components/_descriptions.scss +209 -0
  1135. data/app/javascript/stylesheets/components/_divider.scss +110 -0
  1136. data/app/javascript/stylesheets/components/_drawer.scss +168 -0
  1137. data/app/javascript/stylesheets/components/_dropdown.scss +162 -0
  1138. data/app/javascript/stylesheets/components/_empty.scss +151 -0
  1139. data/app/javascript/stylesheets/components/_flex.scss +70 -0
  1140. data/app/javascript/stylesheets/components/_float_button.scss +306 -0
  1141. data/app/javascript/stylesheets/components/_grid.scss +138 -0
  1142. data/app/javascript/stylesheets/components/_icon.scss +35 -0
  1143. data/app/javascript/stylesheets/components/_image.scss +373 -0
  1144. data/app/javascript/stylesheets/components/_input.scss +407 -0
  1145. data/app/javascript/stylesheets/components/_input_number.scss +266 -0
  1146. data/app/javascript/stylesheets/components/_layout.scss +198 -0
  1147. data/app/javascript/stylesheets/components/_mentions.scss +211 -0
  1148. data/app/javascript/stylesheets/components/_menu.scss +674 -0
  1149. data/app/javascript/stylesheets/components/_message.scss +127 -0
  1150. data/app/javascript/stylesheets/components/_modal.scss +210 -0
  1151. data/app/javascript/stylesheets/components/_notification.scss +245 -0
  1152. data/app/javascript/stylesheets/components/_pagination.scss +402 -0
  1153. data/app/javascript/stylesheets/components/_popconfirm.scss +125 -0
  1154. data/app/javascript/stylesheets/components/_popover.scss +162 -0
  1155. data/app/javascript/stylesheets/components/_progress.scss +197 -0
  1156. data/app/javascript/stylesheets/components/_qr_code.scss +121 -0
  1157. data/app/javascript/stylesheets/components/_radio.scss +316 -0
  1158. data/app/javascript/stylesheets/components/_rate.scss +96 -0
  1159. data/app/javascript/stylesheets/components/_result.scss +90 -0
  1160. data/app/javascript/stylesheets/components/_segmented.scss +163 -0
  1161. data/app/javascript/stylesheets/components/_select.scss +414 -0
  1162. data/app/javascript/stylesheets/components/_skeleton.scss +205 -0
  1163. data/app/javascript/stylesheets/components/_slider.scss +222 -0
  1164. data/app/javascript/stylesheets/components/_space.scss +161 -0
  1165. data/app/javascript/stylesheets/components/_spin.scss +185 -0
  1166. data/app/javascript/stylesheets/components/_splitter.scss +89 -0
  1167. data/app/javascript/stylesheets/components/_statistic.scss +78 -0
  1168. data/app/javascript/stylesheets/components/_steps.scss +1092 -0
  1169. data/app/javascript/stylesheets/components/_switch.scss +232 -0
  1170. data/app/javascript/stylesheets/components/_table.scss +493 -0
  1171. data/app/javascript/stylesheets/components/_tabs.scss +522 -0
  1172. data/app/javascript/stylesheets/components/_tag.scss +315 -0
  1173. data/app/javascript/stylesheets/components/_time_picker.scss +317 -0
  1174. data/app/javascript/stylesheets/components/_timeline.scss +361 -0
  1175. data/app/javascript/stylesheets/components/_tooltip.scss +331 -0
  1176. data/app/javascript/stylesheets/components/_tour.scss +196 -0
  1177. data/app/javascript/stylesheets/components/_transfer.scss +244 -0
  1178. data/app/javascript/stylesheets/components/_tree.scss +341 -0
  1179. data/app/javascript/stylesheets/components/_tree_select.scss +295 -0
  1180. data/app/javascript/stylesheets/components/_typography.scss +155 -0
  1181. data/app/javascript/stylesheets/components/_upload.scss +528 -0
  1182. data/app/services/hakumi/icon/loader.rb +95 -0
  1183. data/app/services/hakumi/illustrations/loader.rb +43 -0
  1184. data/app/services/hakumi_components/component_handler.rb +53 -0
  1185. data/app/views/hakumi/time_picker/_columns.html.erb +73 -0
  1186. data/app/views/hakumi_components/_admin_panel.html.erb +1 -0
  1187. data/app/views/hakumi_components/_affix.html.erb +1 -0
  1188. data/app/views/hakumi_components/_alert.html.erb +1 -0
  1189. data/app/views/hakumi_components/_confirm.html.erb +1 -0
  1190. data/app/views/hakumi_components/_drawer.html.erb +3 -0
  1191. data/app/views/hakumi_components/_message.html.erb +1 -0
  1192. data/app/views/hakumi_components/_modal.html.erb +3 -0
  1193. data/app/views/hakumi_components/_notification.html.erb +1 -0
  1194. data/app/views/hakumi_components/_popconfirm.html.erb +1 -0
  1195. data/app/views/hakumi_components/_popover.html.erb +1 -0
  1196. data/app/views/hakumi_components/_qr_code.html.erb +1 -0
  1197. data/app/views/hakumi_components/_result.html.erb +1 -0
  1198. data/app/views/hakumi_components/_segmented.html.erb +1 -0
  1199. data/app/views/hakumi_components/_skeleton.html.erb +1 -0
  1200. data/app/views/hakumi_components/_spin.html.erb +1 -0
  1201. data/app/views/hakumi_components/_statistic.html.erb +13 -0
  1202. data/app/views/hakumi_components/_table.html.erb +1 -0
  1203. data/app/views/hakumi_components/_tag.html.erb +3 -0
  1204. data/app/views/hakumi_components/_timeline.html.erb +16 -0
  1205. data/app/views/hakumi_components/_tree.html.erb +1 -0
  1206. data/lib/hakumi_components/engine.rb +29 -0
  1207. data/lib/hakumi_components/rails/attribute_introspection.rb +156 -0
  1208. data/lib/hakumi_components/rails/validation_introspection.rb +192 -0
  1209. data/lib/hakumi_components/rails.rb +9 -0
  1210. data/lib/hakumi_components/version.rb +5 -0
  1211. data/lib/hakumi_components.rb +26 -0
  1212. data/sig/action_view/tag_builder.rbs +24 -0
  1213. data/sig/active_support/concern_patch.rbs +7 -0
  1214. data/sig/hakumi/admin_panel/component.rbs +28 -0
  1215. data/sig/hakumi/affix/component.rbs +44 -0
  1216. data/sig/hakumi/alert/component.rbs +64 -0
  1217. data/sig/hakumi/anchor/component.rbs +45 -0
  1218. data/sig/hakumi/anchor/link/component.rbs +31 -0
  1219. data/sig/hakumi/autocomplete/component.rbs +68 -0
  1220. data/sig/hakumi/avatar/component.rbs +44 -0
  1221. data/sig/hakumi/badge/component.rbs +41 -0
  1222. data/sig/hakumi/base_component.rbs +77 -0
  1223. data/sig/hakumi/breadcrumb/component.rbs +21 -0
  1224. data/sig/hakumi/breadcrumb/item/component.rbs +36 -0
  1225. data/sig/hakumi/button/component.rbs +56 -0
  1226. data/sig/hakumi/calendar/component.rbs +41 -0
  1227. data/sig/hakumi/card/component.rbs +50 -0
  1228. data/sig/hakumi/card/grid/component.rbs +21 -0
  1229. data/sig/hakumi/card/meta/component.rbs +25 -0
  1230. data/sig/hakumi/carousel/component.rbs +88 -0
  1231. data/sig/hakumi/cascader/component.rbs +52 -0
  1232. data/sig/hakumi/checkbox/component.rbs +36 -0
  1233. data/sig/hakumi/checkbox/group/component.rbs +34 -0
  1234. data/sig/hakumi/collapse/component.rbs +57 -0
  1235. data/sig/hakumi/collapse/panel/component.rbs +47 -0
  1236. data/sig/hakumi/color_picker/component.rbs +81 -0
  1237. data/sig/hakumi/concerns/form_field.rbs +89 -0
  1238. data/sig/hakumi/container/component.rbs +37 -0
  1239. data/sig/hakumi/date_picker/component.rbs +72 -0
  1240. data/sig/hakumi/date_picker/range_picker.rbs +68 -0
  1241. data/sig/hakumi/date_picker/shared_rendering.rbs +41 -0
  1242. data/sig/hakumi/descriptions/component.rbs +59 -0
  1243. data/sig/hakumi/descriptions/item/component.rbs +31 -0
  1244. data/sig/hakumi/divider/component.rbs +39 -0
  1245. data/sig/hakumi/drawer/component.rbs +66 -0
  1246. data/sig/hakumi/dropdown/component.rbs +45 -0
  1247. data/sig/hakumi/dropdown/divider/component.rbs +11 -0
  1248. data/sig/hakumi/dropdown/item/component.rbs +45 -0
  1249. data/sig/hakumi/empty/component.rbs +40 -0
  1250. data/sig/hakumi/flex/component.rbs +47 -0
  1251. data/sig/hakumi/float_button/back_top/component.rbs +45 -0
  1252. data/sig/hakumi/float_button/component.rbs +80 -0
  1253. data/sig/hakumi/float_button/group/component.rbs +95 -0
  1254. data/sig/hakumi/float_button/group_cluster/component.rbs +60 -0
  1255. data/sig/hakumi/form/item/component.rbs +39 -0
  1256. data/sig/hakumi/grid/col/component.rbs +50 -0
  1257. data/sig/hakumi/grid/row/component.rbs +46 -0
  1258. data/sig/hakumi/icon/component.rbs +56 -0
  1259. data/sig/hakumi/image/component.rbs +56 -0
  1260. data/sig/hakumi/image/preview_group/component.rbs +28 -0
  1261. data/sig/hakumi/input/component.rbs +71 -0
  1262. data/sig/hakumi/input/password/component.rbs +27 -0
  1263. data/sig/hakumi/input/text_area/component.rbs +42 -0
  1264. data/sig/hakumi/input_number/component.rbs +85 -0
  1265. data/sig/hakumi/layout/component.rbs +21 -0
  1266. data/sig/hakumi/layout/content/component.rbs +19 -0
  1267. data/sig/hakumi/layout/footer/component.rbs +19 -0
  1268. data/sig/hakumi/layout/header/component.rbs +19 -0
  1269. data/sig/hakumi/layout/sider/component.rbs +19 -0
  1270. data/sig/hakumi/mentions/component.rbs +75 -0
  1271. data/sig/hakumi/menu/component.rbs +52 -0
  1272. data/sig/hakumi/menu/divider/component.rbs +11 -0
  1273. data/sig/hakumi/menu/group/component.rbs +20 -0
  1274. data/sig/hakumi/menu/item/component.rbs +42 -0
  1275. data/sig/hakumi/menu/sub_menu/component.rbs +37 -0
  1276. data/sig/hakumi/message/component.rbs +50 -0
  1277. data/sig/hakumi/modal/component.rbs +76 -0
  1278. data/sig/hakumi/modal/confirm/component.rbs +32 -0
  1279. data/sig/hakumi/modal/error/component.rbs +27 -0
  1280. data/sig/hakumi/modal/info/component.rbs +27 -0
  1281. data/sig/hakumi/modal/success/component.rbs +27 -0
  1282. data/sig/hakumi/modal/warning/component.rbs +27 -0
  1283. data/sig/hakumi/notification/component.rbs +64 -0
  1284. data/sig/hakumi/pagination/component.rbs +113 -0
  1285. data/sig/hakumi/popconfirm/component.rbs +52 -0
  1286. data/sig/hakumi/popover/component.rbs +66 -0
  1287. data/sig/hakumi/progress/component.rbs +201 -0
  1288. data/sig/hakumi/qr_code/component.rbs +111 -0
  1289. data/sig/hakumi/radio/component.rbs +55 -0
  1290. data/sig/hakumi/radio/group/component.rbs +71 -0
  1291. data/sig/hakumi/rate/component.rbs +56 -0
  1292. data/sig/hakumi/result/component.rbs +65 -0
  1293. data/sig/hakumi/segmented/component.rbs +73 -0
  1294. data/sig/hakumi/select/component.rbs +73 -0
  1295. data/sig/hakumi/skeleton/avatar/component.rbs +23 -0
  1296. data/sig/hakumi/skeleton/button/component.rbs +24 -0
  1297. data/sig/hakumi/skeleton/component.rbs +76 -0
  1298. data/sig/hakumi/skeleton/image/component.rbs +22 -0
  1299. data/sig/hakumi/skeleton/input/component.rbs +23 -0
  1300. data/sig/hakumi/skeleton/node/component.rbs +21 -0
  1301. data/sig/hakumi/slider/component.rbs +86 -0
  1302. data/sig/hakumi/space/compact/component.rbs +21 -0
  1303. data/sig/hakumi/space/component.rbs +47 -0
  1304. data/sig/hakumi/spin/component.rbs +77 -0
  1305. data/sig/hakumi/splitter/component.rbs +27 -0
  1306. data/sig/hakumi/splitter/panel/component.rbs +36 -0
  1307. data/sig/hakumi/statistic/component.rbs +99 -0
  1308. data/sig/hakumi/steps/component.rbs +82 -0
  1309. data/sig/hakumi/steps/item/component.rbs +29 -0
  1310. data/sig/hakumi/switch/component.rbs +52 -0
  1311. data/sig/hakumi/table/column/component.rbs +57 -0
  1312. data/sig/hakumi/table/column_group/component.rbs +20 -0
  1313. data/sig/hakumi/table/component.rbs +280 -0
  1314. data/sig/hakumi/table/concerns/columns.rbs +94 -0
  1315. data/sig/hakumi/tabs/component.rbs +66 -0
  1316. data/sig/hakumi/tabs/item/component.rbs +29 -0
  1317. data/sig/hakumi/tag/component.rbs +86 -0
  1318. data/sig/hakumi/tag/group/component.rbs +24 -0
  1319. data/sig/hakumi/time_picker/component.rbs +72 -0
  1320. data/sig/hakumi/timeline/component.rbs +61 -0
  1321. data/sig/hakumi/timeline/item/component.rbs +70 -0
  1322. data/sig/hakumi/tooltip/component.rbs +73 -0
  1323. data/sig/hakumi/tour/component.rbs +84 -0
  1324. data/sig/hakumi/transfer/component.rbs +76 -0
  1325. data/sig/hakumi/tree/component.rbs +126 -0
  1326. data/sig/hakumi/tree_select/component.rbs +122 -0
  1327. data/sig/hakumi/typography/base_component.rbs +57 -0
  1328. data/sig/hakumi/typography/link/component.rbs +28 -0
  1329. data/sig/hakumi/typography/paragraph/component.rbs +13 -0
  1330. data/sig/hakumi/typography/text/component.rbs +10 -0
  1331. data/sig/hakumi/typography/title/component.rbs +28 -0
  1332. data/sig/hakumi/upload/component.rbs +78 -0
  1333. data/sig/hakumi_components/rails/attribute_introspection.rbs +16 -0
  1334. data/sig/hakumi_components/rails/validation_introspection.rbs +18 -0
  1335. data/sig/hakumi_components/rails.rbs +6 -0
  1336. data/sig/hakumi_components.rbs +79 -0
  1337. data/sig/rails.rbs +18 -0
  1338. data/sig/view_component/base.rbs +28 -0
  1339. metadata +1439 -0
@@ -0,0 +1,280 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Hakumi
4
+ module Table
5
+ class Component < Hakumi::BaseComponent
6
+ include Concerns::Columns
7
+
8
+ # Type aliases for Table component
9
+ type table_size = :default | :middle | :small
10
+ type row_selection_type = :checkbox | :radio
11
+ type sort_direction = :ascend | :descend
12
+ type fixed_side = :left | :right
13
+ type responsive_breakpoint = :xs | :sm | :md | :lg | :xl | :xxl
14
+ type editable_mode = :cell | :row
15
+ type editable_trigger = :click | :dblclick
16
+ type editable_input_type = :text | :number | :textarea | :select
17
+ type row_button_action = :edit | :save | :cancel
18
+
19
+ # Hash types for complex options
20
+ type row_selection_options = {
21
+ type: row_selection_type,
22
+ selected_row_keys: Array[String | Integer],
23
+ selectedRowKeys: Array[String | Integer],
24
+ preserve_selected_row_keys: bool,
25
+ preserveSelectedRowKeys: bool,
26
+ selections: untyped
27
+ }
28
+
29
+ type expandable_options = {
30
+ expanded_row_keys: Array[String | Integer],
31
+ expandedRowKeys: Array[String | Integer],
32
+ default_expanded_row_keys: Array[String | Integer],
33
+ defaultExpandedRowKeys: Array[String | Integer],
34
+ expanded_row_render: untyped, # Proc type
35
+ show_expand_column: bool
36
+ }
37
+
38
+ type scroll_options = {
39
+ x: (String | Integer | nil),
40
+ y: (String | Integer | nil)
41
+ }
42
+
43
+ type editable_options = {
44
+ mode: editable_mode,
45
+ trigger: editable_trigger
46
+ }
47
+
48
+ type row_drag_options = {
49
+ enabled: bool,
50
+ handle: bool
51
+ }
52
+
53
+ # Column hash type - complex structure, using untyped for Proc fields
54
+ type column_hash = {
55
+ title: String,
56
+ data_index: (String | Symbol)?,
57
+ key: (String | Symbol)?,
58
+ align: (:left | :center | :right)?,
59
+ width: (String | Integer)?,
60
+ ellipsis: (bool | Hash[Symbol, untyped])?,
61
+ sorter: untyped, # Proc or bool
62
+ sort_directions: Array[sort_direction]?,
63
+ sort_order: sort_direction?,
64
+ default_sort_order: sort_direction?,
65
+ filters: Array[Hash[Symbol, untyped]]?,
66
+ filter_multiple: bool?,
67
+ filtered_value: Array[untyped]?,
68
+ default_filtered_value: Array[untyped]?,
69
+ filter_mode: Symbol?,
70
+ filter_search: bool?,
71
+ hidden: bool?,
72
+ on_cell: untyped, # Proc returning Hash
73
+ class_name: String?,
74
+ render: untyped, # Proc for custom rendering
75
+ children: Array[column_hash]?,
76
+ fixed: fixed_side?,
77
+ responsive: Array[responsive_breakpoint]?,
78
+ editable: (bool | Hash[Symbol, untyped])?,
79
+ should_cell_update: (String | Symbol)?,
80
+ selection: bool?,
81
+ expand: bool?,
82
+ drag_handle: bool?,
83
+ sort_value: untyped # Proc or Symbol
84
+ }
85
+
86
+ type pagination_options = {
87
+ total: Integer,
88
+ current: Integer,
89
+ page_size: Integer,
90
+ pageSize: Integer,
91
+ page: Integer,
92
+ href: String?,
93
+ turbo_frame: String?,
94
+ turbo_action: Symbol?,
95
+ sort_field_param: String?,
96
+ sort_order_param: String?,
97
+ server_side: bool?,
98
+ page_param: String?,
99
+ per_page_param: String?,
100
+ preserve_params: bool?,
101
+ size: hakumi_size_standard?,
102
+ align: (:left | :center | :right)?,
103
+ simple: bool?,
104
+ show_size_changer: bool?,
105
+ show_quick_jumper: bool?,
106
+ page_size_options: Array[Integer]?,
107
+ show_total: (bool | untyped)?, # bool or Proc
108
+ hide_on_single_page: bool?,
109
+ prev_text: String?,
110
+ next_text: String?
111
+ }
112
+
113
+ SIZES: Array[table_size]
114
+ ROW_SELECTION_TYPES: Array[row_selection_type]
115
+ SORT_DIRECTIONS: Array[sort_direction]
116
+ FIXED_SIDES: Array[fixed_side]
117
+ RESPONSIVE_BREAKPOINTS: Array[responsive_breakpoint]
118
+ EDITABLE_MODES: Array[editable_mode]
119
+ EDITABLE_TRIGGERS: Array[editable_trigger]
120
+ EDITABLE_INPUT_TYPES: Array[editable_input_type]
121
+ ROW_BUTTON_ACTIONS: Array[row_button_action]
122
+
123
+ SELECTION_COLUMN: Symbol
124
+ EXPAND_COLUMN: Symbol
125
+
126
+ @columns_data: (Array[column_hash] | nil)
127
+ @data_source: Array[untyped]
128
+ @row_key: (Symbol | String | untyped) # Can be Proc
129
+ @size: table_size
130
+ @bordered: bool
131
+ @title: (String | untyped)? # String or ViewComponent
132
+ @footer: (String | untyped)? # String or ViewComponent
133
+ @row_selection: (row_selection_options | Hash[Symbol, untyped])?
134
+ @expandable: (expandable_options | Hash[Symbol, untyped])?
135
+ @pagination: (pagination_options | Hash[Symbol, untyped] | untyped)? # Can be ViewComponent
136
+ @summary: untyped # Proc or String
137
+ @empty_text: (String | untyped)? # String, ViewComponent, or Proc
138
+ @sort_directions: Array[sort_direction]
139
+ @filter_on_close: bool
140
+ @filter_mode: Symbol
141
+ @filter_search: bool
142
+ @children_column_name: Symbol
143
+ @indent_size: Integer
144
+ @scroll: (scroll_options | Hash[Symbol, untyped])?
145
+ @scroll_x: (String | nil)
146
+ @scroll_y: (String | nil)
147
+ @sticky: bool
148
+ @row_class_name: (String | untyped)? # String or Proc
149
+ @editable: (editable_options | Hash[Symbol, untyped])?
150
+ @row_drag: (row_drag_options | Hash[Symbol, untyped])?
151
+ @column_drag: bool
152
+ @data_url: String?
153
+ @html_options: hakumi_html_options
154
+ @selected_row_keys: Array[String]
155
+ @row_selection_type: (row_selection_type | nil)
156
+ @row_selection_preserve: bool
157
+ @row_selection_selections: untyped
158
+ @expanded_row_keys: Array[String]
159
+ @header_rows: untyped
160
+ @display_rows: Array[Hash[Symbol, untyped]]
161
+ @leaf_columns: Array[column_hash]
162
+ @normalized_columns: Array[column_hash]
163
+ @first_data_column: (column_hash | nil)
164
+ @fixed_offsets: Hash[Symbol, Hash[Symbol, untyped]]
165
+
166
+ # Class methods
167
+ def self.extract_controller_locals: (Hash[Symbol, untyped] params) -> Hash[Symbol, untyped]
168
+ def self.parse_json_param: (untyped value) -> untyped
169
+
170
+ def initialize: (
171
+ ?columns: (Array[column_hash] | nil),
172
+ ?data_source: Array[untyped],
173
+ ?row_key: (Symbol | String | untyped),
174
+ ?size: table_size,
175
+ ?bordered: bool,
176
+ ?title: (String | untyped)?,
177
+ ?footer: (String | untyped)?,
178
+ ?row_selection: (row_selection_options | Hash[Symbol, untyped])?,
179
+ ?expandable: (expandable_options | Hash[Symbol, untyped])?,
180
+ ?pagination: (pagination_options | Hash[Symbol, untyped] | untyped)?,
181
+ ?summary: untyped,
182
+ ?empty_text: (String | untyped)?,
183
+ ?sort_directions: (Array[sort_direction] | sort_direction),
184
+ ?filter_on_close: bool,
185
+ ?filter_mode: Symbol,
186
+ ?filter_search: bool,
187
+ ?children_column_name: Symbol,
188
+ ?indent_size: Integer,
189
+ ?scroll: (scroll_options | Hash[Symbol, untyped])?,
190
+ ?sticky: bool,
191
+ ?row_class_name: (String | untyped)?,
192
+ ?editable: (editable_options | Hash[Symbol, untyped])?,
193
+ ?row_drag: (row_drag_options | Hash[Symbol, untyped])?,
194
+ ?column_drag: bool,
195
+ ?data_url: String?,
196
+ **hakumi_html_options html_options
197
+ ) -> void
198
+
199
+ attr_reader row_selection: (row_selection_options | Hash[Symbol, untyped])?
200
+ attr_reader expandable: (expandable_options | Hash[Symbol, untyped])?
201
+ attr_reader pagination: (pagination_options | Hash[Symbol, untyped] | untyped)?
202
+ attr_reader summary: untyped
203
+
204
+ def table_classes: () -> String
205
+ def table_container_attributes: () -> hakumi_html_options
206
+ def table_attributes: () -> hakumi_html_options
207
+ def container_classes: () -> String
208
+ def wrapper_attributes: () -> hakumi_html_options
209
+ def header_rows: () -> Array[Array[Hash[Symbol, untyped]]]
210
+ def display_rows: () -> Array[Hash[Symbol, untyped]]
211
+ def row_key_for: (untyped row, Integer index) -> (String | Integer | untyped)
212
+ def row_selected?: (String row_key) -> bool
213
+ def row_classes: (untyped row, Integer row_index, String row_key) -> String
214
+ def cell_attributes: (column_hash column, untyped row, Integer row_index, Integer depth, ?String? row_key, ?untyped raw_value) -> hakumi_html_options
215
+ def header_cell_attributes: (column_hash column, col_span: Integer, row_span: Integer) -> hakumi_html_options
216
+ def cell_content: (column_hash column, untyped row, Integer row_index, ?untyped raw_value) -> untyped
217
+ def render_cell_display: (column_hash column, untyped content, untyped raw_value, untyped row, Integer row_index) -> String
218
+ def empty_state: () -> String
219
+ def pagination_component: () -> untyped
220
+ def ajax_pagination_component: () -> untyped
221
+ def summary_content: () -> untyped
222
+ def scroll_styles: () -> String
223
+ def table_style: () -> String?
224
+ def selection_column?: () -> bool
225
+ def selection_actions?: () -> bool
226
+ def selection_all_enabled?: () -> bool
227
+ def expanded_row?: (String row_key) -> bool
228
+ def expanded_row_content: (untyped row, Integer row_index) -> untyped
229
+ def header_filter_options: (column_hash column) -> Array[untyped]
230
+ def column_sortable?: (column_hash column) -> bool
231
+ def column_filterable?: (column_hash column) -> bool
232
+ def column_filter_multiple?: (column_hash column) -> bool
233
+ def default_filtered_values: (column_hash column) -> Array[untyped]
234
+ def default_sort_order: (column_hash column) -> (sort_direction | nil)
235
+ def current_sort_state: () -> (Hash[Symbol, untyped] | nil)
236
+ def header_cell_classes: (column_hash column) -> String
237
+ def cell_classes: (column_hash column) -> String
238
+ def selection_header_state: () -> Hash[Symbol, bool]
239
+ def fixed_columns?: () -> bool
240
+
241
+ private
242
+
243
+ def normalize_row_selection!: () -> void
244
+ def normalize_expandable!: () -> void
245
+ def validate_props!: () -> void
246
+ def normalize_scroll: (untyped value) -> (Hash[Symbol, String?] | nil)
247
+ def cast_boolean: (untyped value) -> bool
248
+ def fixed_offsets: () -> Hash[Symbol, Hash[Symbol, untyped]]
249
+ def apply_fixed_column_attributes!: (Hash[Symbol, untyped] attrs, column_hash column, header: bool) -> void
250
+ def apply_editable_attributes!: (Hash[Symbol, untyped] attrs, column_hash column) -> void
251
+ def compute_fixed_offsets: (Array[column_hash] leaf_columns) -> void
252
+ def fixed_column_width!: (column_hash column) -> Float
253
+ def numeric_width: (untyped value) -> (Float | nil)
254
+ def ellipsis_config: (column_hash column) -> (bool | Hash[Symbol, untyped] | nil)
255
+ def normalize_ellipsis_option: (untyped option) -> (Hash[Symbol, untyped] | nil)
256
+ def normalize_ellipsis_tooltip_option: (untyped option) -> (Hash[Symbol, untyped] | nil)
257
+ def ellipsis_title: (untyped config, untyped raw_value, untyped content_fragment) -> (String | nil)
258
+ def ellipsis_tooltip_component: (untyped config, untyped raw_value, untyped row, Integer row_index) -> untyped
259
+ def responsive_classes: (column_hash column) -> Array[String]
260
+ def extract_sort_value: (column_hash column, untyped row, untyped raw_value) -> untyped
261
+ def normalize_responsive_breakpoints: (untyped value) -> (Array[responsive_breakpoint] | nil)
262
+ def normalize_pagination_options: (Hash[Symbol, untyped] options) -> Hash[Symbol, untyped]
263
+ def columns_data: () -> Array[column_hash]
264
+ def build_display_rows: () -> Array[Hash[Symbol, untyped]]
265
+ def flatten_tree: (Array[untyped] rows, ?Integer depth) -> Array[Hash[Symbol, untyped]]
266
+ def apply_pagination: (Array[Hash[Symbol, untyped]] rows) -> Array[Hash[Symbol, untyped]]
267
+ def value_from_row: (untyped row, (Symbol | String)? data_index) -> untyped
268
+ def selection_cell: (untyped row, Integer row_index) -> Hash[Symbol, untyped]
269
+ def expand_cell: (untyped row, Integer row_index) -> Hash[Symbol, untyped]
270
+ def normalize_editable: (untyped value) -> (Hash[Symbol, untyped] | nil)
271
+ def normalize_row_drag: (untyped value) -> (Hash[Symbol, untyped] | nil)
272
+ def normalize_column_editable: (untyped value) -> (Hash[Symbol, untyped] | nil)
273
+ def normalize_should_cell_update: (untyped value) -> (String | nil)
274
+ def editable_config_json: () -> (String | nil)
275
+ def columns_config_json: () -> String
276
+ def cell_editable_payload: (column_hash column) -> (Hash[Symbol, untyped] | nil)
277
+ def apply_should_cell_update_attributes!: (Hash[Symbol, untyped] attrs, column_hash column) -> void
278
+ end
279
+ end
280
+ end
@@ -0,0 +1,94 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Hakumi
4
+ module Table
5
+ module Concerns
6
+ # Column normalization and management for Table component
7
+ module Columns
8
+ # Column can be a hash config or a Symbol constant (SELECTION_COLUMN, EXPAND_COLUMN)
9
+ type column_like = Hash[Symbol, untyped] | Symbol
10
+ # Normalized column is a hash with specific keys (title, key, width, etc.) and dynamic values
11
+ type column_hash = Hash[Symbol, untyped]
12
+
13
+ # Get all leaf columns (columns without children)
14
+ def leaf_columns: () -> Array[column_hash]
15
+
16
+ # Count of leaf columns (minimum 1)
17
+ def leaf_column_count: () -> Integer
18
+
19
+ # Check if table has selection column
20
+ def selection_column?: () -> bool
21
+
22
+ # Check if table has expandable rows
23
+ def expandable?: () -> bool
24
+
25
+ # Check if table has expand column
26
+ def expand_column?: () -> bool
27
+
28
+ # Get normalized columns with special columns inserted
29
+ def normalized_columns: () -> Array[column_hash]
30
+
31
+ private
32
+
33
+ # Normalize an array of column definitions
34
+ def normalize_columns: (Array[column_like] columns) -> Array[column_hash]
35
+
36
+ # Normalize a single column definition
37
+ def normalize_column: (column_hash column) -> (column_hash | nil)
38
+
39
+ # Insert drag handle column if needed
40
+ def insert_drag_handle_column: (Array[column_hash] columns) -> Array[column_hash]
41
+
42
+ # Insert selection column if needed
43
+ def insert_selection_column: (Array[column_hash] columns) -> Array[column_hash]
44
+
45
+ # Insert expand column if needed
46
+ def insert_expand_column: (Array[column_hash] columns) -> Array[column_hash]
47
+
48
+ # Definition for selection column
49
+ def selection_column_definition: () -> column_hash
50
+
51
+ # Definition for expand column
52
+ def expand_column_definition: () -> column_hash
53
+
54
+ # Check if drag handle column should be added
55
+ def drag_handle_column?: () -> bool
56
+
57
+ # Definition for drag handle column
58
+ def drag_handle_column_definition: () -> column_hash
59
+
60
+ # Get first data column (non-special column)
61
+ def first_data_column: () -> (column_hash | nil)
62
+
63
+ # Recursively flatten all leaf columns
64
+ def flatten_leaf_columns: (Array[column_hash] columns) -> Array[column_hash]
65
+
66
+ # Count leaf columns recursively
67
+ def leaf_count: (Array[column_hash] columns) -> Integer
68
+
69
+ # Calculate maximum depth of column hierarchy
70
+ def max_depth: (Array[column_hash] columns, ?Integer depth) -> Integer
71
+
72
+ # Build header rows for rendering
73
+ def build_header_rows: (Array[column_hash] columns) -> Array[Array[column_hash]]
74
+
75
+ # Recursively build header rows
76
+ def build_rows_recursive: (Array[column_hash] columns, Integer level, Array[Array[column_hash]] rows, Integer max_depth) -> void
77
+
78
+ # Methods expected from Table::Component
79
+ def columns_data: () -> Array[column_like]
80
+ def compute_fixed_offsets: (Array[column_hash] columns) -> void
81
+ # normalize_ellipsis_option: can be bool, hash, or string
82
+ def normalize_ellipsis_option: ((bool | Hash[Symbol, untyped] | String)? option) -> (Hash[Symbol, untyped] | nil)
83
+ # normalize_responsive_breakpoints: can be array or single value
84
+ def normalize_responsive_breakpoints: (untyped option) -> (Array[Symbol] | nil)
85
+ # dimension_to_css: accepts Numeric, String, or nil (from BaseComponent)
86
+ def dimension_to_css: ((Numeric | String)? value) -> String?
87
+ # normalize_column_editable: can be bool or hash with editable config
88
+ def normalize_column_editable: ((bool | Hash[Symbol, untyped])? value) -> (Hash[Symbol, untyped] | nil)
89
+ # normalize_should_cell_update: Symbol or String method name, returns String or nil
90
+ def normalize_should_cell_update: ((Symbol | String)? value) -> String?
91
+ end
92
+ end
93
+ end
94
+ end
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Hakumi
4
+ module Tabs
5
+ class Component < Hakumi::BaseComponent
6
+ type tab_type = :line | :card | :editable_card
7
+ type tab_size = :large | :middle | :small
8
+ type tab_position = :top | :bottom | :left | :right
9
+ type indicator_align = :start | :center | :end
10
+
11
+ TYPES: Array[tab_type]
12
+ SIZES: Array[tab_size]
13
+ TAB_POSITIONS: Array[tab_position]
14
+ INDICATOR_ALIGNS: Array[indicator_align]
15
+
16
+ @active_key: String?
17
+ @default_active_key: String?
18
+ @type: tab_type
19
+ @size: tab_size
20
+ @tab_position: tab_position
21
+ @centered: bool
22
+ @animated: bool
23
+ @indicator: hakumi_html_options?
24
+ @tab_bar_gutter: Integer?
25
+ @tab_bar_extra_content_left: String?
26
+ @tab_bar_extra_content_right: String?
27
+ @add_icon: String?
28
+ @hide_add: bool
29
+ @more_icon: String?
30
+ @html_options: hakumi_html_options
31
+
32
+ def initialize: (
33
+ ?active_key: String?,
34
+ ?default_active_key: String?,
35
+ ?type: tab_type,
36
+ ?size: tab_size,
37
+ ?tab_position: tab_position,
38
+ ?centered: bool,
39
+ ?animated: bool,
40
+ ?indicator: hakumi_html_options?,
41
+ ?tab_bar_gutter: Integer?,
42
+ ?tab_bar_extra_content_left: String?,
43
+ ?tab_bar_extra_content_right: String?,
44
+ ?add_icon: String?,
45
+ ?hide_add: bool,
46
+ ?more_icon: String?,
47
+ **hakumi_html_options html_options
48
+ ) -> void
49
+
50
+ def call: () -> String
51
+
52
+ def before_render: () -> void
53
+
54
+ private
55
+
56
+ def validate_props!: () -> void
57
+ def wrapper_classes: () -> String
58
+ def wrapper_attributes: () -> hakumi_html_options
59
+ def render_tab_bar: () -> String
60
+ def render_content: () -> String
61
+ def tab_bar_classes: () -> String
62
+ def tabs_nav_classes: () -> String
63
+ def indicator_style: () -> String
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Hakumi
4
+ module Tabs
5
+ module Item
6
+ class Component < Hakumi::BaseComponent
7
+ @key: (String | Symbol)
8
+ @label: String?
9
+ @disabled: bool
10
+ @closable: bool
11
+ @icon: hakumi_icon?
12
+ @html_options: hakumi_html_options
13
+
14
+ def initialize: (
15
+ key: (String | Symbol),
16
+ ?label: String?,
17
+ ?disabled: bool,
18
+ ?closable: bool,
19
+ ?icon: hakumi_icon?,
20
+ **hakumi_html_options html_options
21
+ ) -> void
22
+
23
+ attr_reader key: (String | Symbol)
24
+
25
+ def call: () -> String
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,86 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Hakumi
4
+ module Tag
5
+ class Component < Hakumi::BaseComponent
6
+ type tag_color_preset = :magenta | :red | :volcano | :orange | :gold | :lime | :green | :cyan | :blue | :geekblue | :purple
7
+ type tag_status = :success | :processing | :error | :default | :warning
8
+ type tag_variant = :filled | :outlined | :borderless
9
+ type tag_color = tag_color_preset | tag_status | String
10
+
11
+ COLORS: Array[tag_color_preset]
12
+ STATUSES: Array[tag_status]
13
+ VARIANTS: Array[tag_variant]
14
+
15
+ # Extracts locals from controller params for dynamic rendering
16
+ def self.extract_controller_locals: (untyped params) -> Hash[Symbol, untyped]
17
+
18
+ @color: tag_color?
19
+ @closable: bool
20
+ @close_icon: hakumi_icon?
21
+ @bordered: bool
22
+ @variant: tag_variant
23
+ @href: String?
24
+ @checkable: bool
25
+ @checked: bool
26
+ @draggable: bool
27
+ @html_options: hakumi_html_options
28
+
29
+ def initialize: (
30
+ ?color: tag_color?,
31
+ ?closable: bool?,
32
+ ?close_icon: hakumi_icon?,
33
+ ?bordered: bool?,
34
+ ?variant: tag_variant?,
35
+ ?href: String?,
36
+ ?checkable: bool?,
37
+ ?checked: bool?,
38
+ ?draggable: bool?,
39
+ **hakumi_html_options html_options
40
+ ) -> void
41
+
42
+ def call: () -> String
43
+
44
+ # Slot for icon content
45
+ def icon: () -> String?
46
+ def icon?: () -> bool
47
+ def icon=: (String) -> void
48
+
49
+ private
50
+
51
+ def validate_props!: () -> void
52
+
53
+ def render_link_tag: () -> String
54
+
55
+ def render_span_tag: () -> String
56
+
57
+ def tag_content: () -> String
58
+
59
+ def icon_element: () -> String?
60
+
61
+ def content_wrapper: () -> String?
62
+
63
+ def close_button: () -> String?
64
+
65
+ def tag_attributes: () -> hakumi_html_options
66
+
67
+ def tag_classes: () -> String
68
+
69
+ def tag_data_attributes: () -> hakumi_html_options
70
+
71
+ def preset_color?: () -> bool
72
+
73
+ def preset_color: () -> Symbol?
74
+
75
+ def status_color?: () -> bool
76
+
77
+ def status_color: () -> Symbol?
78
+
79
+ def custom_color?: () -> bool
80
+
81
+ def custom_color_styles: () -> String?
82
+
83
+ def contrast_color: (String hex_color) -> String
84
+ end
85
+ end
86
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Hakumi
4
+ module Tag
5
+ module Group
6
+ class Component < Hakumi::BaseComponent
7
+ @sortable: bool
8
+ @animation: Integer
9
+ @html_options: hakumi_html_options
10
+
11
+ def initialize: (?sortable: bool, ?animation: Integer, **hakumi_html_options html_options) -> void
12
+
13
+ def call: () -> String
14
+
15
+ private
16
+
17
+ def tag_group_attributes: () -> hakumi_html_options
18
+ def tag_group_classes: () -> String
19
+ # Returns data attributes hash with controller, sortable_value, animation_value
20
+ def tag_group_data: () -> Hash[Symbol, (String | bool | Integer)]
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,72 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Hakumi
4
+ module TimePicker
5
+ class Component < Hakumi::BaseComponent
6
+ include Hakumi::Concerns::FormField
7
+
8
+ type time_variant = :default | :borderless | :filled
9
+ type time_value = String | Time | DateTime | nil
10
+
11
+ SIZES: Array[hakumi_size_standard]
12
+ VARIANTS: Array[time_variant]
13
+
14
+ @name: String
15
+ @label: String?
16
+ @caption: String?
17
+ @value: time_value
18
+ @default_value: time_value
19
+ @format: String
20
+ @hour_step: Integer
21
+ @minute_step: Integer
22
+ @second_step: Integer
23
+ @use_12_hours: bool
24
+ @show_now: bool
25
+ @disabled: bool
26
+ @allow_clear: bool
27
+ @placeholder: String?
28
+ @size: hakumi_size_standard
29
+ @variant: time_variant
30
+ @errors: Array[String]
31
+ @standalone: bool
32
+ @required: bool
33
+ @html_options: hakumi_html_options
34
+
35
+ def initialize: (
36
+ ?name: String?,
37
+ ?label: String?,
38
+ ?caption: String?,
39
+ ?value: time_value,
40
+ ?default_value: time_value,
41
+ ?format: String,
42
+ ?hour_step: Integer,
43
+ ?minute_step: Integer,
44
+ ?second_step: Integer,
45
+ ?use_12_hours: bool,
46
+ ?show_now: bool,
47
+ ?disabled: bool,
48
+ ?allow_clear: bool,
49
+ ?placeholder: String?,
50
+ ?size: hakumi_size_standard,
51
+ ?variant: time_variant,
52
+ ?errors: (Array[String] | String),
53
+ ?standalone: bool,
54
+ **hakumi_html_options html_options
55
+ ) -> void
56
+
57
+ private
58
+
59
+ def validate_props!: () -> void
60
+ def current_value: () -> time_value
61
+ def show_seconds?: () -> bool
62
+ def wrapper_classes: () -> String
63
+ def wrapper_attributes: () -> hakumi_html_options
64
+ def input_attributes: () -> hakumi_html_options
65
+ def step_value: (untyped value) -> Integer
66
+ def formatted_hours: () -> Array[String]
67
+ def formatted_minutes: () -> Array[String]
68
+ def formatted_seconds: () -> Array[String]
69
+ def period_options: () -> Array[String]
70
+ end
71
+ end
72
+ end