@rainbow-robotics/muscat-plugin-kit 1.10.1-dev.1 → 1.10.1

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 (205) hide show
  1. package/README.md +282 -282
  2. package/cli/README.md +274 -274
  3. package/cli/bin/create-muscat-plugin.mjs +8 -8
  4. package/cli/bin/muscat-pk.mjs +155 -155
  5. package/cli/bundle-templates.mjs +31 -31
  6. package/cli/docker/Dockerfile.cpp +28 -28
  7. package/cli/docker/Dockerfile.dev +30 -30
  8. package/cli/docker/Dockerfile.python +21 -21
  9. package/cli/m5-e2e.mjs +69 -69
  10. package/cli/prepack.mjs +10 -10
  11. package/cli/src/ai-rules.mjs +70 -70
  12. package/cli/src/build.mjs +447 -447
  13. package/cli/src/check-package.mjs +13 -13
  14. package/cli/src/completion.mjs +166 -166
  15. package/cli/src/cpp.mjs +78 -78
  16. package/cli/src/cppIde.mjs +75 -75
  17. package/cli/src/dev.mjs +165 -165
  18. package/cli/src/devBack.mjs +734 -727
  19. package/cli/src/devUi.mjs +247 -243
  20. package/cli/src/esbuild.mjs +56 -56
  21. package/cli/src/host_agent.py +223 -223
  22. package/cli/src/manifest.mjs +287 -287
  23. package/cli/src/mcp.mjs +1071 -1071
  24. package/cli/src/muscatLocal.mjs +209 -209
  25. package/cli/src/new.mjs +343 -343
  26. package/cli/src/pluginDevServer.mjs +111 -111
  27. package/cli/src/ports.mjs +193 -193
  28. package/cli/src/python.mjs +112 -112
  29. package/cli/src/ros2.mjs +109 -109
  30. package/cli/src/sdk.mjs +117 -117
  31. package/cli/src/storybook.mjs +168 -168
  32. package/cli/src/type.mjs +141 -141
  33. package/cli/src/uninstall.mjs +81 -81
  34. package/cli/src/update.mjs +295 -295
  35. package/cli/src/util.mjs +441 -441
  36. package/cli/src/zenohDev.mjs +83 -81
  37. package/cli/storybook-dist/_design-tokens.css +4957 -4957
  38. package/cli/storybook-dist/_stories-src/NxAvatar.stories.tsx +27 -27
  39. package/cli/storybook-dist/_stories-src/NxPagination.stories.tsx +28 -28
  40. package/cli/storybook-dist/_stories-src/RBAccordion/RBAccordion.stories.tsx +46 -46
  41. package/cli/storybook-dist/_stories-src/RBAccordion/RBAccordionGroup.stories.tsx +73 -73
  42. package/cli/storybook-dist/_stories-src/RBBadge/RBBadge.stories.tsx +93 -93
  43. package/cli/storybook-dist/_stories-src/RBBattery/RBBattery.stories.tsx +74 -74
  44. package/cli/storybook-dist/_stories-src/RBButton/RBCheckIconButton.stories.tsx +28 -28
  45. package/cli/storybook-dist/_stories-src/RBButton/RBCheckLabelButton.stories.tsx +84 -84
  46. package/cli/storybook-dist/_stories-src/RBButton/RBIconButton.stories.tsx +57 -57
  47. package/cli/storybook-dist/_stories-src/RBButton/RBInlineLabelButton.stories.tsx +41 -41
  48. package/cli/storybook-dist/_stories-src/RBButton/RBLabelButton.stories.tsx +60 -60
  49. package/cli/storybook-dist/_stories-src/RBDatePicker/RBDateInput.stories.tsx +44 -44
  50. package/cli/storybook-dist/_stories-src/RBDatePicker/RBRangeDateInput.stories.tsx +56 -56
  51. package/cli/storybook-dist/_stories-src/RBDialog/RBAlert.stories.tsx +51 -51
  52. package/cli/storybook-dist/_stories-src/RBDialog/RBConfirm.stories.tsx +55 -55
  53. package/cli/storybook-dist/_stories-src/RBDialog/RBPrompt.stories.tsx +52 -52
  54. package/cli/storybook-dist/_stories-src/RBDivider/RBDivider.stories.tsx +93 -93
  55. package/cli/storybook-dist/_stories-src/RBEmptyView/RBEmptyView.stories.tsx +49 -49
  56. package/cli/storybook-dist/_stories-src/RBIcons/RBColorIcons.stories.tsx +108 -108
  57. package/cli/storybook-dist/_stories-src/RBIcons/RBIcons.stories.tsx +106 -106
  58. package/cli/storybook-dist/_stories-src/RBInput/RBCheckBox.stories.tsx +89 -89
  59. package/cli/storybook-dist/_stories-src/RBInput/RBMultiRangeInput.stories.tsx +64 -64
  60. package/cli/storybook-dist/_stories-src/RBInput/RBRadioBox.stories.tsx +65 -65
  61. package/cli/storybook-dist/_stories-src/RBInput/RBRadioButton.stories.tsx +68 -68
  62. package/cli/storybook-dist/_stories-src/RBInput/RBSelectBox.stories.tsx +216 -216
  63. package/cli/storybook-dist/_stories-src/RBInput/RBSideNumberInput.stories.tsx +90 -90
  64. package/cli/storybook-dist/_stories-src/RBInput/RBText/RBTextArea.stories.tsx +45 -45
  65. package/cli/storybook-dist/_stories-src/RBInput/RBText/RBTextInput.stories.tsx +50 -50
  66. package/cli/storybook-dist/_stories-src/RBInput/RBTextField.stories.tsx +102 -102
  67. package/cli/storybook-dist/_stories-src/RBJoyStick/RBJoyStick.stories.tsx +31 -31
  68. package/cli/storybook-dist/_stories-src/RBLight/RBLight.stories.tsx +36 -36
  69. package/cli/storybook-dist/_stories-src/RBPagination/RBPagination.stories.tsx +49 -49
  70. package/cli/storybook-dist/_stories-src/RBShadcn/RBCard/RBCard.stories.tsx +89 -89
  71. package/cli/storybook-dist/_stories-src/RBShadcn/RBCommand/RBCommand.stories.tsx +116 -116
  72. package/cli/storybook-dist/_stories-src/RBShadcn/RBDialog/RBDialog.stories.tsx +74 -74
  73. package/cli/storybook-dist/_stories-src/RBShadcn/RBDrawer/RBDrawer.stories.tsx +99 -99
  74. package/cli/storybook-dist/_stories-src/RBShadcn/RBDropdownMenu/RBDropdownMenu.stories.tsx +123 -123
  75. package/cli/storybook-dist/_stories-src/RBShadcn/RBMenubar/RBMenubar.stories.tsx +135 -135
  76. package/cli/storybook-dist/_stories-src/RBShadcn/RBPopover/RBPopover.stories.tsx +69 -69
  77. package/cli/storybook-dist/_stories-src/RBShadcn/RBResizable/RBResizable.stories.tsx +49 -49
  78. package/cli/storybook-dist/_stories-src/RBShadcn/RBSheet/RBSheet.stories.tsx +91 -91
  79. package/cli/storybook-dist/_stories-src/RBShadcn/RBSlider/RBSlider.stories.tsx +38 -38
  80. package/cli/storybook-dist/_stories-src/RBShadcn/RBSwitch/RBSwitch.stories.tsx +112 -112
  81. package/cli/storybook-dist/_stories-src/RBShadcn/RBTabs/RBTabs.stories.tsx +75 -75
  82. package/cli/storybook-dist/_stories-src/RBShadcn/RBToggle/RBToggle.stories.tsx +51 -51
  83. package/cli/storybook-dist/_stories-src/RBShadcn/RBToggleGroup/RBToggleGroup.stories.tsx +84 -84
  84. package/cli/storybook-dist/_stories-src/RBTab/RBChipTab.stories.tsx +102 -102
  85. package/cli/storybook-dist/_stories-src/RBTab/RBChipsBoxTab.stories.tsx +78 -78
  86. package/cli/storybook-dist/_stories-src/RBTab/RBTab.stories.tsx +57 -57
  87. package/cli/storybook-dist/_stories-src/RBTable/RBTable.stories.tsx +177 -177
  88. package/cli/storybook-dist/_stories-src/RBTable/RBTableRow.stories.tsx +64 -64
  89. package/cli/storybook-dist/_stories-src/RBToast/RBToast.stories.tsx +117 -117
  90. package/cli/storybook-dist/_stories-src/RBTooltip/RBTooltip.stories.tsx +50 -50
  91. package/cli/storybook-dist/_stories-src/loading/RBSpinner.stories.tsx +30 -30
  92. package/cli/storybook-dist/_stories-src/nx-button/NxButton.stories.tsx +54 -54
  93. package/cli/storybook-dist/_stories-src/nx-button/NxPointerHoldButton.stories.tsx +57 -57
  94. package/cli/storybook-dist/_stories-src/nx-icons/NxIcons.stories.tsx +48 -48
  95. package/cli/storybook-dist/_stories-src/nx-inputs/NxNumberInput.stories.tsx +103 -103
  96. package/cli/storybook-dist/_stories-src/nx-inputs/NxRangeInput.stories.tsx +27 -27
  97. package/cli/storybook-dist/_stories-src/nx-inputs/NxSelectBox.stories.tsx +67 -67
  98. package/cli/storybook-dist/_stories-src/nx-inputs/NxSlideRange.stories.tsx +45 -45
  99. package/cli/storybook-dist/_stories-src/nx-inputs/NxSwitch.stories.tsx +27 -27
  100. package/cli/storybook-dist/_stories-src/nx-inputs/NxTextArea.stories.tsx +48 -48
  101. package/cli/storybook-dist/_stories-src/nx-inputs/NxTextInput.stories.tsx +46 -46
  102. package/cli/storybook-dist/assets/{Color-YHDXOIA2-D6JqZzDJ.js → Color-YHDXOIA2-B4IER17l.js} +1 -1
  103. package/cli/storybook-dist/assets/{Docs-ESb7JAHg.js → Docs-C8GCHFtK.js} +3 -3
  104. package/cli/storybook-dist/assets/{Docs-6gD2kUo1.js → Docs-CgdEMPQP.js} +2 -2
  105. package/cli/storybook-dist/assets/{Docs-B9wd8Ok7.js → Docs-Ck3WHvk6.js} +3 -3
  106. package/cli/storybook-dist/assets/{Docs-CgFbWWXM.js → Docs-D9NHsoeZ.js} +2 -2
  107. package/cli/storybook-dist/assets/{Docs-DBQup8Bu.js → Docs-DNYQC7nl.js} +3 -3
  108. package/cli/storybook-dist/assets/{Docs-CMjovnSY.js → Docs-DUfeiM4I.js} +4 -4
  109. package/cli/storybook-dist/assets/{DocsRenderer-CFRXHY34-BOUI1AHi.js → DocsRenderer-CFRXHY34-C0WhyDoR.js} +1 -1
  110. package/cli/storybook-dist/assets/{NxAvatar.stories-DsYFMUh3.js → NxAvatar.stories-CwnK8AUF.js} +1 -1
  111. package/cli/storybook-dist/assets/{NxButton.stories-CHfNcqsc.js → NxButton.stories-ueYdosfQ.js} +8 -8
  112. package/cli/storybook-dist/assets/{NxNumberInput.stories-BFw_4vFE.js → NxNumberInput.stories-M5ZCLbrK.js} +1 -1
  113. package/cli/storybook-dist/assets/{NxPagination.stories-DVfxyw4M.js → NxPagination.stories-bxxUnHEL.js} +1 -1
  114. package/cli/storybook-dist/assets/{NxPointerHoldButton.stories-BzyxUWoZ.js → NxPointerHoldButton.stories-BHxB2kr5.js} +1 -1
  115. package/cli/storybook-dist/assets/{NxRangeInput.stories-DmRdzBc1.js → NxRangeInput.stories-BKfr-fp4.js} +6 -6
  116. package/cli/storybook-dist/assets/{NxSelectBox.stories-B1KkNUOf.js → NxSelectBox.stories-CG8FuTBq.js} +1 -1
  117. package/cli/storybook-dist/assets/{NxSlideRange.stories-CyOdvfQ6.js → NxSlideRange.stories-BRTFtMTL.js} +1 -1
  118. package/cli/storybook-dist/assets/{NxSwitch.stories-DrDBw0qp.js → NxSwitch.stories-Bwuyzn-R.js} +1 -1
  119. package/cli/storybook-dist/assets/{NxTextArea.stories-DTB2aqNS.js → NxTextArea.stories-COq2sGqu.js} +1 -1
  120. package/cli/storybook-dist/assets/{NxTextInput.stories-DU0rucmM.js → NxTextInput.stories-CjsBLz05.js} +1 -1
  121. package/cli/storybook-dist/assets/{RBAccordion.stories-DTfOtXtp.js → RBAccordion.stories-BARwuZ0Q.js} +3 -3
  122. package/cli/storybook-dist/assets/{RBAccordionGroup.stories-9y9BjrUe.js → RBAccordionGroup.stories-COrPxETW.js} +10 -10
  123. package/cli/storybook-dist/assets/{RBAlert.stories-DLTAv9fT.js → RBAlert.stories-BQrkjZPt.js} +3 -3
  124. package/cli/storybook-dist/assets/{RBBadge.stories-BNMACewA.js → RBBadge.stories-BTsLL-lK.js} +1 -1
  125. package/cli/storybook-dist/assets/{RBBattery.stories-B3kXMAt5.js → RBBattery.stories-DAeQdJbc.js} +1 -1
  126. package/cli/storybook-dist/assets/{RBCard.stories-Y-s8R2n7.js → RBCard.stories-HyhOE80R.js} +39 -39
  127. package/cli/storybook-dist/assets/{RBCheckBox.stories-DBuT9tL4.js → RBCheckBox.stories-KFk0WqX_.js} +1 -1
  128. package/cli/storybook-dist/assets/{RBCheckIconButton.stories-CWu1TL56.js → RBCheckIconButton.stories-CXbbktF5.js} +1 -1
  129. package/cli/storybook-dist/assets/{RBCheckLabelButton.stories-sCu2MGCX.js → RBCheckLabelButton.stories-DWfYz_9Z.js} +17 -17
  130. package/cli/storybook-dist/assets/{RBChipTab.stories-BX9qLJkR.js → RBChipTab.stories-JPEgVFAS.js} +5 -5
  131. package/cli/storybook-dist/assets/{RBChipsBoxTab.stories-35u1aJ-P.js → RBChipsBoxTab.stories-CTPuWXrQ.js} +1 -1
  132. package/cli/storybook-dist/assets/{RBColorIcons.stories-DAOZ5Ies.js → RBColorIcons.stories-DiFRZ5jk.js} +1 -1
  133. package/cli/storybook-dist/assets/RBCommand.stories-Pf1HAVIR.js +73 -0
  134. package/cli/storybook-dist/assets/{RBConfirm.stories-iMXcUh7Z.js → RBConfirm.stories-D1cEPUXk.js} +3 -3
  135. package/cli/storybook-dist/assets/{RBDateInput.stories-hK5rXECf.js → RBDateInput.stories-RPYpCjig.js} +1 -1
  136. package/cli/storybook-dist/assets/RBDialog.stories-DJH-0XSR.js +38 -0
  137. package/cli/storybook-dist/assets/{RBDivider.stories-BAK-iZ1Z.js → RBDivider.stories-uEj1vOgK.js} +1 -1
  138. package/cli/storybook-dist/assets/{RBDrawer.stories-B2nqf2Nh.js → RBDrawer.stories-BiMzElb2.js} +12 -12
  139. package/cli/storybook-dist/assets/RBDropdownMenu.stories-Da_TBkla.js +86 -0
  140. package/cli/storybook-dist/assets/{RBEmptyView.stories-nCenrgBh.js → RBEmptyView.stories-BHeKGfPS.js} +1 -1
  141. package/cli/storybook-dist/assets/{RBIconButton.stories-DRH7O3sp.js → RBIconButton.stories-NEsRFoYp.js} +1 -1
  142. package/cli/storybook-dist/assets/{RBIcons.stories-D3PyJXG8.js → RBIcons.stories-CcZ-TTLS.js} +1 -1
  143. package/cli/storybook-dist/assets/{RBInlineLabelButton.stories-modQbt10.js → RBInlineLabelButton.stories-B0wpdQyR.js} +1 -1
  144. package/cli/storybook-dist/assets/{RBJoyStick.stories-BY14qVgR.js → RBJoyStick.stories-DEgBou3K.js} +1 -1
  145. package/cli/storybook-dist/assets/{RBLabelButton.stories-DzF7vGwm.js → RBLabelButton.stories-DT8drIsF.js} +1 -1
  146. package/cli/storybook-dist/assets/{RBLight.stories-lF4FRmVh.js → RBLight.stories-Dh-aoeyG.js} +1 -1
  147. package/cli/storybook-dist/assets/{RBMenubar.stories-XhrI7bsV.js → RBMenubar.stories-D-H7UqVh.js} +1 -1
  148. package/cli/storybook-dist/assets/{RBMultiRangeInput.stories-DprllQDl.js → RBMultiRangeInput.stories-hlclv6jI.js} +1 -1
  149. package/cli/storybook-dist/assets/{RBPagination.stories-2v2gBJfC.js → RBPagination.stories-DWCeoZ_S.js} +1 -1
  150. package/cli/storybook-dist/assets/{RBPopover.stories-C8iLIZpv.js → RBPopover.stories-C514M09_.js} +1 -1
  151. package/cli/storybook-dist/assets/{RBPrompt.stories-Th_HrWHI.js → RBPrompt.stories-BSItvfiT.js} +1 -1
  152. package/cli/storybook-dist/assets/{RBRadioBox.stories-CoHuLaN3.js → RBRadioBox.stories-BBb4YbFU.js} +1 -1
  153. package/cli/storybook-dist/assets/{RBRadioButton.stories-DULxE_ff.js → RBRadioButton.stories-CXyOGJCv.js} +1 -1
  154. package/cli/storybook-dist/assets/{RBRangeDateInput.stories-D8A9KBSS.js → RBRangeDateInput.stories-qvhubu0e.js} +1 -1
  155. package/cli/storybook-dist/assets/{RBResizable.stories-C41QfrQ3.js → RBResizable.stories-CZKeyGjH.js} +14 -14
  156. package/cli/storybook-dist/assets/{RBSelectBox.stories-C1gNmwzw.js → RBSelectBox.stories-CRKP3ybf.js} +1 -1
  157. package/cli/storybook-dist/assets/RBSheet.stories-sCM3ZJUa.js +39 -0
  158. package/cli/storybook-dist/assets/{RBSideNumberInput.stories-9LlgQ8nh.js → RBSideNumberInput.stories-Bb7gw8RF.js} +3 -3
  159. package/cli/storybook-dist/assets/{RBSlider.stories-oUgo5K9d.js → RBSlider.stories-23OAQU5z.js} +3 -3
  160. package/cli/storybook-dist/assets/{RBSpinner.stories-DDpohbY2.js → RBSpinner.stories-2xcQdcmt.js} +1 -1
  161. package/cli/storybook-dist/assets/{RBSwitch.stories-gW-GN7QO.js → RBSwitch.stories-BACUaJm_.js} +7 -7
  162. package/cli/storybook-dist/assets/{RBTab.stories-CN-PV3HH.js → RBTab.stories-CDHE3sVs.js} +1 -1
  163. package/cli/storybook-dist/assets/{RBTable.stories-BAZLpxtM.js → RBTable.stories-C0Cfhfl7.js} +29 -29
  164. package/cli/storybook-dist/assets/{RBTableRow.stories-CwjVrszB.js → RBTableRow.stories-BF8kIkpp.js} +1 -1
  165. package/cli/storybook-dist/assets/{RBTabs.stories-JuEo2sUL.js → RBTabs.stories-BdJWRq1o.js} +7 -7
  166. package/cli/storybook-dist/assets/{RBTextArea.stories-D0_Pv4qZ.js → RBTextArea.stories-CGy2xeYH.js} +3 -3
  167. package/cli/storybook-dist/assets/{RBTextField.stories-CCsOvZqV.js → RBTextField.stories-IfUOzxCM.js} +15 -15
  168. package/cli/storybook-dist/assets/{RBTextInput.stories-Cccn3VNm.js → RBTextInput.stories-VjXNFo4R.js} +3 -3
  169. package/cli/storybook-dist/assets/{RBToast.stories-I5617t0K.js → RBToast.stories-BzcobblV.js} +1 -1
  170. package/cli/storybook-dist/assets/{RBToggle.stories-DsgKjGsJ.js → RBToggle.stories-DuLE5mKv.js} +4 -4
  171. package/cli/storybook-dist/assets/{RBToggleGroup.stories-BZEzSDuz.js → RBToggleGroup.stories-CuR0N0GJ.js} +5 -5
  172. package/cli/storybook-dist/assets/{RBTooltip.stories-4oSyAWsA.js → RBTooltip.stories--aAgNC8_.js} +1 -1
  173. package/cli/storybook-dist/assets/{SideNumberInput-DSKbd0bG.js → SideNumberInput-DyWQxYUj.js} +743 -743
  174. package/cli/storybook-dist/assets/{entry-preview-B35XREGs.js → entry-preview-D7IHsza_.js} +1 -1
  175. package/cli/storybook-dist/assets/{iframe-BB797lmL.js → iframe-CbaIp5I-.js} +2 -2
  176. package/cli/storybook-dist/assets/{index-BU2567EP.js → index-C6CBgMuG.js} +3 -3
  177. package/cli/storybook-dist/assets/{preview-C7DaSWyc.js → preview-B-iYLDuW.js} +2 -2
  178. package/cli/storybook-dist/assets/{preview-CbuRHit4.js → preview-CRWqc9DH.js} +1 -1
  179. package/cli/storybook-dist/assets/{react-resizable-panels.browser-ChIvlwo7.js → react-resizable-panels.browser-8hC8dr-6.js} +8 -8
  180. package/cli/storybook-dist/iframe.html +2 -2
  181. package/cli/storybook-dist/index.html +1 -1
  182. package/cli/storybook-dist/project.json +1 -1
  183. package/cli/templates/common/.mcp.json +8 -8
  184. package/cli/templates/common/README.md +1231 -1231
  185. package/cli/templates/common/assets/icon.svg +45 -45
  186. package/cli/templates/common/manifest.json +26 -26
  187. package/cli/templates/common/package.json +22 -22
  188. package/cli/templates/common/py/main.py +125 -125
  189. package/cli/templates/common/tsconfig.json +13 -13
  190. package/cli/templates/common/ui/content.tsx +216 -216
  191. package/cli/templates/common/ui/style.css +6 -6
  192. package/cli/templates/common/vite.config.ts +10 -10
  193. package/cli/templates/cpp/cpp/main.cpp +73 -73
  194. package/cli/templates/ros2/ros2_ws/src/__PLUGIN_SLUG__/__PLUGIN_SLUG__/node.py +25 -25
  195. package/cli/templates/ros2/ros2_ws/src/__PLUGIN_SLUG__/package.xml +10 -10
  196. package/cli/templates/ros2/ros2_ws/src/__PLUGIN_SLUG__/setup.py +18 -18
  197. package/cli/templates/ros2-cpp/ros2_ws/src/__PLUGIN_SLUG__/package.xml +11 -11
  198. package/cli/templates/ros2-cpp/ros2_ws/src/__PLUGIN_SLUG__/src/node.cpp +23 -23
  199. package/cli/vite.d.mts +25 -25
  200. package/cli/vite.mjs +292 -292
  201. package/package.json +3 -3
  202. package/cli/storybook-dist/assets/RBCommand.stories-BSqXDkKw.js +0 -73
  203. package/cli/storybook-dist/assets/RBDialog.stories-BAktz-ku.js +0 -38
  204. package/cli/storybook-dist/assets/RBDropdownMenu.stories-DbW2fWAj.js +0 -86
  205. package/cli/storybook-dist/assets/RBSheet.stories-_6VH-RUm.js +0 -39
@@ -1,36 +1,36 @@
1
- import type { Meta, StoryFn, StoryObj } from "@storybook/react";
2
- import { RBLight } from "@repo/rb-components/new_components";
3
- import { lightColors, lightSizes } from "@repo/rb-components/new_components";
4
-
5
- type StoryComponent = StoryObj<typeof RBLight>;
6
- type StoryTemplate = StoryFn<typeof RBLight>;
7
-
8
- const Template: StoryTemplate = (args) => <RBLight {...args} />;
9
-
10
- export default {
11
- component: RBLight,
12
- tags: ["autodocs"],
13
- render: Template,
14
- argTypes: {
15
- color: {
16
- control: { type: "select" },
17
- options: lightColors,
18
- table: {
19
- type: { summary: lightColors.map((c) => `"${c}"`).join(" | ") },
20
- },
21
- },
22
- size: {
23
- control: { type: "select" },
24
- options: lightSizes,
25
- table: {
26
- type: { summary: lightSizes.map((s) => `"${s}"`).join(" | ") },
27
- },
28
- },
29
- },
30
- args: {
31
- color: "green",
32
- size: "md",
33
- },
34
- } as Meta<typeof RBLight>;
35
-
36
- export const Playground: StoryComponent = {};
1
+ import type { Meta, StoryFn, StoryObj } from "@storybook/react";
2
+ import { RBLight } from "@repo/rb-components/new_components";
3
+ import { lightColors, lightSizes } from "@repo/rb-components/new_components";
4
+
5
+ type StoryComponent = StoryObj<typeof RBLight>;
6
+ type StoryTemplate = StoryFn<typeof RBLight>;
7
+
8
+ const Template: StoryTemplate = (args) => <RBLight {...args} />;
9
+
10
+ export default {
11
+ component: RBLight,
12
+ tags: ["autodocs"],
13
+ render: Template,
14
+ argTypes: {
15
+ color: {
16
+ control: { type: "select" },
17
+ options: lightColors,
18
+ table: {
19
+ type: { summary: lightColors.map((c) => `"${c}"`).join(" | ") },
20
+ },
21
+ },
22
+ size: {
23
+ control: { type: "select" },
24
+ options: lightSizes,
25
+ table: {
26
+ type: { summary: lightSizes.map((s) => `"${s}"`).join(" | ") },
27
+ },
28
+ },
29
+ },
30
+ args: {
31
+ color: "green",
32
+ size: "md",
33
+ },
34
+ } as Meta<typeof RBLight>;
35
+
36
+ export const Playground: StoryComponent = {};
@@ -1,49 +1,49 @@
1
- import { useEffect, useState } from "react";
2
- import type { Meta, StoryObj, StoryFn } from "@storybook/react";
3
- import { RBPagination } from "@repo/rb-components/new_components";
4
-
5
- type StoryComponent = StoryObj<typeof RBPagination>;
6
- type StoryTemplate = StoryFn<typeof RBPagination>;
7
-
8
- // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction
9
- export default {
10
- component: RBPagination,
11
- tags: ["autodocs"],
12
- } as Meta<typeof RBPagination>;
13
-
14
- const Template: StoryTemplate = (args) => {
15
- const [currPage, setCurrPage] = useState(args.currPage ?? 1);
16
-
17
- useEffect(() => {
18
- setCurrPage(args.currPage ?? 1);
19
- }, [args.currPage]);
20
-
21
- return (
22
- <RBPagination
23
- {...args}
24
- currPage={currPage}
25
- handlePageChange={(page) => {
26
- setCurrPage(page);
27
- args.handlePageChange?.(page);
28
- }}
29
- />
30
- );
31
- };
32
-
33
- export const Default: StoryComponent = {
34
- parameters: {
35
- docs: {
36
- description: {
37
- story: "",
38
- },
39
- },
40
- },
41
- args: {
42
- currPage: 1,
43
- listSize: 1,
44
- pageSize: 10,
45
- totalCount: 100,
46
- handlePageChange: () => {},
47
- },
48
- render: Template,
49
- };
1
+ import { useEffect, useState } from "react";
2
+ import type { Meta, StoryObj, StoryFn } from "@storybook/react";
3
+ import { RBPagination } from "@repo/rb-components/new_components";
4
+
5
+ type StoryComponent = StoryObj<typeof RBPagination>;
6
+ type StoryTemplate = StoryFn<typeof RBPagination>;
7
+
8
+ // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction
9
+ export default {
10
+ component: RBPagination,
11
+ tags: ["autodocs"],
12
+ } as Meta<typeof RBPagination>;
13
+
14
+ const Template: StoryTemplate = (args) => {
15
+ const [currPage, setCurrPage] = useState(args.currPage ?? 1);
16
+
17
+ useEffect(() => {
18
+ setCurrPage(args.currPage ?? 1);
19
+ }, [args.currPage]);
20
+
21
+ return (
22
+ <RBPagination
23
+ {...args}
24
+ currPage={currPage}
25
+ handlePageChange={(page) => {
26
+ setCurrPage(page);
27
+ args.handlePageChange?.(page);
28
+ }}
29
+ />
30
+ );
31
+ };
32
+
33
+ export const Default: StoryComponent = {
34
+ parameters: {
35
+ docs: {
36
+ description: {
37
+ story: "",
38
+ },
39
+ },
40
+ },
41
+ args: {
42
+ currPage: 1,
43
+ listSize: 1,
44
+ pageSize: 10,
45
+ totalCount: 100,
46
+ handlePageChange: () => {},
47
+ },
48
+ render: Template,
49
+ };
@@ -1,89 +1,89 @@
1
- import type { Meta, StoryObj } from "@storybook/react";
2
- import { HStack, VStack } from "@repo/rb-components";
3
-
4
- import {
5
- RBCard,
6
- RBCardContent,
7
- RBCardDescription,
8
- RBCardFooter,
9
- RBCardHeader,
10
- RBCardHeaderText,
11
- RBLabelButton,
12
- RBCardTitle,
13
- RBTextLabel,
14
- RBTextInput,
15
- } from "@repo/rb-components/new_components";
16
-
17
- const meta = {
18
- component: RBCard,
19
- tags: ["autodocs"],
20
- argTypes: {
21
- size: {
22
- control: { type: "select" },
23
- options: ["sm", "md"],
24
- table: { type: { summary: '"sm" | "md"' } },
25
- },
26
- },
27
- args: {
28
- size: "md",
29
- },
30
- } satisfies Meta<typeof RBCard>;
31
-
32
- export default meta;
33
- type Story = StoryObj<typeof meta>;
34
-
35
- export const Playground: Story = {
36
- render: ({ size }) => {
37
- return (
38
- <RBCard size={size}>
39
- <RBCardHeader>
40
- <RBCardHeaderText>
41
- <RBCardTitle>Title Text</RBCardTitle>
42
- <RBCardDescription>This is a card description.</RBCardDescription>
43
- </RBCardHeaderText>
44
- </RBCardHeader>
45
-
46
- <RBCardContent>
47
- <VStack className="w-full gap-6">
48
- <VStack className="w-full gap-2">
49
- <RBTextLabel label="Email" />
50
- <RBTextInput
51
- defaultValue="m@example.com"
52
- type="email"
53
- size="sm"
54
- className="w-full"
55
- />
56
- </VStack>
57
- <VStack className="w-full gap-2">
58
- <HStack className="w-full items-start justify-between">
59
- <RBTextLabel label="Password" className="w-auto" />
60
- <span className="text-fg-default typo-compact-xs-normal whitespace-nowrap">
61
- Forgot your password?
62
- </span>
63
- </HStack>
64
- <RBTextInput
65
- defaultValue="Placeholder"
66
- type="password"
67
- size="sm"
68
- className="w-full"
69
- />
70
- </VStack>
71
- <p className="text-fg-default typo-body-xs-normal">
72
- The card component supports a size prop that can be set to
73
- &quot;sm&quot; for a more compact appearance.
74
- </p>
75
- </VStack>
76
- </RBCardContent>
77
-
78
- <RBCardFooter>
79
- <RBLabelButton size="sm" variant="solid" className="w-full">
80
- Login
81
- </RBLabelButton>
82
- <RBLabelButton size="sm" variant="outlined" className="w-full">
83
- Login with Google
84
- </RBLabelButton>
85
- </RBCardFooter>
86
- </RBCard>
87
- );
88
- },
89
- };
1
+ import type { Meta, StoryObj } from "@storybook/react";
2
+ import { HStack, VStack } from "@repo/rb-components";
3
+
4
+ import {
5
+ RBCard,
6
+ RBCardContent,
7
+ RBCardDescription,
8
+ RBCardFooter,
9
+ RBCardHeader,
10
+ RBCardHeaderText,
11
+ RBLabelButton,
12
+ RBCardTitle,
13
+ RBTextLabel,
14
+ RBTextInput,
15
+ } from "@repo/rb-components/new_components";
16
+
17
+ const meta = {
18
+ component: RBCard,
19
+ tags: ["autodocs"],
20
+ argTypes: {
21
+ size: {
22
+ control: { type: "select" },
23
+ options: ["sm", "md"],
24
+ table: { type: { summary: '"sm" | "md"' } },
25
+ },
26
+ },
27
+ args: {
28
+ size: "md",
29
+ },
30
+ } satisfies Meta<typeof RBCard>;
31
+
32
+ export default meta;
33
+ type Story = StoryObj<typeof meta>;
34
+
35
+ export const Playground: Story = {
36
+ render: ({ size }) => {
37
+ return (
38
+ <RBCard size={size}>
39
+ <RBCardHeader>
40
+ <RBCardHeaderText>
41
+ <RBCardTitle>Title Text</RBCardTitle>
42
+ <RBCardDescription>This is a card description.</RBCardDescription>
43
+ </RBCardHeaderText>
44
+ </RBCardHeader>
45
+
46
+ <RBCardContent>
47
+ <VStack className="w-full gap-6">
48
+ <VStack className="w-full gap-2">
49
+ <RBTextLabel label="Email" />
50
+ <RBTextInput
51
+ defaultValue="m@example.com"
52
+ type="email"
53
+ size="sm"
54
+ className="w-full"
55
+ />
56
+ </VStack>
57
+ <VStack className="w-full gap-2">
58
+ <HStack className="w-full items-start justify-between">
59
+ <RBTextLabel label="Password" className="w-auto" />
60
+ <span className="text-fg-default typo-compact-xs-normal whitespace-nowrap">
61
+ Forgot your password?
62
+ </span>
63
+ </HStack>
64
+ <RBTextInput
65
+ defaultValue="Placeholder"
66
+ type="password"
67
+ size="sm"
68
+ className="w-full"
69
+ />
70
+ </VStack>
71
+ <p className="text-fg-default typo-body-xs-normal">
72
+ The card component supports a size prop that can be set to
73
+ &quot;sm&quot; for a more compact appearance.
74
+ </p>
75
+ </VStack>
76
+ </RBCardContent>
77
+
78
+ <RBCardFooter>
79
+ <RBLabelButton size="sm" variant="solid" className="w-full">
80
+ Login
81
+ </RBLabelButton>
82
+ <RBLabelButton size="sm" variant="outlined" className="w-full">
83
+ Login with Google
84
+ </RBLabelButton>
85
+ </RBCardFooter>
86
+ </RBCard>
87
+ );
88
+ },
89
+ };
@@ -1,116 +1,116 @@
1
- import type { Meta, StoryObj } from "@storybook/react";
2
- import { CheckIcon } from "lucide-react";
3
- import { useState, type ComponentProps } from "react";
4
-
5
- import {
6
- RBIcons,
7
- RBCommand,
8
- RBCommandEmpty,
9
- RBCommandGroup,
10
- RBCommandInput,
11
- RBCommandItem,
12
- RBCommandList,
13
- RBCommandSelected,
14
- RBCommandSeparator,
15
- RBCommandShortcut,
16
- } from "@repo/rb-components/new_components";
17
-
18
- const meta = {
19
- component: RBCommand,
20
- tags: ["autodocs"],
21
- } satisfies Meta<typeof RBCommand>;
22
-
23
- export default meta;
24
- type Story = StoryObj<typeof meta>;
25
-
26
- type RBCommandProps = ComponentProps<typeof RBCommand>;
27
-
28
- export const Suggestions: Story = {
29
- render: function Render(args: RBCommandProps) {
30
- const [selectedItem, setSelectedItem] = useState<string | null>(null);
31
- const placeholder = selectedItem
32
- ? `${selectedItem} 선택됨`
33
- : "플레이스홀더";
34
-
35
- return (
36
- <RBCommand {...args} className={`w-96 ${args.className ?? ""}`}>
37
- <RBCommandInput placeholder={placeholder} />
38
- <RBCommandList>
39
- <RBCommandGroup heading="Suggestions">
40
- <RBCommandItem onSelect={() => setSelectedItem("Calendar")}>
41
- <RBIcons.SvgInformationRegular />
42
- Calendar
43
- {selectedItem === "Calendar" && (
44
- <RBCommandSelected>
45
- <CheckIcon />
46
- </RBCommandSelected>
47
- )}
48
- </RBCommandItem>
49
- <RBCommandItem onSelect={() => setSelectedItem("Search Emoji")}>
50
- <RBIcons.SvgInformationRegular />
51
- Search Emoji
52
- {selectedItem === "Search Emoji" && (
53
- <RBCommandSelected>
54
- <CheckIcon />
55
- </RBCommandSelected>
56
- )}
57
- </RBCommandItem>
58
- <RBCommandItem onSelect={() => setSelectedItem("Calculator")}>
59
- <RBIcons.SvgInformationRegular />
60
- Calculator
61
- {selectedItem === "Calculator" && (
62
- <RBCommandSelected>
63
- <CheckIcon />
64
- </RBCommandSelected>
65
- )}
66
- </RBCommandItem>
67
- </RBCommandGroup>
68
- <RBCommandSeparator className="w-full" />
69
- <RBCommandGroup heading="Settings">
70
- <RBCommandItem onSelect={() => setSelectedItem("Profile")}>
71
- <RBIcons.SvgInformationRegular />
72
- Profile
73
- {selectedItem === "Profile" && (
74
- <RBCommandSelected>
75
- <CheckIcon />
76
- </RBCommandSelected>
77
- )}
78
- <RBCommandShortcut>⌘P</RBCommandShortcut>
79
- </RBCommandItem>
80
- <RBCommandItem onSelect={() => setSelectedItem("Billing")}>
81
- <RBIcons.SvgInformationRegular />
82
- Billing
83
- {selectedItem === "Billing" && (
84
- <RBCommandSelected>
85
- <CheckIcon />
86
- </RBCommandSelected>
87
- )}
88
- <RBCommandShortcut>⌘B</RBCommandShortcut>
89
- </RBCommandItem>
90
- <RBCommandItem onSelect={() => setSelectedItem("Settings")}>
91
- <RBIcons.SvgInformationRegular />
92
- Settings
93
- {selectedItem === "Settings" && (
94
- <RBCommandSelected>
95
- <CheckIcon />
96
- </RBCommandSelected>
97
- )}
98
- <RBCommandShortcut>⌘S</RBCommandShortcut>
99
- </RBCommandItem>
100
- </RBCommandGroup>
101
- </RBCommandList>
102
- </RBCommand>
103
- );
104
- },
105
- };
106
-
107
- export const EmptyState: Story = {
108
- render: () => (
109
- <RBCommand className="h-60 w-96">
110
- <RBCommandInput placeholder="플레이스홀더" />
111
- <RBCommandList className="flex flex-1 flex-col items-center justify-center p-0">
112
- <RBCommandEmpty>No results found.</RBCommandEmpty>
113
- </RBCommandList>
114
- </RBCommand>
115
- ),
116
- };
1
+ import type { Meta, StoryObj } from "@storybook/react";
2
+ import { CheckIcon } from "lucide-react";
3
+ import { useState, type ComponentProps } from "react";
4
+
5
+ import {
6
+ RBIcons,
7
+ RBCommand,
8
+ RBCommandEmpty,
9
+ RBCommandGroup,
10
+ RBCommandInput,
11
+ RBCommandItem,
12
+ RBCommandList,
13
+ RBCommandSelected,
14
+ RBCommandSeparator,
15
+ RBCommandShortcut,
16
+ } from "@repo/rb-components/new_components";
17
+
18
+ const meta = {
19
+ component: RBCommand,
20
+ tags: ["autodocs"],
21
+ } satisfies Meta<typeof RBCommand>;
22
+
23
+ export default meta;
24
+ type Story = StoryObj<typeof meta>;
25
+
26
+ type RBCommandProps = ComponentProps<typeof RBCommand>;
27
+
28
+ export const Suggestions: Story = {
29
+ render: function Render(args: RBCommandProps) {
30
+ const [selectedItem, setSelectedItem] = useState<string | null>(null);
31
+ const placeholder = selectedItem
32
+ ? `${selectedItem} 선택됨`
33
+ : "플레이스홀더";
34
+
35
+ return (
36
+ <RBCommand {...args} className={`w-96 ${args.className ?? ""}`}>
37
+ <RBCommandInput placeholder={placeholder} />
38
+ <RBCommandList>
39
+ <RBCommandGroup heading="Suggestions">
40
+ <RBCommandItem onSelect={() => setSelectedItem("Calendar")}>
41
+ <RBIcons.SvgInformationRegular />
42
+ Calendar
43
+ {selectedItem === "Calendar" && (
44
+ <RBCommandSelected>
45
+ <CheckIcon />
46
+ </RBCommandSelected>
47
+ )}
48
+ </RBCommandItem>
49
+ <RBCommandItem onSelect={() => setSelectedItem("Search Emoji")}>
50
+ <RBIcons.SvgInformationRegular />
51
+ Search Emoji
52
+ {selectedItem === "Search Emoji" && (
53
+ <RBCommandSelected>
54
+ <CheckIcon />
55
+ </RBCommandSelected>
56
+ )}
57
+ </RBCommandItem>
58
+ <RBCommandItem onSelect={() => setSelectedItem("Calculator")}>
59
+ <RBIcons.SvgInformationRegular />
60
+ Calculator
61
+ {selectedItem === "Calculator" && (
62
+ <RBCommandSelected>
63
+ <CheckIcon />
64
+ </RBCommandSelected>
65
+ )}
66
+ </RBCommandItem>
67
+ </RBCommandGroup>
68
+ <RBCommandSeparator className="w-full" />
69
+ <RBCommandGroup heading="Settings">
70
+ <RBCommandItem onSelect={() => setSelectedItem("Profile")}>
71
+ <RBIcons.SvgInformationRegular />
72
+ Profile
73
+ {selectedItem === "Profile" && (
74
+ <RBCommandSelected>
75
+ <CheckIcon />
76
+ </RBCommandSelected>
77
+ )}
78
+ <RBCommandShortcut>⌘P</RBCommandShortcut>
79
+ </RBCommandItem>
80
+ <RBCommandItem onSelect={() => setSelectedItem("Billing")}>
81
+ <RBIcons.SvgInformationRegular />
82
+ Billing
83
+ {selectedItem === "Billing" && (
84
+ <RBCommandSelected>
85
+ <CheckIcon />
86
+ </RBCommandSelected>
87
+ )}
88
+ <RBCommandShortcut>⌘B</RBCommandShortcut>
89
+ </RBCommandItem>
90
+ <RBCommandItem onSelect={() => setSelectedItem("Settings")}>
91
+ <RBIcons.SvgInformationRegular />
92
+ Settings
93
+ {selectedItem === "Settings" && (
94
+ <RBCommandSelected>
95
+ <CheckIcon />
96
+ </RBCommandSelected>
97
+ )}
98
+ <RBCommandShortcut>⌘S</RBCommandShortcut>
99
+ </RBCommandItem>
100
+ </RBCommandGroup>
101
+ </RBCommandList>
102
+ </RBCommand>
103
+ );
104
+ },
105
+ };
106
+
107
+ export const EmptyState: Story = {
108
+ render: () => (
109
+ <RBCommand className="h-60 w-96">
110
+ <RBCommandInput placeholder="플레이스홀더" />
111
+ <RBCommandList className="flex flex-1 flex-col items-center justify-center p-0">
112
+ <RBCommandEmpty>No results found.</RBCommandEmpty>
113
+ </RBCommandList>
114
+ </RBCommand>
115
+ ),
116
+ };