@health-samurai/react-components 0.0.0-alpha.2 → 0.0.0-alpha.21

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 (571) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +102 -1
  3. package/dist/bundle.css +2349 -754
  4. package/dist/src/components/button-dropdown.d.ts +10 -0
  5. package/dist/src/components/button-dropdown.d.ts.map +1 -0
  6. package/dist/src/components/button-dropdown.js +70 -0
  7. package/dist/src/components/button-dropdown.js.map +1 -0
  8. package/dist/src/components/button-dropdown.stories.js +48 -0
  9. package/dist/src/components/button-dropdown.stories.js.map +1 -0
  10. package/dist/src/components/code-editor/fhir-autocomplete.d.ts +70 -0
  11. package/dist/src/components/code-editor/fhir-autocomplete.d.ts.map +1 -0
  12. package/dist/src/components/code-editor/fhir-autocomplete.js +1850 -0
  13. package/dist/src/components/code-editor/fhir-autocomplete.js.map +1 -0
  14. package/dist/src/components/code-editor/fhir-autocomplete.test.js +1099 -0
  15. package/dist/src/components/code-editor/fhir-autocomplete.test.js.map +1 -0
  16. package/dist/src/components/code-editor/http/grammar/http.d.ts +3 -0
  17. package/dist/src/components/code-editor/http/grammar/http.d.ts.map +1 -0
  18. package/dist/src/components/code-editor/http/grammar/http.grammar +74 -0
  19. package/dist/src/components/code-editor/http/grammar/http.js +38 -0
  20. package/dist/src/components/code-editor/http/grammar/http.js.map +1 -0
  21. package/dist/src/components/code-editor/http/grammar/http.terms.d.ts +2 -0
  22. package/dist/src/components/code-editor/http/grammar/http.terms.d.ts.map +1 -0
  23. package/dist/src/components/code-editor/http/grammar/http.terms.js +4 -0
  24. package/dist/src/components/code-editor/http/grammar/http.terms.js.map +1 -0
  25. package/dist/src/components/code-editor/http/grammar/http.test.js +80 -0
  26. package/dist/src/components/code-editor/http/grammar/http.test.js.map +1 -0
  27. package/dist/src/components/code-editor/http/index.d.ts +12 -0
  28. package/dist/src/components/code-editor/http/index.d.ts.map +1 -0
  29. package/dist/src/components/code-editor/http/index.js +486 -0
  30. package/dist/src/components/code-editor/http/index.js.map +1 -0
  31. package/dist/src/components/code-editor/index.d.ts +39 -1
  32. package/dist/src/components/code-editor/index.d.ts.map +1 -1
  33. package/dist/src/components/code-editor/index.js +1792 -45
  34. package/dist/src/components/code-editor/index.js.map +1 -1
  35. package/dist/src/components/code-editor/json-ast.d.ts +46 -0
  36. package/dist/src/components/code-editor/json-ast.d.ts.map +1 -0
  37. package/dist/src/components/code-editor/json-ast.js +465 -0
  38. package/dist/src/components/code-editor/json-ast.js.map +1 -0
  39. package/dist/src/components/code-editor/json-ast.test.js +206 -0
  40. package/dist/src/components/code-editor/json-ast.test.js.map +1 -0
  41. package/dist/src/components/code-editor/sql-completion.d.ts +22 -0
  42. package/dist/src/components/code-editor/sql-completion.d.ts.map +1 -0
  43. package/dist/src/components/code-editor/sql-completion.js +897 -0
  44. package/dist/src/components/code-editor/sql-completion.js.map +1 -0
  45. package/dist/src/components/code-editor.stories.js +280 -3
  46. package/dist/src/components/code-editor.stories.js.map +1 -1
  47. package/dist/src/components/copy-icon.d.ts +5 -1
  48. package/dist/src/components/copy-icon.d.ts.map +1 -1
  49. package/dist/src/components/copy-icon.js +41 -3
  50. package/dist/src/components/copy-icon.js.map +1 -1
  51. package/dist/src/components/data-table.d.ts +9 -0
  52. package/dist/src/components/data-table.d.ts.map +1 -0
  53. package/dist/src/components/data-table.js +66 -0
  54. package/dist/src/components/data-table.js.map +1 -0
  55. package/dist/src/components/data-table.stories.js +240 -0
  56. package/dist/src/components/data-table.stories.js.map +1 -0
  57. package/dist/src/components/date-picker-input.d.ts +10 -0
  58. package/dist/src/components/date-picker-input.d.ts.map +1 -0
  59. package/dist/src/components/date-picker-input.js +90 -0
  60. package/dist/src/components/date-picker-input.js.map +1 -0
  61. package/dist/src/components/date-picker-input.stories.js +76 -0
  62. package/dist/src/components/date-picker-input.stories.js.map +1 -0
  63. package/dist/src/components/fhir-structure-view.d.ts +34 -0
  64. package/dist/src/components/fhir-structure-view.d.ts.map +1 -0
  65. package/dist/src/components/fhir-structure-view.js +230 -0
  66. package/dist/src/components/fhir-structure-view.js.map +1 -0
  67. package/dist/src/components/fhir-structure-view.stories.js +447 -0
  68. package/dist/src/components/fhir-structure-view.stories.js.map +1 -0
  69. package/dist/src/components/icon-button.d.ts +12 -0
  70. package/dist/src/components/icon-button.d.ts.map +1 -0
  71. package/dist/src/components/icon-button.js +41 -0
  72. package/dist/src/components/icon-button.js.map +1 -0
  73. package/dist/src/components/icon-button.stories.js +157 -0
  74. package/dist/src/components/icon-button.stories.js.map +1 -0
  75. package/dist/src/components/operation-outcome-view.d.ts +27 -0
  76. package/dist/src/components/operation-outcome-view.d.ts.map +1 -0
  77. package/dist/src/components/operation-outcome-view.js +198 -0
  78. package/dist/src/components/operation-outcome-view.js.map +1 -0
  79. package/dist/src/components/operation-outcome-view.stories.js +207 -0
  80. package/dist/src/components/operation-outcome-view.stories.js.map +1 -0
  81. package/dist/src/components/request-line-editor.d.ts +13 -35
  82. package/dist/src/components/request-line-editor.d.ts.map +1 -1
  83. package/dist/src/components/request-line-editor.js +73 -49
  84. package/dist/src/components/request-line-editor.js.map +1 -1
  85. package/dist/src/components/request-line-editor.stories.js +17 -53
  86. package/dist/src/components/request-line-editor.stories.js.map +1 -1
  87. package/dist/src/components/sandbox.d.ts +13 -0
  88. package/dist/src/components/sandbox.d.ts.map +1 -0
  89. package/dist/src/components/sandbox.js +107 -0
  90. package/dist/src/components/sandbox.js.map +1 -0
  91. package/dist/src/components/sandbox.stories.js +126 -0
  92. package/dist/src/components/sandbox.stories.js.map +1 -0
  93. package/dist/src/components/segment-control.d.ts +13 -0
  94. package/dist/src/components/segment-control.d.ts.map +1 -0
  95. package/dist/src/components/segment-control.js +33 -0
  96. package/dist/src/components/segment-control.js.map +1 -0
  97. package/dist/src/components/segment-control.stories.js +68 -0
  98. package/dist/src/components/segment-control.stories.js.map +1 -0
  99. package/dist/src/components/split-button.d.ts +12 -0
  100. package/dist/src/components/split-button.d.ts.map +1 -0
  101. package/dist/src/components/split-button.js +33 -0
  102. package/dist/src/components/split-button.js.map +1 -0
  103. package/dist/src/components/split-button.stories.js +84 -0
  104. package/dist/src/components/split-button.stories.js.map +1 -0
  105. package/dist/src/components/tag.d.ts +16 -0
  106. package/dist/src/components/tag.d.ts.map +1 -0
  107. package/dist/src/components/tag.js +198 -0
  108. package/dist/src/components/tag.js.map +1 -0
  109. package/dist/src/components/tag.stories.js +459 -0
  110. package/dist/src/components/tag.stories.js.map +1 -0
  111. package/dist/src/components/tile.d.ts +15 -0
  112. package/dist/src/components/tile.d.ts.map +1 -0
  113. package/dist/src/components/tile.js +76 -0
  114. package/dist/src/components/tile.js.map +1 -0
  115. package/dist/src/components/tile.stories.js +167 -0
  116. package/dist/src/components/tile.stories.js.map +1 -0
  117. package/dist/src/components/toolbar.d.ts +18 -0
  118. package/dist/src/components/toolbar.d.ts.map +1 -0
  119. package/dist/src/components/toolbar.js +61 -0
  120. package/dist/src/components/toolbar.js.map +1 -0
  121. package/dist/src/components/toolbar.stories.js +69 -0
  122. package/dist/src/components/toolbar.stories.js.map +1 -0
  123. package/dist/src/components/tree-view.d.ts +47 -0
  124. package/dist/src/components/tree-view.d.ts.map +1 -0
  125. package/dist/src/components/tree-view.js +122 -0
  126. package/dist/src/components/tree-view.js.map +1 -0
  127. package/dist/src/components/tree-view.stories.js +283 -0
  128. package/dist/src/components/tree-view.stories.js.map +1 -0
  129. package/dist/src/icons.d.ts +11 -0
  130. package/dist/src/icons.d.ts.map +1 -0
  131. package/dist/src/icons.js +328 -0
  132. package/dist/src/icons.js.map +1 -0
  133. package/dist/src/index.css +358 -74
  134. package/dist/src/index.d.ts +17 -1
  135. package/dist/src/index.d.ts.map +1 -1
  136. package/dist/src/index.js +17 -1
  137. package/dist/src/index.js.map +1 -1
  138. package/dist/src/shadcn/components/ui/accordion.d.ts +2 -2
  139. package/dist/src/shadcn/components/ui/accordion.d.ts.map +1 -1
  140. package/dist/src/shadcn/components/ui/accordion.js +35 -9
  141. package/dist/src/shadcn/components/ui/accordion.js.map +1 -1
  142. package/dist/src/shadcn/components/ui/alert-dialog.d.ts +12 -4
  143. package/dist/src/shadcn/components/ui/alert-dialog.d.ts.map +1 -1
  144. package/dist/src/shadcn/components/ui/alert-dialog.js +128 -18
  145. package/dist/src/shadcn/components/ui/alert-dialog.js.map +1 -1
  146. package/dist/src/shadcn/components/ui/alert-dialog.stories.js +269 -19
  147. package/dist/src/shadcn/components/ui/alert-dialog.stories.js.map +1 -1
  148. package/dist/src/shadcn/components/ui/alert.d.ts +29 -6
  149. package/dist/src/shadcn/components/ui/alert.d.ts.map +1 -1
  150. package/dist/src/shadcn/components/ui/alert.js +50 -19
  151. package/dist/src/shadcn/components/ui/alert.js.map +1 -1
  152. package/dist/src/shadcn/components/ui/alert.stories.js +140 -36
  153. package/dist/src/shadcn/components/ui/alert.stories.js.map +1 -1
  154. package/dist/src/shadcn/components/ui/aspect-ratio.d.ts.map +1 -1
  155. package/dist/src/shadcn/components/ui/aspect-ratio.js +1 -0
  156. package/dist/src/shadcn/components/ui/aspect-ratio.js.map +1 -1
  157. package/dist/src/shadcn/components/ui/avatar.d.ts.map +1 -1
  158. package/dist/src/shadcn/components/ui/avatar.js +4 -3
  159. package/dist/src/shadcn/components/ui/avatar.js.map +1 -1
  160. package/dist/src/shadcn/components/ui/avatar.stories.js +68 -2
  161. package/dist/src/shadcn/components/ui/avatar.stories.js.map +1 -1
  162. package/dist/src/shadcn/components/ui/badge.d.ts +1 -1
  163. package/dist/src/shadcn/components/ui/badge.d.ts.map +1 -1
  164. package/dist/src/shadcn/components/ui/badge.js +16 -5
  165. package/dist/src/shadcn/components/ui/badge.js.map +1 -1
  166. package/dist/src/shadcn/components/ui/breadcrumb.d.ts +5 -2
  167. package/dist/src/shadcn/components/ui/breadcrumb.d.ts.map +1 -1
  168. package/dist/src/shadcn/components/ui/breadcrumb.js +98 -13
  169. package/dist/src/shadcn/components/ui/breadcrumb.js.map +1 -1
  170. package/dist/src/shadcn/components/ui/breadcrumb.stories.js +205 -45
  171. package/dist/src/shadcn/components/ui/breadcrumb.stories.js.map +1 -1
  172. package/dist/src/shadcn/components/ui/button.d.ts.map +1 -1
  173. package/dist/src/shadcn/components/ui/button.js +65 -11
  174. package/dist/src/shadcn/components/ui/button.js.map +1 -1
  175. package/dist/src/shadcn/components/ui/button.stories.js +99 -17
  176. package/dist/src/shadcn/components/ui/button.stories.js.map +1 -1
  177. package/dist/src/shadcn/components/ui/calendar.d.ts +1 -1
  178. package/dist/src/shadcn/components/ui/calendar.d.ts.map +1 -1
  179. package/dist/src/shadcn/components/ui/calendar.js +1 -0
  180. package/dist/src/shadcn/components/ui/calendar.js.map +1 -1
  181. package/dist/src/shadcn/components/ui/card.d.ts +5 -1
  182. package/dist/src/shadcn/components/ui/card.d.ts.map +1 -1
  183. package/dist/src/shadcn/components/ui/card.js +28 -7
  184. package/dist/src/shadcn/components/ui/card.js.map +1 -1
  185. package/dist/src/shadcn/components/ui/card.stories.js +23 -2
  186. package/dist/src/shadcn/components/ui/card.stories.js.map +1 -1
  187. package/dist/src/shadcn/components/ui/carousel.d.ts +1 -1
  188. package/dist/src/shadcn/components/ui/carousel.d.ts.map +1 -1
  189. package/dist/src/shadcn/components/ui/carousel.js +1 -0
  190. package/dist/src/shadcn/components/ui/carousel.js.map +1 -1
  191. package/dist/src/shadcn/components/ui/chart.d.ts +5 -5
  192. package/dist/src/shadcn/components/ui/chart.d.ts.map +1 -1
  193. package/dist/src/shadcn/components/ui/chart.js +4 -3
  194. package/dist/src/shadcn/components/ui/chart.js.map +1 -1
  195. package/dist/src/shadcn/components/ui/checkbox.d.ts +5 -1
  196. package/dist/src/shadcn/components/ui/checkbox.d.ts.map +1 -1
  197. package/dist/src/shadcn/components/ui/checkbox.js +46 -6
  198. package/dist/src/shadcn/components/ui/checkbox.js.map +1 -1
  199. package/dist/src/shadcn/components/ui/checkbox.stories.js +156 -46
  200. package/dist/src/shadcn/components/ui/checkbox.stories.js.map +1 -1
  201. package/dist/src/shadcn/components/ui/combobox.d.ts +29 -0
  202. package/dist/src/shadcn/components/ui/combobox.d.ts.map +1 -0
  203. package/dist/src/shadcn/components/ui/combobox.js +226 -0
  204. package/dist/src/shadcn/components/ui/combobox.js.map +1 -0
  205. package/dist/src/shadcn/components/ui/combobox.stories.js +167 -0
  206. package/dist/src/shadcn/components/ui/combobox.stories.js.map +1 -0
  207. package/dist/src/shadcn/components/ui/command.d.ts +4 -2
  208. package/dist/src/shadcn/components/ui/command.d.ts.map +1 -1
  209. package/dist/src/shadcn/components/ui/command.js +75 -13
  210. package/dist/src/shadcn/components/ui/command.js.map +1 -1
  211. package/dist/src/shadcn/components/ui/command.stories.js +277 -57
  212. package/dist/src/shadcn/components/ui/command.stories.js.map +1 -1
  213. package/dist/src/shadcn/components/ui/context-menu.d.ts +7 -3
  214. package/dist/src/shadcn/components/ui/context-menu.d.ts.map +1 -1
  215. package/dist/src/shadcn/components/ui/context-menu.js +120 -13
  216. package/dist/src/shadcn/components/ui/context-menu.js.map +1 -1
  217. package/dist/src/shadcn/components/ui/dialog.d.ts.map +1 -1
  218. package/dist/src/shadcn/components/ui/dialog.js +35 -7
  219. package/dist/src/shadcn/components/ui/dialog.js.map +1 -1
  220. package/dist/src/shadcn/components/ui/drawer.d.ts.map +1 -1
  221. package/dist/src/shadcn/components/ui/drawer.js +27 -5
  222. package/dist/src/shadcn/components/ui/drawer.js.map +1 -1
  223. package/dist/src/shadcn/components/ui/dropdown-menu.d.ts +7 -3
  224. package/dist/src/shadcn/components/ui/dropdown-menu.d.ts.map +1 -1
  225. package/dist/src/shadcn/components/ui/dropdown-menu.js +122 -14
  226. package/dist/src/shadcn/components/ui/dropdown-menu.js.map +1 -1
  227. package/dist/src/shadcn/components/ui/dropdown-menu.stories.js +22 -5
  228. package/dist/src/shadcn/components/ui/dropdown-menu.stories.js.map +1 -1
  229. package/dist/src/shadcn/components/ui/form.d.ts +2 -2
  230. package/dist/src/shadcn/components/ui/form.d.ts.map +1 -1
  231. package/dist/src/shadcn/components/ui/form.js +17 -8
  232. package/dist/src/shadcn/components/ui/form.js.map +1 -1
  233. package/dist/src/shadcn/components/ui/hover-card.d.ts.map +1 -1
  234. package/dist/src/shadcn/components/ui/hover-card.js +2 -1
  235. package/dist/src/shadcn/components/ui/hover-card.js.map +1 -1
  236. package/dist/src/shadcn/components/ui/input-otp.d.ts.map +1 -1
  237. package/dist/src/shadcn/components/ui/input-otp.js +1 -0
  238. package/dist/src/shadcn/components/ui/input-otp.js.map +1 -1
  239. package/dist/src/shadcn/components/ui/input.d.ts +3 -1
  240. package/dist/src/shadcn/components/ui/input.d.ts.map +1 -1
  241. package/dist/src/shadcn/components/ui/input.js +126 -17
  242. package/dist/src/shadcn/components/ui/input.js.map +1 -1
  243. package/dist/src/shadcn/components/ui/input.stories.js +218 -29
  244. package/dist/src/shadcn/components/ui/input.stories.js.map +1 -1
  245. package/dist/src/shadcn/components/ui/label.d.ts.map +1 -1
  246. package/dist/src/shadcn/components/ui/label.js +9 -1
  247. package/dist/src/shadcn/components/ui/label.js.map +1 -1
  248. package/dist/src/shadcn/components/ui/menubar.d.ts.map +1 -1
  249. package/dist/src/shadcn/components/ui/menubar.js +35 -13
  250. package/dist/src/shadcn/components/ui/menubar.js.map +1 -1
  251. package/dist/src/shadcn/components/ui/pagination.d.ts +9 -2
  252. package/dist/src/shadcn/components/ui/pagination.d.ts.map +1 -1
  253. package/dist/src/shadcn/components/ui/pagination.js +41 -24
  254. package/dist/src/shadcn/components/ui/pagination.js.map +1 -1
  255. package/dist/src/shadcn/components/ui/pagination.stories.js +44 -37
  256. package/dist/src/shadcn/components/ui/pagination.stories.js.map +1 -1
  257. package/dist/src/shadcn/components/ui/popover.d.ts.map +1 -1
  258. package/dist/src/shadcn/components/ui/popover.js +13 -1
  259. package/dist/src/shadcn/components/ui/popover.js.map +1 -1
  260. package/dist/src/shadcn/components/ui/progress.d.ts.map +1 -1
  261. package/dist/src/shadcn/components/ui/progress.js +6 -2
  262. package/dist/src/shadcn/components/ui/progress.js.map +1 -1
  263. package/dist/src/shadcn/components/ui/radio-button-group.d.ts +21 -0
  264. package/dist/src/shadcn/components/ui/radio-button-group.d.ts.map +1 -0
  265. package/dist/src/shadcn/components/ui/radio-button-group.js +148 -0
  266. package/dist/src/shadcn/components/ui/radio-button-group.js.map +1 -0
  267. package/dist/src/shadcn/components/ui/radio-button-group.stories.js +283 -0
  268. package/dist/src/shadcn/components/ui/radio-button-group.stories.js.map +1 -0
  269. package/dist/src/shadcn/components/ui/radio-group.d.ts +5 -1
  270. package/dist/src/shadcn/components/ui/radio-group.d.ts.map +1 -1
  271. package/dist/src/shadcn/components/ui/radio-group.js +40 -7
  272. package/dist/src/shadcn/components/ui/radio-group.js.map +1 -1
  273. package/dist/src/shadcn/components/ui/radio-group.stories.js +107 -32
  274. package/dist/src/shadcn/components/ui/radio-group.stories.js.map +1 -1
  275. package/dist/src/shadcn/components/ui/resizable.d.ts.map +1 -1
  276. package/dist/src/shadcn/components/ui/resizable.js +2 -1
  277. package/dist/src/shadcn/components/ui/resizable.js.map +1 -1
  278. package/dist/src/shadcn/components/ui/resizable.stories.js +2 -2
  279. package/dist/src/shadcn/components/ui/resizable.stories.js.map +1 -1
  280. package/dist/src/shadcn/components/ui/scroll-area.d.ts.map +1 -1
  281. package/dist/src/shadcn/components/ui/scroll-area.js +10 -3
  282. package/dist/src/shadcn/components/ui/scroll-area.js.map +1 -1
  283. package/dist/src/shadcn/components/ui/select.d.ts +1 -2
  284. package/dist/src/shadcn/components/ui/select.d.ts.map +1 -1
  285. package/dist/src/shadcn/components/ui/select.js +49 -19
  286. package/dist/src/shadcn/components/ui/select.js.map +1 -1
  287. package/dist/src/shadcn/components/ui/select.stories.js +193 -70
  288. package/dist/src/shadcn/components/ui/select.stories.js.map +1 -1
  289. package/dist/src/shadcn/components/ui/separator.d.ts.map +1 -1
  290. package/dist/src/shadcn/components/ui/separator.js +8 -1
  291. package/dist/src/shadcn/components/ui/separator.js.map +1 -1
  292. package/dist/src/shadcn/components/ui/sheet.js +1 -1
  293. package/dist/src/shadcn/components/ui/sheet.js.map +1 -1
  294. package/dist/src/shadcn/components/ui/sidebar.d.ts +4 -4
  295. package/dist/src/shadcn/components/ui/sidebar.d.ts.map +1 -1
  296. package/dist/src/shadcn/components/ui/sidebar.js +21 -6
  297. package/dist/src/shadcn/components/ui/sidebar.js.map +1 -1
  298. package/dist/src/shadcn/components/ui/skeleton.d.ts.map +1 -1
  299. package/dist/src/shadcn/components/ui/skeleton.js +3 -1
  300. package/dist/src/shadcn/components/ui/skeleton.js.map +1 -1
  301. package/dist/src/shadcn/components/ui/slider.d.ts.map +1 -1
  302. package/dist/src/shadcn/components/ui/slider.js +35 -4
  303. package/dist/src/shadcn/components/ui/slider.js.map +1 -1
  304. package/dist/src/shadcn/components/ui/sonner.d.ts +24 -2
  305. package/dist/src/shadcn/components/ui/sonner.d.ts.map +1 -1
  306. package/dist/src/shadcn/components/ui/sonner.js +127 -9
  307. package/dist/src/shadcn/components/ui/sonner.js.map +1 -1
  308. package/dist/src/shadcn/components/ui/sonner.stories.js +251 -12
  309. package/dist/src/shadcn/components/ui/sonner.stories.js.map +1 -1
  310. package/dist/src/shadcn/components/ui/switch.d.ts +7 -1
  311. package/dist/src/shadcn/components/ui/switch.d.ts.map +1 -1
  312. package/dist/src/shadcn/components/ui/switch.js +55 -3
  313. package/dist/src/shadcn/components/ui/switch.js.map +1 -1
  314. package/dist/src/shadcn/components/ui/switch.stories.js +84 -9
  315. package/dist/src/shadcn/components/ui/switch.stories.js.map +1 -1
  316. package/dist/src/shadcn/components/ui/table.d.ts +23 -6
  317. package/dist/src/shadcn/components/ui/table.d.ts.map +1 -1
  318. package/dist/src/shadcn/components/ui/table.js +65 -20
  319. package/dist/src/shadcn/components/ui/table.js.map +1 -1
  320. package/dist/src/shadcn/components/ui/table.stories.js +217 -97
  321. package/dist/src/shadcn/components/ui/table.stories.js.map +1 -1
  322. package/dist/src/shadcn/components/ui/tabs.d.ts +30 -5
  323. package/dist/src/shadcn/components/ui/tabs.d.ts.map +1 -1
  324. package/dist/src/shadcn/components/ui/tabs.js +470 -23
  325. package/dist/src/shadcn/components/ui/tabs.js.map +1 -1
  326. package/dist/src/shadcn/components/ui/tabs.stories.js +405 -181
  327. package/dist/src/shadcn/components/ui/tabs.stories.js.map +1 -1
  328. package/dist/src/shadcn/components/ui/textarea.d.ts +8 -1
  329. package/dist/src/shadcn/components/ui/textarea.d.ts.map +1 -1
  330. package/dist/src/shadcn/components/ui/textarea.js +30 -2
  331. package/dist/src/shadcn/components/ui/textarea.js.map +1 -1
  332. package/dist/src/shadcn/components/ui/textarea.stories.js +85 -4
  333. package/dist/src/shadcn/components/ui/textarea.stories.js.map +1 -1
  334. package/dist/src/shadcn/components/ui/toggle-group.d.ts +3 -3
  335. package/dist/src/shadcn/components/ui/toggle-group.d.ts.map +1 -1
  336. package/dist/src/shadcn/components/ui/toggle-group.js +14 -12
  337. package/dist/src/shadcn/components/ui/toggle-group.js.map +1 -1
  338. package/dist/src/shadcn/components/ui/toggle.d.ts +3 -4
  339. package/dist/src/shadcn/components/ui/toggle.d.ts.map +1 -1
  340. package/dist/src/shadcn/components/ui/toggle.js +44 -16
  341. package/dist/src/shadcn/components/ui/toggle.js.map +1 -1
  342. package/dist/src/shadcn/components/ui/toggle.stories.js +130 -7
  343. package/dist/src/shadcn/components/ui/toggle.stories.js.map +1 -1
  344. package/dist/src/shadcn/components/ui/tooltip.d.ts.map +1 -1
  345. package/dist/src/shadcn/components/ui/tooltip.js +12 -1
  346. package/dist/src/shadcn/components/ui/tooltip.js.map +1 -1
  347. package/dist/src/shadcn/components/ui/tree.d.ts +29 -0
  348. package/dist/src/shadcn/components/ui/tree.d.ts.map +1 -0
  349. package/dist/src/shadcn/components/ui/tree.js +135 -0
  350. package/dist/src/shadcn/components/ui/tree.js.map +1 -0
  351. package/dist/src/shadcn/shadcn.css +4 -4
  352. package/dist/src/tokens.css +50 -20
  353. package/dist/src/typography.css +78 -15
  354. package/package.json +84 -64
  355. package/src/components/button-dropdown.stories.tsx +41 -0
  356. package/src/components/button-dropdown.tsx +97 -0
  357. package/src/components/code-editor/fhir-autocomplete.test.ts +993 -0
  358. package/src/components/code-editor/fhir-autocomplete.ts +2322 -0
  359. package/src/components/code-editor/http/grammar/http.grammar +74 -0
  360. package/src/components/code-editor/http/grammar/http.terms.ts +9 -0
  361. package/src/components/code-editor/http/grammar/http.test.ts +110 -0
  362. package/src/components/code-editor/http/grammar/http.ts +21 -0
  363. package/src/components/code-editor/http/index.ts +424 -0
  364. package/src/components/code-editor/index.tsx +1944 -42
  365. package/src/components/code-editor/json-ast.test.ts +230 -0
  366. package/src/components/code-editor/json-ast.ts +590 -0
  367. package/src/components/code-editor/sql-completion.ts +1112 -0
  368. package/src/components/code-editor.stories.tsx +325 -2
  369. package/src/components/copy-icon.tsx +57 -3
  370. package/src/components/data-table.stories.tsx +91 -0
  371. package/src/components/data-table.tsx +126 -0
  372. package/src/components/date-picker-input.stories.tsx +79 -0
  373. package/src/components/date-picker-input.tsx +104 -0
  374. package/src/components/fhir-structure-view.stories.tsx +439 -0
  375. package/src/components/fhir-structure-view.tsx +233 -0
  376. package/src/components/icon-button.stories.tsx +86 -0
  377. package/src/components/icon-button.tsx +57 -0
  378. package/src/components/operation-outcome-view.stories.tsx +163 -0
  379. package/src/components/operation-outcome-view.tsx +254 -0
  380. package/src/components/request-line-editor.stories.tsx +17 -27
  381. package/src/components/request-line-editor.tsx +103 -61
  382. package/src/components/sandbox.stories.tsx +131 -0
  383. package/src/components/sandbox.tsx +191 -0
  384. package/src/components/segment-control.stories.tsx +61 -0
  385. package/src/components/segment-control.tsx +83 -0
  386. package/src/components/split-button.stories.tsx +68 -0
  387. package/src/components/split-button.tsx +74 -0
  388. package/src/components/tag.stories.tsx +371 -0
  389. package/src/components/tag.tsx +236 -0
  390. package/src/components/tile.stories.tsx +149 -0
  391. package/src/components/tile.tsx +105 -0
  392. package/src/components/toolbar.stories.tsx +64 -0
  393. package/src/components/toolbar.tsx +98 -0
  394. package/src/components/tree-view.stories.tsx +265 -0
  395. package/src/components/tree-view.tsx +246 -0
  396. package/src/icons.tsx +331 -0
  397. package/src/index.css +358 -74
  398. package/src/index.tsx +17 -3
  399. package/src/shadcn/components/ui/accordion.tsx +91 -10
  400. package/src/shadcn/components/ui/alert-dialog.stories.tsx +209 -15
  401. package/src/shadcn/components/ui/alert-dialog.tsx +236 -26
  402. package/src/shadcn/components/ui/alert.stories.tsx +120 -21
  403. package/src/shadcn/components/ui/alert.tsx +125 -28
  404. package/src/shadcn/components/ui/aspect-ratio.tsx +1 -0
  405. package/src/shadcn/components/ui/avatar.stories.tsx +74 -1
  406. package/src/shadcn/components/ui/avatar.tsx +22 -6
  407. package/src/shadcn/components/ui/badge.tsx +67 -18
  408. package/src/shadcn/components/ui/breadcrumb.stories.tsx +161 -41
  409. package/src/shadcn/components/ui/breadcrumb.tsx +172 -23
  410. package/src/shadcn/components/ui/button.stories.tsx +106 -18
  411. package/src/shadcn/components/ui/button.tsx +151 -55
  412. package/src/shadcn/components/ui/calendar.tsx +1 -0
  413. package/src/shadcn/components/ui/card.stories.tsx +17 -3
  414. package/src/shadcn/components/ui/card.tsx +89 -14
  415. package/src/shadcn/components/ui/carousel.tsx +1 -0
  416. package/src/shadcn/components/ui/chart.tsx +9 -5
  417. package/src/shadcn/components/ui/checkbox.stories.tsx +78 -30
  418. package/src/shadcn/components/ui/checkbox.tsx +91 -8
  419. package/src/shadcn/components/ui/combobox.stories.tsx +148 -0
  420. package/src/shadcn/components/ui/combobox.tsx +324 -0
  421. package/src/shadcn/components/ui/command.stories.tsx +184 -39
  422. package/src/shadcn/components/ui/command.tsx +218 -37
  423. package/src/shadcn/components/ui/context-menu.tsx +333 -40
  424. package/src/shadcn/components/ui/dialog.tsx +101 -13
  425. package/src/shadcn/components/ui/drawer.tsx +94 -18
  426. package/src/shadcn/components/ui/dropdown-menu.stories.tsx +18 -2
  427. package/src/shadcn/components/ui/dropdown-menu.tsx +334 -68
  428. package/src/shadcn/components/ui/form.tsx +22 -11
  429. package/src/shadcn/components/ui/hover-card.tsx +2 -1
  430. package/src/shadcn/components/ui/input-otp.tsx +1 -0
  431. package/src/shadcn/components/ui/input.stories.tsx +235 -27
  432. package/src/shadcn/components/ui/input.tsx +400 -29
  433. package/src/shadcn/components/ui/label.tsx +22 -4
  434. package/src/shadcn/components/ui/menubar.tsx +188 -43
  435. package/src/shadcn/components/ui/pagination.stories.tsx +8 -2
  436. package/src/shadcn/components/ui/pagination.tsx +65 -8
  437. package/src/shadcn/components/ui/popover.tsx +36 -4
  438. package/src/shadcn/components/ui/progress.tsx +21 -5
  439. package/src/shadcn/components/ui/radio-button-group.stories.tsx +247 -0
  440. package/src/shadcn/components/ui/radio-button-group.tsx +188 -0
  441. package/src/shadcn/components/ui/radio-group.stories.tsx +70 -14
  442. package/src/shadcn/components/ui/radio-group.tsx +85 -9
  443. package/src/shadcn/components/ui/resizable.stories.tsx +2 -2
  444. package/src/shadcn/components/ui/resizable.tsx +2 -1
  445. package/src/shadcn/components/ui/scroll-area.tsx +34 -5
  446. package/src/shadcn/components/ui/select.stories.tsx +108 -32
  447. package/src/shadcn/components/ui/select.tsx +182 -36
  448. package/src/shadcn/components/ui/separator.tsx +16 -5
  449. package/src/shadcn/components/ui/sheet.tsx +1 -1
  450. package/src/shadcn/components/ui/sidebar.tsx +69 -26
  451. package/src/shadcn/components/ui/skeleton.tsx +4 -1
  452. package/src/shadcn/components/ui/slider.tsx +83 -11
  453. package/src/shadcn/components/ui/sonner.stories.tsx +238 -17
  454. package/src/shadcn/components/ui/sonner.tsx +254 -11
  455. package/src/shadcn/components/ui/switch.stories.tsx +52 -5
  456. package/src/shadcn/components/ui/switch.tsx +92 -7
  457. package/src/shadcn/components/ui/table.stories.tsx +252 -72
  458. package/src/shadcn/components/ui/table.tsx +204 -26
  459. package/src/shadcn/components/ui/tabs.stories.tsx +235 -123
  460. package/src/shadcn/components/ui/tabs.tsx +694 -36
  461. package/src/shadcn/components/ui/textarea.stories.tsx +94 -2
  462. package/src/shadcn/components/ui/textarea.tsx +70 -5
  463. package/src/shadcn/components/ui/toggle-group.tsx +35 -13
  464. package/src/shadcn/components/ui/toggle.stories.tsx +92 -5
  465. package/src/shadcn/components/ui/toggle.tsx +96 -23
  466. package/src/shadcn/components/ui/tooltip.tsx +34 -8
  467. package/src/shadcn/components/ui/tree.tsx +257 -0
  468. package/src/shadcn/shadcn.css +4 -4
  469. package/src/tokens.css +50 -20
  470. package/src/typography.css +78 -15
  471. package/dist/src/components/code-editor.stories.d.ts +0 -7
  472. package/dist/src/components/code-editor.stories.d.ts.map +0 -1
  473. package/dist/src/components/request-line-editor.stories.d.ts +0 -11
  474. package/dist/src/components/request-line-editor.stories.d.ts.map +0 -1
  475. package/dist/src/index.stories.d.ts +0 -14
  476. package/dist/src/index.stories.d.ts.map +0 -1
  477. package/dist/src/index.stories.js +0 -19
  478. package/dist/src/index.stories.js.map +0 -1
  479. package/dist/src/shadcn/components/ui/accordion.stories.d.ts +0 -8
  480. package/dist/src/shadcn/components/ui/accordion.stories.d.ts.map +0 -1
  481. package/dist/src/shadcn/components/ui/alert-dialog.stories.d.ts +0 -8
  482. package/dist/src/shadcn/components/ui/alert-dialog.stories.d.ts.map +0 -1
  483. package/dist/src/shadcn/components/ui/alert.stories.d.ts +0 -8
  484. package/dist/src/shadcn/components/ui/alert.stories.d.ts.map +0 -1
  485. package/dist/src/shadcn/components/ui/aspect-ratio.stories.d.ts +0 -8
  486. package/dist/src/shadcn/components/ui/aspect-ratio.stories.d.ts.map +0 -1
  487. package/dist/src/shadcn/components/ui/avatar.stories.d.ts +0 -8
  488. package/dist/src/shadcn/components/ui/avatar.stories.d.ts.map +0 -1
  489. package/dist/src/shadcn/components/ui/badge.stories.d.ts +0 -8
  490. package/dist/src/shadcn/components/ui/badge.stories.d.ts.map +0 -1
  491. package/dist/src/shadcn/components/ui/breadcrumb.stories.d.ts +0 -8
  492. package/dist/src/shadcn/components/ui/breadcrumb.stories.d.ts.map +0 -1
  493. package/dist/src/shadcn/components/ui/button.stories.d.ts +0 -23
  494. package/dist/src/shadcn/components/ui/button.stories.d.ts.map +0 -1
  495. package/dist/src/shadcn/components/ui/calendar.stories.d.ts +0 -8
  496. package/dist/src/shadcn/components/ui/calendar.stories.d.ts.map +0 -1
  497. package/dist/src/shadcn/components/ui/card.stories.d.ts +0 -8
  498. package/dist/src/shadcn/components/ui/card.stories.d.ts.map +0 -1
  499. package/dist/src/shadcn/components/ui/carousel.stories.d.ts +0 -8
  500. package/dist/src/shadcn/components/ui/carousel.stories.d.ts.map +0 -1
  501. package/dist/src/shadcn/components/ui/chart.stories.d.ts +0 -8
  502. package/dist/src/shadcn/components/ui/chart.stories.d.ts.map +0 -1
  503. package/dist/src/shadcn/components/ui/checkbox.stories.d.ts +0 -8
  504. package/dist/src/shadcn/components/ui/checkbox.stories.d.ts.map +0 -1
  505. package/dist/src/shadcn/components/ui/collapsible.stories.d.ts +0 -8
  506. package/dist/src/shadcn/components/ui/collapsible.stories.d.ts.map +0 -1
  507. package/dist/src/shadcn/components/ui/command.stories.d.ts +0 -8
  508. package/dist/src/shadcn/components/ui/command.stories.d.ts.map +0 -1
  509. package/dist/src/shadcn/components/ui/context-menu.stories.d.ts +0 -8
  510. package/dist/src/shadcn/components/ui/context-menu.stories.d.ts.map +0 -1
  511. package/dist/src/shadcn/components/ui/dialog.stories.d.ts +0 -8
  512. package/dist/src/shadcn/components/ui/dialog.stories.d.ts.map +0 -1
  513. package/dist/src/shadcn/components/ui/drawer.stories.d.ts +0 -8
  514. package/dist/src/shadcn/components/ui/drawer.stories.d.ts.map +0 -1
  515. package/dist/src/shadcn/components/ui/dropdown-menu.stories.d.ts +0 -8
  516. package/dist/src/shadcn/components/ui/dropdown-menu.stories.d.ts.map +0 -1
  517. package/dist/src/shadcn/components/ui/form.stories.d.ts +0 -8
  518. package/dist/src/shadcn/components/ui/form.stories.d.ts.map +0 -1
  519. package/dist/src/shadcn/components/ui/hover-card.stories.d.ts +0 -8
  520. package/dist/src/shadcn/components/ui/hover-card.stories.d.ts.map +0 -1
  521. package/dist/src/shadcn/components/ui/input-otp.stories.d.ts +0 -8
  522. package/dist/src/shadcn/components/ui/input-otp.stories.d.ts.map +0 -1
  523. package/dist/src/shadcn/components/ui/input.stories.d.ts +0 -18
  524. package/dist/src/shadcn/components/ui/input.stories.d.ts.map +0 -1
  525. package/dist/src/shadcn/components/ui/label.stories.d.ts +0 -8
  526. package/dist/src/shadcn/components/ui/label.stories.d.ts.map +0 -1
  527. package/dist/src/shadcn/components/ui/menubar.stories.d.ts +0 -8
  528. package/dist/src/shadcn/components/ui/menubar.stories.d.ts.map +0 -1
  529. package/dist/src/shadcn/components/ui/navigation-menu.stories.d.ts +0 -8
  530. package/dist/src/shadcn/components/ui/navigation-menu.stories.d.ts.map +0 -1
  531. package/dist/src/shadcn/components/ui/pagination.stories.d.ts +0 -8
  532. package/dist/src/shadcn/components/ui/pagination.stories.d.ts.map +0 -1
  533. package/dist/src/shadcn/components/ui/popover.stories.d.ts +0 -8
  534. package/dist/src/shadcn/components/ui/popover.stories.d.ts.map +0 -1
  535. package/dist/src/shadcn/components/ui/progress.stories.d.ts +0 -8
  536. package/dist/src/shadcn/components/ui/progress.stories.d.ts.map +0 -1
  537. package/dist/src/shadcn/components/ui/radio-group.stories.d.ts +0 -8
  538. package/dist/src/shadcn/components/ui/radio-group.stories.d.ts.map +0 -1
  539. package/dist/src/shadcn/components/ui/resizable.stories.d.ts +0 -8
  540. package/dist/src/shadcn/components/ui/resizable.stories.d.ts.map +0 -1
  541. package/dist/src/shadcn/components/ui/scroll-area.stories.d.ts +0 -8
  542. package/dist/src/shadcn/components/ui/scroll-area.stories.d.ts.map +0 -1
  543. package/dist/src/shadcn/components/ui/select.stories.d.ts +0 -11
  544. package/dist/src/shadcn/components/ui/select.stories.d.ts.map +0 -1
  545. package/dist/src/shadcn/components/ui/separator.stories.d.ts +0 -8
  546. package/dist/src/shadcn/components/ui/separator.stories.d.ts.map +0 -1
  547. package/dist/src/shadcn/components/ui/sheet.stories.d.ts +0 -8
  548. package/dist/src/shadcn/components/ui/sheet.stories.d.ts.map +0 -1
  549. package/dist/src/shadcn/components/ui/sidebar.stories.d.ts +0 -11
  550. package/dist/src/shadcn/components/ui/sidebar.stories.d.ts.map +0 -1
  551. package/dist/src/shadcn/components/ui/skeleton.stories.d.ts +0 -8
  552. package/dist/src/shadcn/components/ui/skeleton.stories.d.ts.map +0 -1
  553. package/dist/src/shadcn/components/ui/slider.stories.d.ts +0 -8
  554. package/dist/src/shadcn/components/ui/slider.stories.d.ts.map +0 -1
  555. package/dist/src/shadcn/components/ui/sonner.stories.d.ts +0 -8
  556. package/dist/src/shadcn/components/ui/sonner.stories.d.ts.map +0 -1
  557. package/dist/src/shadcn/components/ui/switch.stories.d.ts +0 -8
  558. package/dist/src/shadcn/components/ui/switch.stories.d.ts.map +0 -1
  559. package/dist/src/shadcn/components/ui/table.stories.d.ts +0 -8
  560. package/dist/src/shadcn/components/ui/table.stories.d.ts.map +0 -1
  561. package/dist/src/shadcn/components/ui/tabs.stories.d.ts +0 -32
  562. package/dist/src/shadcn/components/ui/tabs.stories.d.ts.map +0 -1
  563. package/dist/src/shadcn/components/ui/textarea.stories.d.ts +0 -8
  564. package/dist/src/shadcn/components/ui/textarea.stories.d.ts.map +0 -1
  565. package/dist/src/shadcn/components/ui/toggle-group.stories.d.ts +0 -8
  566. package/dist/src/shadcn/components/ui/toggle-group.stories.d.ts.map +0 -1
  567. package/dist/src/shadcn/components/ui/toggle.stories.d.ts +0 -8
  568. package/dist/src/shadcn/components/ui/toggle.stories.d.ts.map +0 -1
  569. package/dist/src/shadcn/components/ui/tooltip.stories.d.ts +0 -8
  570. package/dist/src/shadcn/components/ui/tooltip.stories.d.ts.map +0 -1
  571. package/src/index.stories.tsx +0 -21
@@ -0,0 +1,246 @@
1
+ import type {
2
+ FeatureImplementation,
3
+ ItemInstance,
4
+ TreeConfig,
5
+ TreeInstance,
6
+ Updater,
7
+ } from "@headless-tree/core";
8
+ import {
9
+ createOnDropHandler,
10
+ dragAndDropFeature,
11
+ hotkeysCoreFeature,
12
+ renamingFeature,
13
+ selectionFeature,
14
+ syncDataLoaderFeature,
15
+ } from "@headless-tree/core";
16
+ import { useTree } from "@headless-tree/react";
17
+ import React from "react";
18
+ import { Tree, TreeItem, TreeItemLabel } from "#shadcn/components/ui/tree";
19
+ import { cn } from "#shadcn/lib/utils.js";
20
+
21
+ // Styles
22
+ const treeItemStyle = cn(
23
+ "relative",
24
+ "before:absolute",
25
+ "before:inset-0",
26
+ "before:-ms-1",
27
+ "before:-z-20",
28
+ "before:bg-[repeating-linear-gradient(to_right,transparent_0,transparent_calc(var(--tree-indent)-1px),var(--border)_calc(var(--tree-indent)-1px),var(--border)_calc(var(--tree-indent)))]",
29
+ );
30
+
31
+ const treeItemLabelStyle = cn(
32
+ "before:bg-background",
33
+ "relative",
34
+ "before:absolute",
35
+ "before:inset-x-0",
36
+ "before:-inset-y-0",
37
+ "before:-z-10",
38
+ );
39
+
40
+ interface TreeViewItem<T> {
41
+ name: string;
42
+ children?: string[];
43
+ meta?: T;
44
+ }
45
+
46
+ const customClickBehavior: FeatureImplementation = {
47
+ itemInstance: {
48
+ getProps: ({ item, prev }) => {
49
+ return {
50
+ ...prev?.(),
51
+ onClick: () => {
52
+ item.setFocused();
53
+ item.primaryAction();
54
+ },
55
+ };
56
+ },
57
+ },
58
+ };
59
+
60
+ const indent = 22;
61
+
62
+ type ExpansionPropsUncontrolled = {
63
+ defaultExpandedItems?: string[];
64
+ expandedItems?: never;
65
+ onExpandedItemsChange?: never;
66
+ };
67
+ type ExpansionPropsControlled = {
68
+ defaultExpandedItems?: never;
69
+ expandedItems: string[];
70
+ onExpandedItemsChange: (items: string[]) => void;
71
+ };
72
+ type ExpansionProps = ExpansionPropsUncontrolled | ExpansionPropsControlled;
73
+
74
+ type FocusPropsUncontrolled = {
75
+ defaultFocusedItem?: string;
76
+ focusedItem?: never;
77
+ onFocusedItemChange?: never;
78
+ };
79
+ type FocusPropsControlled = {
80
+ defaultFocusedItem?: never;
81
+ focusedItem: string | null;
82
+ onFocusedItemChange: (item: string | null) => void;
83
+ };
84
+ type FocusProps = FocusPropsUncontrolled | FocusPropsControlled;
85
+
86
+ type TreeViewProps<T> = {
87
+ rootItemId: string;
88
+ items: Record<string, TreeViewItem<T>>;
89
+ customItemView?: (
90
+ item: ItemInstance<TreeViewItem<T>>,
91
+ tree: TreeInstance<TreeViewItem<T>>,
92
+ ) => React.ReactNode;
93
+ onRename?:
94
+ | ((item: ItemInstance<TreeViewItem<T>>, value: string) => void)
95
+ | undefined;
96
+ disableHover?: boolean;
97
+ zebra?: boolean;
98
+ horizontalLines?: boolean;
99
+ hideChevron?: boolean;
100
+ itemLabelClassFn?: (item: ItemInstance<TreeViewItem<T>>) => string;
101
+ onItemLabelClick?: (item: ItemInstance<TreeViewItem<T>>) => void;
102
+ chevronClassName?: string;
103
+ canReorder?: boolean;
104
+ onDropFn?: (
105
+ tree: TreeInstance<TreeViewItem<T>>,
106
+ item: ItemInstance<TreeViewItem<T>>,
107
+ newChildren: string[],
108
+ ) => void;
109
+ } & ExpansionProps &
110
+ FocusProps;
111
+
112
+ function TreeView<T>({
113
+ rootItemId,
114
+ items,
115
+ defaultFocusedItem,
116
+ focusedItem,
117
+ onFocusedItemChange,
118
+ defaultExpandedItems,
119
+ expandedItems,
120
+ onExpandedItemsChange,
121
+ customItemView,
122
+ onRename,
123
+ disableHover,
124
+ zebra,
125
+ horizontalLines,
126
+ hideChevron,
127
+ itemLabelClassFn,
128
+ onItemLabelClick,
129
+ chevronClassName,
130
+ canReorder,
131
+ onDropFn,
132
+ }: TreeViewProps<T>) {
133
+ "use no memo";
134
+
135
+ const initialExpandedItems = defaultExpandedItems ?? expandedItems;
136
+ const initialFocusedItem = defaultFocusedItem ?? focusedItem;
137
+
138
+ const setExpandedItems =
139
+ expandedItems !== undefined && onExpandedItemsChange !== undefined
140
+ ? (updater: Updater<string[]>) => {
141
+ const newVal =
142
+ updater instanceof Function ? updater(expandedItems) : updater;
143
+
144
+ onExpandedItemsChange(newVal);
145
+ }
146
+ : undefined;
147
+
148
+ const setFocusedItem =
149
+ focusedItem !== undefined && onFocusedItemChange !== undefined
150
+ ? (updater: Updater<string | null>) => {
151
+ const newVal =
152
+ updater instanceof Function ? updater(focusedItem) : updater;
153
+
154
+ onFocusedItemChange(newVal);
155
+ }
156
+ : undefined;
157
+
158
+ const treeConfig: TreeConfig<TreeViewItem<T>> = {
159
+ initialState: {
160
+ ...(initialExpandedItems !== undefined
161
+ ? { expandedItems: initialExpandedItems }
162
+ : {}),
163
+ ...(initialFocusedItem !== undefined
164
+ ? { focusedItem: initialFocusedItem }
165
+ : {}),
166
+ },
167
+ state: {
168
+ ...(expandedItems !== undefined ? { expandedItems } : {}),
169
+ ...(focusedItem !== undefined ? { focusedItem } : {}),
170
+ },
171
+ ...(setExpandedItems !== undefined ? { setExpandedItems } : {}),
172
+ ...(setFocusedItem !== undefined ? { setFocusedItem } : {}),
173
+ indent,
174
+ rootItemId: rootItemId,
175
+ isItemFolder: (item: ItemInstance<TreeViewItem<T>>) =>
176
+ item.getItemData()?.children !== undefined,
177
+ getItemName: (item: ItemInstance<TreeViewItem<T>>) =>
178
+ item.getItemData()?.name,
179
+ dataLoader: {
180
+ getItem: (itemId) =>
181
+ items[itemId] ?? ({ name: "", children: [] } as TreeViewItem<T>),
182
+ getChildren: (itemId) => items[itemId]?.children ?? [],
183
+ },
184
+ ...(onRename ? { onRename: onRename } : {}),
185
+ features: [
186
+ syncDataLoaderFeature,
187
+ hotkeysCoreFeature,
188
+ selectionFeature,
189
+ renamingFeature,
190
+ dragAndDropFeature,
191
+ customClickBehavior,
192
+ ],
193
+ canReorder: canReorder ?? false,
194
+ onDrop: createOnDropHandler((item, newChildren) => {
195
+ onDropFn?.(tree, item, newChildren);
196
+ }),
197
+ };
198
+
199
+ const tree = useTree<TreeViewItem<T>>(treeConfig);
200
+
201
+ const [prevItems, setPrevItems] = React.useState<null | typeof items>(null);
202
+ if (prevItems !== items) {
203
+ tree.rebuildTree();
204
+ setPrevItems(items);
205
+ }
206
+
207
+ return (
208
+ <Tree tree={tree} indent={indent}>
209
+ {tree.getItems().map((item) => {
210
+ return (
211
+ <TreeItem
212
+ key={item.getId()}
213
+ item={item}
214
+ className={cn(
215
+ treeItemStyle,
216
+ zebra
217
+ ? "even:bg-bg-secondary even:[&_[data-slot=tree-item-label]]:bg-bg-secondary"
218
+ : "",
219
+ )}
220
+ >
221
+ <TreeItemLabel
222
+ hideChevron={hideChevron ?? false}
223
+ disableHover={disableHover ?? false}
224
+ className={cn(treeItemLabelStyle, itemLabelClassFn?.(item))}
225
+ onClick={
226
+ onItemLabelClick ? () => onItemLabelClick(item) : undefined
227
+ }
228
+ horizontalLines={horizontalLines ?? false}
229
+ {...(chevronClassName !== undefined ? { chevronClassName } : {})}
230
+ >
231
+ {customItemView
232
+ ? customItemView(item, tree)
233
+ : item.getItemData()?.name}
234
+ </TreeItemLabel>
235
+ </TreeItem>
236
+ );
237
+ })}
238
+ <div
239
+ style={tree.getDragLineStyle()}
240
+ className="h-px bg-bg-link z-100 mx-4"
241
+ />
242
+ </Tree>
243
+ );
244
+ }
245
+
246
+ export { TreeView, type TreeViewItem, type TreeInstance };
package/src/icons.tsx ADDED
@@ -0,0 +1,331 @@
1
+ export function PlayIcon() {
2
+ return (
3
+ <svg
4
+ width="16"
5
+ height="16"
6
+ viewBox="0 0 16 16"
7
+ fill="none"
8
+ xmlns="http://www.w3.org/2000/svg"
9
+ aria-label="Play"
10
+ role="img"
11
+ >
12
+ <title>Play</title>
13
+ <path
14
+ d="M3.76074 1.56153C3.92124 1.47395 4.11669 1.48025 4.27051 1.57911L13.6035 7.57911C13.7466 7.67111 13.833 7.82988 13.833 8.00001C13.833 8.17014 13.7466 8.32891 13.6035 8.42091L4.27051 14.4209C4.11669 14.5198 3.92124 14.5261 3.76074 14.4385C3.60021 14.3508 3.5 14.1829 3.5 14V2.00001C3.5 1.81711 3.60021 1.64918 3.76074 1.56153Z"
15
+ fill="white"
16
+ />
17
+ </svg>
18
+ );
19
+ }
20
+
21
+ export function PinIcon() {
22
+ return (
23
+ <svg
24
+ width="16"
25
+ height="16"
26
+ viewBox="0 0 16 16"
27
+ fill="none"
28
+ xmlns="http://www.w3.org/2000/svg"
29
+ aria-label="Pin"
30
+ role="img"
31
+ >
32
+ <path
33
+ d="M8 11.3334V14.6667"
34
+ stroke="currentColor"
35
+ strokeWidth="1.25"
36
+ strokeLinecap="round"
37
+ strokeLinejoin="round"
38
+ />
39
+ <path
40
+ d="M5.9987 7.17337C5.99857 7.42143 5.92924 7.66453 5.79851 7.87534C5.66778 8.08616 5.48084 8.25632 5.2587 8.36671L4.07203 8.96671C3.84989 9.07709 3.66295 9.24726 3.53222 9.45807C3.40149 9.66888 3.33216 9.91198 3.33203 10.16V10.6667C3.33203 10.8435 3.40227 11.0131 3.52729 11.1381C3.65232 11.2631 3.82189 11.3334 3.9987 11.3334H11.9987C12.1755 11.3334 12.3451 11.2631 12.4701 11.1381C12.5951 11.0131 12.6654 10.8435 12.6654 10.6667V10.16C12.6652 9.91198 12.5959 9.66888 12.4652 9.45807C12.3345 9.24726 12.1475 9.07709 11.9254 8.96671L10.7387 8.36671C10.5166 8.25632 10.3296 8.08616 10.1989 7.87534C10.0682 7.66453 9.99883 7.42143 9.9987 7.17337V4.66671C9.9987 4.4899 10.0689 4.32033 10.194 4.1953C10.319 4.07028 10.4886 4.00004 10.6654 4.00004C11.019 4.00004 11.3581 3.85957 11.6082 3.60952C11.8582 3.35947 11.9987 3.02033 11.9987 2.66671C11.9987 2.31309 11.8582 1.97395 11.6082 1.7239C11.3581 1.47385 11.019 1.33337 10.6654 1.33337H5.33203C4.97841 1.33337 4.63927 1.47385 4.38922 1.7239C4.13917 1.97395 3.9987 2.31309 3.9987 2.66671C3.9987 3.02033 4.13917 3.35947 4.38922 3.60952C4.63927 3.85957 4.97841 4.00004 5.33203 4.00004C5.50884 4.00004 5.67841 4.07028 5.80344 4.1953C5.92846 4.32033 5.9987 4.4899 5.9987 4.66671V7.17337Z"
41
+ fill="currentColor"
42
+ />
43
+ </svg>
44
+ );
45
+ }
46
+
47
+ export function ResourceIcon() {
48
+ return (
49
+ <svg
50
+ width="16"
51
+ height="17"
52
+ viewBox="0 0 16 17"
53
+ fill="none"
54
+ xmlns="http://www.w3.org/2000/svg"
55
+ aria-label="Resource"
56
+ role="img"
57
+ >
58
+ <path
59
+ d="M13.9974 11.167H11.3307C10.9625 11.167 10.6641 11.4655 10.6641 11.8337V14.5003C10.6641 14.8685 10.9625 15.167 11.3307 15.167H13.9974C14.3656 15.167 14.6641 14.8685 14.6641 14.5003V11.8337C14.6641 11.4655 14.3656 11.167 13.9974 11.167Z"
60
+ stroke="#717684"
61
+ strokeWidth="1.25"
62
+ strokeLinecap="round"
63
+ strokeLinejoin="round"
64
+ />
65
+ <path
66
+ d="M4.66927 11.167H2.0026C1.63441 11.167 1.33594 11.4655 1.33594 11.8337V14.5003C1.33594 14.8685 1.63441 15.167 2.0026 15.167H4.66927C5.03746 15.167 5.33594 14.8685 5.33594 14.5003V11.8337C5.33594 11.4655 5.03746 11.167 4.66927 11.167Z"
67
+ stroke="#717684"
68
+ strokeWidth="1.25"
69
+ strokeLinecap="round"
70
+ strokeLinejoin="round"
71
+ />
72
+ <path
73
+ d="M9.33333 1.83301H6.66667C6.29848 1.83301 6 2.13148 6 2.49967V5.16634C6 5.53453 6.29848 5.83301 6.66667 5.83301H9.33333C9.70152 5.83301 10 5.53453 10 5.16634V2.49967C10 2.13148 9.70152 1.83301 9.33333 1.83301Z"
74
+ stroke="#717684"
75
+ strokeWidth="1.25"
76
+ strokeLinecap="round"
77
+ strokeLinejoin="round"
78
+ />
79
+ <path
80
+ d="M3.33594 11.1667V9.16667C3.33594 8.98986 3.40618 8.82029 3.5312 8.69526C3.65622 8.57024 3.82579 8.5 4.0026 8.5H12.0026C12.1794 8.5 12.349 8.57024 12.474 8.69526C12.599 8.82029 12.6693 8.98986 12.6693 9.16667V11.1667"
81
+ stroke="#717684"
82
+ strokeWidth="1.25"
83
+ strokeLinecap="round"
84
+ strokeLinejoin="round"
85
+ />
86
+ <path
87
+ d="M8 8.49967V5.83301"
88
+ stroke="#717684"
89
+ strokeWidth="1.25"
90
+ strokeLinecap="round"
91
+ strokeLinejoin="round"
92
+ />
93
+ </svg>
94
+ );
95
+ }
96
+
97
+ export function BackboneElementIcon() {
98
+ return (
99
+ <svg
100
+ width="16"
101
+ height="17"
102
+ viewBox="0 0 16 17"
103
+ fill="none"
104
+ xmlns="http://www.w3.org/2000/svg"
105
+ aria-label="BackboneElement"
106
+ role="img"
107
+ >
108
+ <path
109
+ d="M4.0026 9.83333L4.96927 7.9C5.08058 7.6791 5.25114 7.49353 5.46189 7.36402C5.67263 7.23451 5.91525 7.16618 6.1626 7.16667H13.3359M13.3359 7.16667C13.5396 7.16631 13.7407 7.21262 13.9237 7.30206C14.1067 7.39149 14.2668 7.52166 14.3917 7.68258C14.5165 7.8435 14.6029 8.03089 14.6441 8.23037C14.6853 8.42985 14.6802 8.63611 14.6293 8.83333L13.5959 12.8333C13.5219 13.1199 13.3547 13.3738 13.1205 13.5548C12.8864 13.7359 12.5986 13.8339 12.3026 13.8333H2.66927C2.31565 13.8333 1.97651 13.6929 1.72646 13.4428C1.47641 13.1928 1.33594 12.8536 1.33594 12.5V3.83333C1.33594 3.1 1.93594 2.5 2.66927 2.5H5.28927C5.50888 2.50114 5.72481 2.5565 5.91787 2.66117C6.11094 2.76585 6.27515 2.91659 6.39594 3.1L6.9426 3.9C7.06339 4.08341 7.22761 4.23415 7.42067 4.33883C7.61373 4.4435 7.82966 4.49886 8.04927 4.5H12.0026C12.3562 4.5 12.6954 4.64048 12.9454 4.89052C13.1955 5.14057 13.3359 5.47971 13.3359 5.83333V7.16667Z"
110
+ stroke="#717684"
111
+ strokeWidth="1.25"
112
+ strokeLinecap="round"
113
+ strokeLinejoin="round"
114
+ />
115
+ </svg>
116
+ );
117
+ }
118
+
119
+ export function SquareFunctionIcon() {
120
+ return (
121
+ <svg
122
+ width="16"
123
+ height="16"
124
+ viewBox="0 0 24 24"
125
+ fill="none"
126
+ stroke="#717684"
127
+ strokeWidth="2"
128
+ strokeLinecap="round"
129
+ strokeLinejoin="round"
130
+ xmlns="http://www.w3.org/2000/svg"
131
+ aria-label="Function"
132
+ role="img"
133
+ >
134
+ <rect width="18" height="18" x="3" y="3" rx="2" ry="2" />
135
+ <path d="M9 17c2 0 2.8-1 2.8-2.8V10c0-2 1-3.3 3.2-3" />
136
+ <path d="M9 11.2h5.7" />
137
+ </svg>
138
+ );
139
+ }
140
+
141
+ export function TypCodeIcon() {
142
+ return (
143
+ <svg
144
+ width="16"
145
+ height="17"
146
+ viewBox="0 0 16 17"
147
+ fill="none"
148
+ xmlns="http://www.w3.org/2000/svg"
149
+ aria-label="Code"
150
+ role="img"
151
+ >
152
+ <path
153
+ d="M3.33594 2.74969H4.0026C4.53304 2.74969 5.04175 2.96041 5.41682 3.33548C5.79189 3.71055 6.0026 4.21926 6.0026 4.74969C6.0026 4.21926 6.21332 3.71055 6.58839 3.33548C6.96346 2.96041 7.47217 2.74969 8.0026 2.74969H8.66927"
154
+ stroke="#717684"
155
+ strokeWidth="1.25"
156
+ strokeLinecap="round"
157
+ strokeLinejoin="round"
158
+ />
159
+ <path
160
+ d="M8.66927 13.4163H8.0026C7.47217 13.4163 6.96346 13.2056 6.58839 12.8305C6.21332 12.4555 6.0026 11.9468 6.0026 11.4163C6.0026 11.9468 5.79189 12.4555 5.41682 12.8305C5.04175 13.2056 4.53304 13.4163 4.0026 13.4163H3.33594"
161
+ stroke="#717684"
162
+ strokeWidth="1.25"
163
+ strokeLinecap="round"
164
+ strokeLinejoin="round"
165
+ />
166
+ <path
167
+ d="M3.33594 10.7497H2.66927C2.31565 10.7497 1.97651 10.6092 1.72646 10.3591C1.47641 10.1091 1.33594 9.76994 1.33594 9.41632V6.74965C1.33594 6.39603 1.47641 6.05689 1.72646 5.80685C1.97651 5.5568 2.31565 5.41632 2.66927 5.41632H3.33594"
168
+ stroke="#717684"
169
+ strokeWidth="1.25"
170
+ strokeLinecap="round"
171
+ strokeLinejoin="round"
172
+ />
173
+ <path
174
+ d="M8.66406 5.41632H13.3307C13.6844 5.41632 14.0235 5.5568 14.2735 5.80685C14.5236 6.05689 14.6641 6.39603 14.6641 6.74965V9.41632C14.6641 9.76994 14.5236 10.1091 14.2735 10.3591C14.0235 10.6092 13.6844 10.7497 13.3307 10.7497H8.66406"
175
+ stroke="#717684"
176
+ strokeWidth="1.25"
177
+ strokeLinecap="round"
178
+ strokeLinejoin="round"
179
+ />
180
+ <path
181
+ d="M6 4.74969V11.4164"
182
+ stroke="#717684"
183
+ strokeWidth="1.25"
184
+ strokeLinecap="round"
185
+ strokeLinejoin="round"
186
+ />
187
+ </svg>
188
+ );
189
+ }
190
+
191
+ export function ReferenceIcon() {
192
+ return (
193
+ <svg
194
+ width="16"
195
+ height="17"
196
+ viewBox="0 0 16 17"
197
+ fill="none"
198
+ xmlns="http://www.w3.org/2000/svg"
199
+ aria-label="Reference"
200
+ role="img"
201
+ >
202
+ <path
203
+ d="M10 2.08301H14V6.08301"
204
+ stroke="#2278E1"
205
+ strokeWidth="1.25"
206
+ strokeLinecap="round"
207
+ strokeLinejoin="round"
208
+ />
209
+ <path
210
+ d="M6.66406 9.41634L13.9974 2.08301"
211
+ stroke="#2278E1"
212
+ strokeWidth="1.25"
213
+ strokeLinecap="round"
214
+ strokeLinejoin="round"
215
+ />
216
+ <path
217
+ d="M12 8.74967V12.7497C12 13.1033 11.8595 13.4424 11.6095 13.6925C11.3594 13.9425 11.0203 14.083 10.6667 14.083H3.33333C2.97971 14.083 2.64057 13.9425 2.39052 13.6925C2.14048 13.4424 2 13.1033 2 12.7497V5.41634C2 5.06272 2.14048 4.72358 2.39052 4.47353C2.64057 4.22348 2.97971 4.08301 3.33333 4.08301H7.33333"
218
+ stroke="#2278E1"
219
+ strokeWidth="1.25"
220
+ strokeLinecap="round"
221
+ strokeLinejoin="round"
222
+ />
223
+ </svg>
224
+ );
225
+ }
226
+
227
+ export function ComplexTypeIcon() {
228
+ return (
229
+ <svg
230
+ width="16"
231
+ height="17"
232
+ viewBox="0 0 16 17"
233
+ fill="none"
234
+ xmlns="http://www.w3.org/2000/svg"
235
+ aria-label="ComplexType"
236
+ role="img"
237
+ >
238
+ <g clipPath="url(#clip0_858_18924)">
239
+ <path
240
+ d="M3.91406 5.77679L8.00281 8.08304L12.0793 5.77691"
241
+ stroke="#717684"
242
+ strokeWidth="1.25"
243
+ strokeLinecap="round"
244
+ strokeLinejoin="round"
245
+ />
246
+ <path
247
+ d="M8 12.6996V8.08301"
248
+ stroke="#717684"
249
+ strokeWidth="1.25"
250
+ strokeLinecap="round"
251
+ strokeLinejoin="round"
252
+ />
253
+ <path
254
+ d="M14 5.41636C13.9998 5.18254 13.938 4.9529 13.821 4.75047C13.704 4.54803 13.5358 4.37993 13.3333 4.26302L8.66667 1.59636C8.46397 1.47933 8.23405 1.41772 8 1.41772C7.76595 1.41772 7.53603 1.47933 7.33333 1.59636L2.66667 4.26302C2.46418 4.37993 2.29599 4.54803 2.17897 4.75047C2.06196 4.9529 2.00024 5.18254 2 5.41636V10.7497C2.00024 10.9835 2.06196 11.2132 2.17897 11.4156C2.29599 11.618 2.46418 11.7861 2.66667 11.903L7.33333 14.5697C7.53603 14.6867 7.76595 14.7483 8 14.7483C8.23405 14.7483 8.46397 14.6867 8.66667 14.5697L13.3333 11.903C13.5358 11.7861 13.704 11.618 13.821 11.4156C13.938 11.2132 13.9998 10.9835 14 10.7497V5.41636Z"
255
+ stroke="#717684"
256
+ strokeWidth="1.25"
257
+ strokeLinecap="round"
258
+ strokeLinejoin="round"
259
+ />
260
+ </g>
261
+ <defs>
262
+ <clipPath id="clip0_858_18924">
263
+ <rect
264
+ width="16"
265
+ height="16"
266
+ fill="white"
267
+ transform="translate(0 0.0830078)"
268
+ />
269
+ </clipPath>
270
+ </defs>
271
+ </svg>
272
+ );
273
+ }
274
+
275
+ export function ExtensionIcon() {
276
+ return (
277
+ <svg
278
+ width="16"
279
+ height="17"
280
+ viewBox="0 0 16 17"
281
+ fill="none"
282
+ xmlns="http://www.w3.org/2000/svg"
283
+ aria-label="Extension"
284
+ role="img"
285
+ >
286
+ <path
287
+ d="M7.84809 1.125L9.77102 5.02065L14.0712 5.64918L10.9596 8.67983L11.694 12.9613L7.84809 10.9388L4.00222 12.9613L4.73654 8.67983L1.625 5.64918L5.92515 5.02065L7.84809 1.125Z"
288
+ stroke="#D72710"
289
+ strokeWidth="1.25"
290
+ strokeLinecap="round"
291
+ strokeLinejoin="round"
292
+ />
293
+ </svg>
294
+ );
295
+ }
296
+
297
+ export function UnionIcon() {
298
+ return (
299
+ <svg
300
+ width="16"
301
+ height="17"
302
+ viewBox="0 0 16 17"
303
+ fill="none"
304
+ xmlns="http://www.w3.org/2000/svg"
305
+ aria-label="Union"
306
+ role="img"
307
+ >
308
+ <g>
309
+ <path
310
+ d="M1.21109 6.84206C1.04758 7.0054 0.917866 7.19937 0.829365 7.41287C0.740865 7.62638 0.695313 7.85523 0.695312 8.08635C0.695313 8.31747 0.740865 8.54632 0.829365 8.75983C0.917866 8.97333 1.04758 9.1673 1.21109 9.33064L6.7502 14.8698C6.91354 15.0333 7.10751 15.163 7.32101 15.2515C7.53452 15.34 7.76337 15.3855 7.99449 15.3855C8.22561 15.3855 8.45446 15.34 8.66797 15.2515C8.88147 15.163 9.07544 15.0333 9.23878 14.8698L14.7779 9.33064C14.9414 9.1673 15.0711 8.97333 15.1596 8.75983C15.2481 8.54632 15.2937 8.31747 15.2937 8.08635C15.2937 7.85523 15.2481 7.62638 15.1596 7.41287C15.0711 7.19937 14.9414 7.0054 14.7779 6.84206L9.23878 1.30295C9.07544 1.13944 8.88147 1.00972 8.66797 0.921223C8.45446 0.832723 8.22561 0.78717 7.99449 0.78717C7.76337 0.78717 7.53452 0.832723 7.32101 0.921223C7.10751 1.00972 6.91354 1.13944 6.7502 1.30295L1.21109 6.84206Z"
311
+ stroke="#2278E1"
312
+ strokeWidth="1.25"
313
+ strokeLinecap="round"
314
+ strokeLinejoin="round"
315
+ ></path>
316
+ <path
317
+ fillRule="evenodd"
318
+ clipRule="evenodd"
319
+ d="M8.18179 5.7278C7.86175 5.67291 7.5326 5.73305 7.25265 5.89758C6.9727 6.06211 6.76001 6.32041 6.65225 6.62673C6.53771 6.95235 6.18089 7.12346 5.85527 7.00891C5.52965 6.89437 5.35854 6.53754 5.47309 6.21192C5.6788 5.62713 6.08484 5.13402 6.6193 4.81992C7.15375 4.50581 7.78212 4.391 8.39312 4.4958C9.00411 4.6006 9.5583 4.91826 9.95753 5.39251C10.3567 5.8667 10.5752 6.46684 10.5743 7.08667C10.574 8.08475 9.83365 8.74761 9.29602 9.10602C9.00813 9.29795 8.72468 9.43923 8.51567 9.53213C8.41028 9.57897 8.32158 9.61449 8.25777 9.6388C8.08575 9.70433 8.22306 9.66463 8.14777 9.67866C8.20338 9.66012 8.22643 9.6509 8.14777 9.67866C7.8203 9.78781 7.46556 9.6111 7.35641 9.28364C7.2474 8.9566 7.42377 8.60314 7.75042 8.49349L7.75172 8.49305L7.76242 8.4893C7.77295 8.48555 7.79005 8.47935 7.81278 8.47069C7.85834 8.45333 7.92589 8.42635 8.008 8.38986C8.17399 8.31609 8.39054 8.20737 8.60265 8.06596C9.0649 7.7578 9.32434 7.42087 9.32434 7.08599C9.32482 6.76127 9.21037 6.44593 9.00125 6.19751C8.79213 5.94909 8.50184 5.7827 8.18179 5.7278Z"
320
+ fill="#2278E1"
321
+ ></path>
322
+ <path
323
+ fillRule="evenodd"
324
+ clipRule="evenodd"
325
+ d="M7.375 11.7526C7.375 11.4074 7.65482 11.1276 8 11.1276H8.00667C8.35184 11.1276 8.63167 11.4074 8.63167 11.7526C8.63167 12.0978 8.35184 12.3776 8.00667 12.3776H8C7.65482 12.3776 7.375 12.0978 7.375 11.7526Z"
326
+ fill="#2278E1"
327
+ ></path>
328
+ </g>
329
+ </svg>
330
+ );
331
+ }