@rainbow-robotics/muscat-plugin-kit 0.1.2-dev.8 → 1.0.0
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.
- package/README.md +113 -49
- package/cli/README.md +191 -5
- package/cli/bin/create-muscat-plugin.mjs +1 -1
- package/cli/bin/muscat-pk.mjs +25 -14
- package/cli/bundle-templates.mjs +28 -0
- package/cli/docker/Dockerfile.bridge +17 -0
- package/cli/docker/Dockerfile.cpp +22 -0
- package/cli/docker/Dockerfile.dev +1 -0
- package/cli/docker/Dockerfile.python +20 -0
- package/cli/docker/bridge-package.json +8 -0
- package/cli/prepack.mjs +10 -0
- package/cli/src/__pycache__/host_agent.cpython-37.pyc +0 -0
- package/cli/src/bridge.mjs +95 -0
- package/cli/src/build.mjs +345 -85
- package/cli/src/check-package.mjs +8 -23
- package/cli/src/cpp.mjs +61 -0
- package/cli/src/dev.mjs +156 -4
- package/cli/src/devBack.mjs +505 -57
- package/cli/src/devUi.mjs +167 -22
- package/cli/src/esbuild.mjs +27 -10
- package/cli/src/host_agent.py +162 -0
- package/cli/src/manifest.mjs +208 -0
- package/cli/src/mcp.mjs +617 -0
- package/cli/src/new.mjs +170 -67
- package/cli/src/pluginDevServer.mjs +112 -0
- package/cli/src/ports.mjs +160 -0
- package/cli/src/python.mjs +109 -0
- package/cli/src/ros2.mjs +43 -18
- package/cli/src/sdk.mjs +11 -9
- package/cli/src/socketBridge.mjs +133 -0
- package/cli/src/storybook.mjs +168 -0
- package/cli/src/type.mjs +52 -29
- package/cli/src/uninstall.mjs +98 -0
- package/cli/src/update.mjs +259 -30
- package/cli/src/util.mjs +123 -9
- package/cli/src/zenohDev.mjs +75 -0
- package/cli/storybook-dist/_design-tokens.css +4957 -0
- package/cli/storybook-dist/_stories-src/NxAvatar.stories.tsx +27 -0
- package/cli/storybook-dist/_stories-src/NxPagination.stories.tsx +28 -0
- package/cli/storybook-dist/_stories-src/RBAccordion/RBAccordion.stories.tsx +46 -0
- package/cli/storybook-dist/_stories-src/RBAccordion/RBAccordionGroup.stories.tsx +73 -0
- package/cli/storybook-dist/_stories-src/RBBadge/RBBadge.stories.tsx +93 -0
- package/cli/storybook-dist/_stories-src/RBBattery/RBBattery.stories.tsx +74 -0
- package/cli/storybook-dist/_stories-src/RBButton/RBCheckIconButton.stories.tsx +28 -0
- package/cli/storybook-dist/_stories-src/RBButton/RBCheckLabelButton.stories.tsx +84 -0
- package/cli/storybook-dist/_stories-src/RBButton/RBIconButton.stories.tsx +57 -0
- package/cli/storybook-dist/_stories-src/RBButton/RBInlineLabelButton.stories.tsx +41 -0
- package/cli/storybook-dist/_stories-src/RBButton/RBLabelButton.stories.tsx +60 -0
- package/cli/storybook-dist/_stories-src/RBDatePicker/RBDateInput.stories.tsx +44 -0
- package/cli/storybook-dist/_stories-src/RBDatePicker/RBRangeDateInput.stories.tsx +44 -0
- package/cli/storybook-dist/_stories-src/RBDialog/RBAlert.stories.tsx +51 -0
- package/cli/storybook-dist/_stories-src/RBDialog/RBConfirm.stories.tsx +55 -0
- package/cli/storybook-dist/_stories-src/RBDialog/RBPrompt.stories.tsx +52 -0
- package/cli/storybook-dist/_stories-src/RBDivider/RBDivider.stories.tsx +93 -0
- package/cli/storybook-dist/_stories-src/RBEmptyView/RBEmptyView.stories.tsx +49 -0
- package/cli/storybook-dist/_stories-src/RBIcons/RBColorIcons.stories.tsx +108 -0
- package/cli/storybook-dist/_stories-src/RBIcons/RBIcons.stories.tsx +106 -0
- package/cli/storybook-dist/_stories-src/RBIcons/RBMenuTreeIcons.stories.tsx +108 -0
- package/cli/storybook-dist/_stories-src/RBIcons/RBProgramIcons.stories.tsx +116 -0
- package/cli/storybook-dist/_stories-src/RBInput/RBCheckBox.stories.tsx +89 -0
- package/cli/storybook-dist/_stories-src/RBInput/RBMultiRangeInput.stories.tsx +64 -0
- package/cli/storybook-dist/_stories-src/RBInput/RBRadioBox.stories.tsx +65 -0
- package/cli/storybook-dist/_stories-src/RBInput/RBRadioButton.stories.tsx +68 -0
- package/cli/storybook-dist/_stories-src/RBInput/RBSelectBox.stories.tsx +119 -0
- package/cli/storybook-dist/_stories-src/RBInput/RBSideNumberInput.stories.tsx +90 -0
- package/cli/storybook-dist/_stories-src/RBInput/RBText/RBTextArea.stories.tsx +45 -0
- package/cli/storybook-dist/_stories-src/RBInput/RBText/RBTextInput.stories.tsx +50 -0
- package/cli/storybook-dist/_stories-src/RBInput/RBTextField.stories.tsx +102 -0
- package/cli/storybook-dist/_stories-src/RBJoyStick/RBJoyStick.stories.tsx +31 -0
- package/cli/storybook-dist/_stories-src/RBLight/RBLight.stories.tsx +36 -0
- package/cli/storybook-dist/_stories-src/RBPagination/RBPagination.stories.tsx +49 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBCard/RBCard.stories.tsx +89 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBCommand/RBCommand.stories.tsx +116 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBDialog/RBDialog.stories.tsx +74 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBDrawer/RBDrawer.stories.tsx +99 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBDropdownMenu/RBDropdownMenu.stories.tsx +123 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBMenubar/RBMenubar.stories.tsx +135 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBPopover/RBPopover.stories.tsx +69 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBResizable/RBResizable.stories.tsx +49 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBSheet/RBSheet.stories.tsx +91 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBSlider/RBSlider.stories.tsx +38 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBSwitch/RBSwitch.stories.tsx +112 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBTabs/RBTabs.stories.tsx +75 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBToggle/RBToggle.stories.tsx +51 -0
- package/cli/storybook-dist/_stories-src/RBShadcn/RBToggleGroup/RBToggleGroup.stories.tsx +84 -0
- package/cli/storybook-dist/_stories-src/RBTab/RBChipTab.stories.tsx +102 -0
- package/cli/storybook-dist/_stories-src/RBTab/RBChipsBoxTab.stories.tsx +78 -0
- package/cli/storybook-dist/_stories-src/RBTab/RBTab.stories.tsx +57 -0
- package/cli/storybook-dist/_stories-src/RBTable/RBTable.stories.tsx +177 -0
- package/cli/storybook-dist/_stories-src/RBTable/RBTableRow.stories.tsx +64 -0
- package/cli/storybook-dist/_stories-src/RBToast/RBToast.stories.tsx +117 -0
- package/cli/storybook-dist/_stories-src/RBTooltip/RBTooltip.stories.tsx +50 -0
- package/cli/storybook-dist/_stories-src/loading/RBSpinner.stories.tsx +30 -0
- package/cli/storybook-dist/_stories-src/nx-button/NxButton.stories.tsx +54 -0
- package/cli/storybook-dist/_stories-src/nx-button/NxPointerHoldButton.stories.tsx +57 -0
- package/cli/storybook-dist/_stories-src/nx-icons/NxIcons.stories.tsx +48 -0
- package/cli/storybook-dist/_stories-src/nx-inputs/NxNumberInput.stories.tsx +103 -0
- package/cli/storybook-dist/_stories-src/nx-inputs/NxRangeInput.stories.tsx +27 -0
- package/cli/storybook-dist/_stories-src/nx-inputs/NxSelectBox.stories.tsx +67 -0
- package/cli/storybook-dist/_stories-src/nx-inputs/NxSlideRange.stories.tsx +45 -0
- package/cli/storybook-dist/_stories-src/nx-inputs/NxSwitch.stories.tsx +27 -0
- package/cli/storybook-dist/_stories-src/nx-inputs/NxTextArea.stories.tsx +48 -0
- package/cli/storybook-dist/_stories-src/nx-inputs/NxTextInput.stories.tsx +46 -0
- package/cli/storybook-dist/assets/Color-YHDXOIA2-ttZJDaKn.js +1 -0
- package/cli/storybook-dist/assets/Docs-B1jnlXHd.js +12 -0
- package/cli/storybook-dist/assets/Docs-B7dRsHh7.js +8 -0
- package/cli/storybook-dist/assets/Docs-C68t3mnn.js +20 -0
- package/cli/storybook-dist/assets/Docs-D7rPMMhK.js +7 -0
- package/cli/storybook-dist/assets/Docs-DM98U-ZG.js +7 -0
- package/cli/storybook-dist/assets/Docs-guWsANnn.js +8 -0
- package/cli/storybook-dist/assets/DocsRenderer-CFRXHY34-t12O9QfY.js +2 -0
- package/cli/storybook-dist/assets/NxAvatar.stories-ikdLTtys.js +13 -0
- package/cli/storybook-dist/assets/NxButton.stories-DL3S2KEV.js +20 -0
- package/cli/storybook-dist/assets/NxIcons.stories-Ca7qpAaO.js +3 -0
- package/cli/storybook-dist/assets/NxNumberInput.stories-D6NVMTos.js +26 -0
- package/cli/storybook-dist/assets/NxPagination.stories-BDKSlHiQ.js +11 -0
- package/cli/storybook-dist/assets/NxPointerHoldButton.stories-BI544zqB.js +14 -0
- package/cli/storybook-dist/assets/NxRangeInput.stories-BigBBkE7.js +17 -0
- package/cli/storybook-dist/assets/NxSelectBox.stories-Ci0IyUWd.js +17 -0
- package/cli/storybook-dist/assets/NxSlideRange.stories-sjnPAjFy.js +14 -0
- package/cli/storybook-dist/assets/NxSwitch.stories-CRxPDlJm.js +11 -0
- package/cli/storybook-dist/assets/NxTextArea.stories-Jh09n24O.js +11 -0
- package/cli/storybook-dist/assets/NxTextInput.stories-BeGCjxES.js +11 -0
- package/cli/storybook-dist/assets/PretendardVariable-CJuje-Rk.woff2 +0 -0
- package/cli/storybook-dist/assets/RBAccordion.stories-CnC95OwM.js +17 -0
- package/cli/storybook-dist/assets/RBAccordionGroup.stories-og-6ePox.js +33 -0
- package/cli/storybook-dist/assets/RBAlert.stories-BcE9-UOT.js +17 -0
- package/cli/storybook-dist/assets/RBBadge.stories-DYZMXb-e.js +1 -0
- package/cli/storybook-dist/assets/RBBattery.stories-B7YAUvlM.js +10 -0
- package/cli/storybook-dist/assets/RBCard.stories-DTL_7n6I.js +45 -0
- package/cli/storybook-dist/assets/RBCheckBox.stories-D9KC6hTg.js +1 -0
- package/cli/storybook-dist/assets/RBCheckIconButton.stories-BR8aIkOC.js +1 -0
- package/cli/storybook-dist/assets/RBCheckLabelButton.stories-C1ABYhEr.js +24 -0
- package/cli/storybook-dist/assets/RBChipTab.stories-Ceo_vnNi.js +21 -0
- package/cli/storybook-dist/assets/RBChipsBoxTab.stories-CB_bfK8M.js +1 -0
- package/cli/storybook-dist/assets/RBColorIcons.stories-DHZKezld.js +3 -0
- package/cli/storybook-dist/assets/RBCommand.stories-DjuCDn5h.js +73 -0
- package/cli/storybook-dist/assets/RBConfirm.stories-HMmUPkB1.js +20 -0
- package/cli/storybook-dist/assets/RBDateInput.stories-BRfpYtJ4.js +15 -0
- package/cli/storybook-dist/assets/RBDialog.stories-Ln23Gyhk.js +38 -0
- package/cli/storybook-dist/assets/RBDivider.stories-Bhc_D5Cm.js +1 -0
- package/cli/storybook-dist/assets/RBDrawer.stories-CEEhamr_.js +14 -0
- package/cli/storybook-dist/assets/RBDropdownMenu.stories-DBvwDCnf.js +86 -0
- package/cli/storybook-dist/assets/RBEmptyView.stories-BY5QtXVc.js +12 -0
- package/cli/storybook-dist/assets/RBIconButton.stories-DyMFWpIV.js +1 -0
- package/cli/storybook-dist/assets/RBIcons.stories-DisU8G0d.js +3 -0
- package/cli/storybook-dist/assets/RBInlineLabelButton.stories-Cx0KJqxD.js +1 -0
- package/cli/storybook-dist/assets/RBJoyStick.stories-D1THM1Du.js +11 -0
- package/cli/storybook-dist/assets/RBLabelButton.stories-BDktlyzc.js +1 -0
- package/cli/storybook-dist/assets/RBLight.stories-C5qpnM6J.js +1 -0
- package/cli/storybook-dist/assets/RBMenuTreeIcons.stories-DUCeQPKJ.js +3 -0
- package/cli/storybook-dist/assets/RBMenubar.stories-ClyM9v37.js +3 -0
- package/cli/storybook-dist/assets/RBMultiRangeInput.stories--xSn64ww.js +14 -0
- package/cli/storybook-dist/assets/RBPagination.stories-C_uTj83z.js +17 -0
- package/cli/storybook-dist/assets/RBPopover.stories-DWmb9Por.js +11 -0
- package/cli/storybook-dist/assets/RBProgramIcons.stories-B8ZjEtvw.js +3 -0
- package/cli/storybook-dist/assets/RBPrompt.stories-BFKfyYtl.js +20 -0
- package/cli/storybook-dist/assets/RBRadioBox.stories-DUz8a27t.js +1 -0
- package/cli/storybook-dist/assets/RBRadioButton.stories-DKF61xvC.js +11 -0
- package/cli/storybook-dist/assets/RBRangeDateInput.stories-GhMVDyMr.js +15 -0
- package/cli/storybook-dist/assets/RBResizable.stories-V0iisR-x.js +20 -0
- package/cli/storybook-dist/assets/RBSelectBox.stories-DhvooAcg.js +6 -0
- package/cli/storybook-dist/assets/RBSheet.stories-C93Hpmvn.js +39 -0
- package/cli/storybook-dist/assets/RBSideNumberInput.stories-Y547mUsB.js +5 -0
- package/cli/storybook-dist/assets/RBSlider.stories-BJZyHiLO.js +5 -0
- package/cli/storybook-dist/assets/RBSpinner.stories-6wkbu-bU.js +14 -0
- package/cli/storybook-dist/assets/RBSwitch.stories-T9InolEP.js +65 -0
- package/cli/storybook-dist/assets/RBTab.stories-CjGzZODx.js +1 -0
- package/cli/storybook-dist/assets/RBTable.stories-CaolKsVG.js +62 -0
- package/cli/storybook-dist/assets/RBTableRow.stories-D13urGfs.js +11 -0
- package/cli/storybook-dist/assets/RBTabs.stories-Cv2iIxvP.js +21 -0
- package/cli/storybook-dist/assets/RBTextArea.stories-CmrPeit2.js +5 -0
- package/cli/storybook-dist/assets/RBTextField.stories-ByW-EKCD.js +45 -0
- package/cli/storybook-dist/assets/RBTextInput.stories-DSPlr3uh.js +5 -0
- package/cli/storybook-dist/assets/RBToast.stories-DJNZ9tku.js +11 -0
- package/cli/storybook-dist/assets/RBToggle.stories-BDQW2WO1.js +12 -0
- package/cli/storybook-dist/assets/RBToggleGroup.stories-CjwH6YbI.js +17 -0
- package/cli/storybook-dist/assets/RBTooltip.stories-Cp1oL68L.js +9 -0
- package/cli/storybook-dist/assets/RainbowUiProvider-BYlbsa69.css +1 -0
- package/cli/storybook-dist/assets/RainbowUiProvider-B_piZBLb.js +31 -0
- package/cli/storybook-dist/assets/browserUtils-DeopUpDy.js +1 -0
- package/cli/storybook-dist/assets/chunk-XP5HYGXS-BHXC9YeQ.js +1 -0
- package/cli/storybook-dist/assets/client-DTf7SId2.js +1 -0
- package/cli/storybook-dist/assets/createConveyorBeltLayer-769P8deX.js +6257 -0
- package/cli/storybook-dist/assets/createConveyorBeltLayer-Ds5AOper.css +21 -0
- package/cli/storybook-dist/assets/entry-preview-CNdFC92L.js +2 -0
- package/cli/storybook-dist/assets/entry-preview-docs-b8bpVBXy.js +46 -0
- package/cli/storybook-dist/assets/iframe-CLUgOMp4.js +211 -0
- package/cli/storybook-dist/assets/index-B4FGfHer.js +1 -0
- package/cli/storybook-dist/assets/index-BRq5TIsn.js +24 -0
- package/cli/storybook-dist/assets/index-C1OzuK6-.js +240 -0
- package/cli/storybook-dist/assets/index-CT3U1fyk.js +1 -0
- package/cli/storybook-dist/assets/index-ChsGqxH_.js +9 -0
- package/cli/storybook-dist/assets/index-DKFBREX_.js +1 -0
- package/cli/storybook-dist/assets/index-DgH-xKnr.js +11 -0
- package/cli/storybook-dist/assets/index-Dmy2JGbm.js +1 -0
- package/cli/storybook-dist/assets/index-DrFu-skq.js +6 -0
- package/cli/storybook-dist/assets/index-mT46TdHs.js +575 -0
- package/cli/storybook-dist/assets/jsx-runtime-BTJTZTIL.js +9 -0
- package/cli/storybook-dist/assets/keymapTileIndex.worker-BsNYNbqs.js +1 -0
- package/cli/storybook-dist/assets/preview-B8lJiyuQ.js +34 -0
- package/cli/storybook-dist/assets/preview-BBWR9nbA.js +1 -0
- package/cli/storybook-dist/assets/preview-BWzBA1C2.js +396 -0
- package/cli/storybook-dist/assets/preview-CILRoSnB.js +1 -0
- package/cli/storybook-dist/assets/preview-CVgpLj3b.js +1 -0
- package/cli/storybook-dist/assets/preview-Com4scch.css +1 -0
- package/cli/storybook-dist/assets/preview-CvbIS5ZJ.js +1 -0
- package/cli/storybook-dist/assets/preview-CvycU0Br.js +2 -0
- package/cli/storybook-dist/assets/preview-CzhIqee1.js +3 -0
- package/cli/storybook-dist/assets/preview-DD_OYowb.js +1 -0
- package/cli/storybook-dist/assets/preview-DGUiP6tS.js +7 -0
- package/cli/storybook-dist/assets/preview-DHQbi4pV.js +1 -0
- package/cli/storybook-dist/assets/react-18-hB3smqWJ.js +1 -0
- package/cli/storybook-dist/assets/react-resizable-panels.browser-CvAJUcrm.js +72 -0
- package/cli/storybook-dist/assets/test-utils-BQudk2xt.js +9 -0
- package/cli/storybook-dist/favicon.svg +1 -0
- package/cli/storybook-dist/iframe.html +666 -0
- package/cli/storybook-dist/index.html +190 -0
- package/cli/storybook-dist/index.json +1 -0
- package/cli/storybook-dist/nunito-sans-bold-italic.woff2 +0 -0
- package/cli/storybook-dist/nunito-sans-bold.woff2 +0 -0
- package/cli/storybook-dist/nunito-sans-italic.woff2 +0 -0
- package/cli/storybook-dist/nunito-sans-regular.woff2 +0 -0
- package/cli/storybook-dist/project.json +1 -0
- package/cli/storybook-dist/sb-addons/chromatic-com-storybook-10/manager-bundle.js +331 -0
- package/cli/storybook-dist/sb-addons/chromatic-com-storybook-10/manager-bundle.js.LEGAL.txt +51 -0
- package/cli/storybook-dist/sb-addons/essentials-actions-3/manager-bundle.js +3 -0
- package/cli/storybook-dist/sb-addons/essentials-backgrounds-5/manager-bundle.js +12 -0
- package/cli/storybook-dist/sb-addons/essentials-controls-2/manager-bundle.js +405 -0
- package/cli/storybook-dist/sb-addons/essentials-docs-4/manager-bundle.js +245 -0
- package/cli/storybook-dist/sb-addons/essentials-measure-8/manager-bundle.js +3 -0
- package/cli/storybook-dist/sb-addons/essentials-outline-9/manager-bundle.js +3 -0
- package/cli/storybook-dist/sb-addons/essentials-toolbars-7/manager-bundle.js +3 -0
- package/cli/storybook-dist/sb-addons/essentials-viewport-6/manager-bundle.js +3 -0
- package/cli/storybook-dist/sb-addons/links-1/manager-bundle.js +3 -0
- package/cli/storybook-dist/sb-addons/storybook-13/manager-bundle.js +3 -0
- package/cli/storybook-dist/sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js +3 -0
- package/cli/storybook-dist/sb-addons/storybook-experimental-addon-test-12/manager-bundle.js +223 -0
- package/cli/storybook-dist/sb-addons/themes-11/manager-bundle.js +3 -0
- package/cli/storybook-dist/sb-common-assets/favicon.svg +1 -0
- package/cli/storybook-dist/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
- package/cli/storybook-dist/sb-common-assets/nunito-sans-bold.woff2 +0 -0
- package/cli/storybook-dist/sb-common-assets/nunito-sans-italic.woff2 +0 -0
- package/cli/storybook-dist/sb-common-assets/nunito-sans-regular.woff2 +0 -0
- package/cli/storybook-dist/sb-manager/globals-module-info.js +1052 -0
- package/cli/storybook-dist/sb-manager/globals-runtime.js +41775 -0
- package/cli/storybook-dist/sb-manager/globals.js +48 -0
- package/cli/storybook-dist/sb-manager/runtime.js +12048 -0
- package/cli/templates/common/.mcp.json +8 -0
- package/cli/templates/common/README.md +644 -81
- package/cli/templates/common/assets/icon.svg +44 -2
- package/cli/templates/common/manifest.json +13 -13
- package/cli/templates/common/package.json +11 -4
- package/cli/templates/common/py/main.py +98 -0
- package/cli/templates/common/requirements.txt +4 -3
- package/cli/templates/common/tsconfig.json +1 -1
- package/cli/templates/common/ui/content.tsx +216 -0
- package/cli/templates/common/ui/style.css +6 -0
- package/cli/templates/common/vite.config.ts +6 -25
- package/cli/templates/cpp/cpp/CMakeLists.txt +14 -0
- package/cli/templates/cpp/cpp/main.cpp +26 -0
- package/cli/templates/ros2/ros2_ws/src/__PLUGIN_SLUG__/__PLUGIN_SLUG__/node.py +1 -1
- package/cli/templates/ros2-cpp/ros2_ws/src/__PLUGIN_SLUG__/CMakeLists.txt +17 -0
- package/cli/templates/ros2-cpp/ros2_ws/src/__PLUGIN_SLUG__/package.xml +11 -0
- package/cli/templates/ros2-cpp/ros2_ws/src/__PLUGIN_SLUG__/src/node.cpp +22 -0
- package/cli/vite.d.mts +25 -0
- package/cli/vite.mjs +292 -0
- package/package.json +32 -5
- package/cli/src/pack.mjs +0 -61
- package/cli/src/preview.mjs +0 -91
- package/cli/templates/common/main.py +0 -114
- package/cli/templates/common/src/content.tsx +0 -33
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { useState } from "react";
|
|
3
|
+
|
|
4
|
+
import { VStack } from "@repo/rb-components";
|
|
5
|
+
import {
|
|
6
|
+
RBIcons,
|
|
7
|
+
RBLabelButton,
|
|
8
|
+
RBDropdownMenu,
|
|
9
|
+
RBDropdownMenuCheckboxItem,
|
|
10
|
+
RBDropdownMenuContent,
|
|
11
|
+
RBDropdownMenuItem,
|
|
12
|
+
RBDropdownMenuLabel,
|
|
13
|
+
RBDropdownMenuSeparator,
|
|
14
|
+
RBDropdownMenuShortcut,
|
|
15
|
+
RBDropdownMenuSub,
|
|
16
|
+
RBDropdownMenuSubContent,
|
|
17
|
+
RBDropdownMenuSubTrigger,
|
|
18
|
+
RBDropdownMenuTrigger,
|
|
19
|
+
} from "@repo/rb-components/new_components";
|
|
20
|
+
|
|
21
|
+
const meta = {
|
|
22
|
+
tags: ["autodocs"],
|
|
23
|
+
component: RBDropdownMenu,
|
|
24
|
+
} satisfies Meta<typeof RBDropdownMenu>;
|
|
25
|
+
|
|
26
|
+
export default meta;
|
|
27
|
+
type Story = StoryObj<typeof meta>;
|
|
28
|
+
|
|
29
|
+
export const Playground: Story = {
|
|
30
|
+
render: () => {
|
|
31
|
+
const [bookmarked, setBookmarked] = useState(true);
|
|
32
|
+
const [notifications, setNotifications] = useState(false);
|
|
33
|
+
|
|
34
|
+
return (
|
|
35
|
+
<VStack className="bg-alt-1 min-h-[420px] items-center justify-center rounded-2xl p-8">
|
|
36
|
+
<RBDropdownMenu>
|
|
37
|
+
<RBDropdownMenuTrigger asChild>
|
|
38
|
+
<RBLabelButton size="sm" variant="outlined">
|
|
39
|
+
Open
|
|
40
|
+
</RBLabelButton>
|
|
41
|
+
</RBDropdownMenuTrigger>
|
|
42
|
+
<RBDropdownMenuContent className="w-40" sideOffset={8}>
|
|
43
|
+
<RBDropdownMenuLabel>My Account</RBDropdownMenuLabel>
|
|
44
|
+
<RBDropdownMenuSeparator />
|
|
45
|
+
|
|
46
|
+
<RBDropdownMenuCheckboxItem
|
|
47
|
+
checked={bookmarked}
|
|
48
|
+
onCheckedChange={(next) => setBookmarked(next === true)}
|
|
49
|
+
>
|
|
50
|
+
<span className="flex-1 truncate">Bookmarked</span>
|
|
51
|
+
<RBDropdownMenuShortcut>⌘B</RBDropdownMenuShortcut>
|
|
52
|
+
</RBDropdownMenuCheckboxItem>
|
|
53
|
+
<RBDropdownMenuCheckboxItem
|
|
54
|
+
checked={notifications}
|
|
55
|
+
onCheckedChange={(next) => setNotifications(next === true)}
|
|
56
|
+
>
|
|
57
|
+
<span className="flex-1 truncate">Notifications</span>
|
|
58
|
+
<RBDropdownMenuShortcut>⌘N</RBDropdownMenuShortcut>
|
|
59
|
+
</RBDropdownMenuCheckboxItem>
|
|
60
|
+
|
|
61
|
+
<RBDropdownMenuSeparator />
|
|
62
|
+
|
|
63
|
+
<RBDropdownMenuItem>
|
|
64
|
+
<RBIcons.SvgFolderOpenRegular className="size-4" />
|
|
65
|
+
<span className="flex-1 truncate">Profile</span>
|
|
66
|
+
<RBDropdownMenuShortcut>⇧⌘P</RBDropdownMenuShortcut>
|
|
67
|
+
</RBDropdownMenuItem>
|
|
68
|
+
|
|
69
|
+
<RBDropdownMenuItem>
|
|
70
|
+
<RBIcons.SvgFolderOpenRegular className="size-4" />
|
|
71
|
+
<span className="flex-1 truncate">Billing</span>
|
|
72
|
+
<RBDropdownMenuShortcut>⌘B</RBDropdownMenuShortcut>
|
|
73
|
+
</RBDropdownMenuItem>
|
|
74
|
+
|
|
75
|
+
<RBDropdownMenuItem>
|
|
76
|
+
<RBIcons.SvgFolderOpenRegular className="size-4" />
|
|
77
|
+
<span className="flex-1 truncate">Settings</span>
|
|
78
|
+
<RBDropdownMenuShortcut>⌘S</RBDropdownMenuShortcut>
|
|
79
|
+
</RBDropdownMenuItem>
|
|
80
|
+
|
|
81
|
+
<RBDropdownMenuSeparator />
|
|
82
|
+
|
|
83
|
+
<RBDropdownMenuItem>
|
|
84
|
+
<span className="flex-1 truncate">Team</span>
|
|
85
|
+
</RBDropdownMenuItem>
|
|
86
|
+
|
|
87
|
+
<RBDropdownMenuSub>
|
|
88
|
+
<RBDropdownMenuSubTrigger>
|
|
89
|
+
<span className="flex-1 truncate">Invite users</span>
|
|
90
|
+
</RBDropdownMenuSubTrigger>
|
|
91
|
+
<RBDropdownMenuSubContent className="w-56">
|
|
92
|
+
<RBDropdownMenuItem>Email</RBDropdownMenuItem>
|
|
93
|
+
<RBDropdownMenuItem>Message</RBDropdownMenuItem>
|
|
94
|
+
<RBDropdownMenuSub>
|
|
95
|
+
<RBDropdownMenuSubTrigger>
|
|
96
|
+
<span className="flex-1 truncate">More options</span>
|
|
97
|
+
</RBDropdownMenuSubTrigger>
|
|
98
|
+
</RBDropdownMenuSub>
|
|
99
|
+
</RBDropdownMenuSubContent>
|
|
100
|
+
</RBDropdownMenuSub>
|
|
101
|
+
|
|
102
|
+
<RBDropdownMenuItem>
|
|
103
|
+
<span className="flex-1 truncate">New Team</span>
|
|
104
|
+
<RBDropdownMenuShortcut>⌘+T</RBDropdownMenuShortcut>
|
|
105
|
+
</RBDropdownMenuItem>
|
|
106
|
+
|
|
107
|
+
<RBDropdownMenuItem disabled>
|
|
108
|
+
<span className="flex-1 truncate">API</span>
|
|
109
|
+
</RBDropdownMenuItem>
|
|
110
|
+
|
|
111
|
+
<RBDropdownMenuSeparator />
|
|
112
|
+
|
|
113
|
+
<RBDropdownMenuItem variant="destructive">
|
|
114
|
+
<RBIcons.SvgFolderOpenRegular className="size-4" />
|
|
115
|
+
<span className="flex-1 truncate">Log out</span>
|
|
116
|
+
<RBDropdownMenuShortcut>⌘Q</RBDropdownMenuShortcut>
|
|
117
|
+
</RBDropdownMenuItem>
|
|
118
|
+
</RBDropdownMenuContent>
|
|
119
|
+
</RBDropdownMenu>
|
|
120
|
+
</VStack>
|
|
121
|
+
);
|
|
122
|
+
},
|
|
123
|
+
};
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { useState } from "react";
|
|
3
|
+
|
|
4
|
+
import { VStack } from "@repo/rb-components";
|
|
5
|
+
import {
|
|
6
|
+
RBMenubar,
|
|
7
|
+
RBMenubarCheckboxItem,
|
|
8
|
+
RBMenubarContent,
|
|
9
|
+
RBMenubarItem,
|
|
10
|
+
RBMenubarMenu,
|
|
11
|
+
RBMenubarSeparator,
|
|
12
|
+
RBMenubarShortcut,
|
|
13
|
+
RBMenubarSub,
|
|
14
|
+
RBMenubarSubContent,
|
|
15
|
+
RBMenubarSubTrigger,
|
|
16
|
+
RBMenubarTrigger,
|
|
17
|
+
} from "@repo/rb-components/new_components";
|
|
18
|
+
|
|
19
|
+
const meta = {
|
|
20
|
+
tags: ["autodocs"],
|
|
21
|
+
component: RBMenubar,
|
|
22
|
+
} satisfies Meta<typeof RBMenubar>;
|
|
23
|
+
|
|
24
|
+
export default meta;
|
|
25
|
+
type Story = StoryObj<typeof meta>;
|
|
26
|
+
|
|
27
|
+
const PlaygroundStory = () => {
|
|
28
|
+
const [showToolbar, setShowToolbar] = useState(true);
|
|
29
|
+
const [showStatusBar, setShowStatusBar] = useState(false);
|
|
30
|
+
|
|
31
|
+
return (
|
|
32
|
+
<VStack className="bg-alt-1 min-h-[420px] items-center justify-center rounded-2xl p-8">
|
|
33
|
+
<RBMenubar>
|
|
34
|
+
<RBMenubarMenu>
|
|
35
|
+
<RBMenubarTrigger>File</RBMenubarTrigger>
|
|
36
|
+
<RBMenubarContent>
|
|
37
|
+
<RBMenubarCheckboxItem
|
|
38
|
+
checked={showToolbar}
|
|
39
|
+
onCheckedChange={(next) => setShowToolbar(next === true)}
|
|
40
|
+
>
|
|
41
|
+
<span className="flex-1 truncate">Show Toolbar</span>
|
|
42
|
+
<RBMenubarShortcut>⌘T</RBMenubarShortcut>
|
|
43
|
+
</RBMenubarCheckboxItem>
|
|
44
|
+
|
|
45
|
+
<RBMenubarCheckboxItem
|
|
46
|
+
checked={showStatusBar}
|
|
47
|
+
onCheckedChange={(next) => setShowStatusBar(next === true)}
|
|
48
|
+
>
|
|
49
|
+
<span className="flex-1 truncate">Show Status Bar</span>
|
|
50
|
+
<RBMenubarShortcut>⌘S</RBMenubarShortcut>
|
|
51
|
+
</RBMenubarCheckboxItem>
|
|
52
|
+
|
|
53
|
+
<RBMenubarSeparator />
|
|
54
|
+
|
|
55
|
+
<RBMenubarItem>
|
|
56
|
+
<span className="flex-1 truncate">New Tab</span>
|
|
57
|
+
<RBMenubarShortcut>⌘T</RBMenubarShortcut>
|
|
58
|
+
</RBMenubarItem>
|
|
59
|
+
<RBMenubarItem>
|
|
60
|
+
<span className="flex-1 truncate">New Window</span>
|
|
61
|
+
<RBMenubarShortcut>⌘N</RBMenubarShortcut>
|
|
62
|
+
</RBMenubarItem>
|
|
63
|
+
<RBMenubarItem>
|
|
64
|
+
<span className="flex-1 truncate">New Incognito Window</span>
|
|
65
|
+
</RBMenubarItem>
|
|
66
|
+
|
|
67
|
+
<RBMenubarSeparator />
|
|
68
|
+
|
|
69
|
+
<RBMenubarSub>
|
|
70
|
+
<RBMenubarSubTrigger>
|
|
71
|
+
<span className="flex-1 truncate">Share</span>
|
|
72
|
+
</RBMenubarSubTrigger>
|
|
73
|
+
<RBMenubarSubContent>
|
|
74
|
+
<RBMenubarItem>
|
|
75
|
+
<span className="flex-1 truncate">Email link</span>
|
|
76
|
+
</RBMenubarItem>
|
|
77
|
+
<RBMenubarItem>
|
|
78
|
+
<span className="flex-1 truncate">Messages</span>
|
|
79
|
+
</RBMenubarItem>
|
|
80
|
+
<RBMenubarItem variant="destructive">
|
|
81
|
+
<span className="flex-1 truncate">Notes</span>
|
|
82
|
+
</RBMenubarItem>
|
|
83
|
+
</RBMenubarSubContent>
|
|
84
|
+
</RBMenubarSub>
|
|
85
|
+
|
|
86
|
+
<RBMenubarSeparator />
|
|
87
|
+
|
|
88
|
+
<RBMenubarItem disabled>
|
|
89
|
+
<span className="flex-1 truncate">Print</span>
|
|
90
|
+
<RBMenubarShortcut>⌘P</RBMenubarShortcut>
|
|
91
|
+
</RBMenubarItem>
|
|
92
|
+
</RBMenubarContent>
|
|
93
|
+
</RBMenubarMenu>
|
|
94
|
+
|
|
95
|
+
<RBMenubarMenu>
|
|
96
|
+
<RBMenubarTrigger>Edit</RBMenubarTrigger>
|
|
97
|
+
<RBMenubarContent>
|
|
98
|
+
<RBMenubarItem>
|
|
99
|
+
<span className="flex-1 truncate">Menubar Item Text</span>
|
|
100
|
+
<RBMenubarShortcut>⌘P</RBMenubarShortcut>
|
|
101
|
+
</RBMenubarItem>
|
|
102
|
+
<RBMenubarItem>
|
|
103
|
+
<span className="flex-1 truncate">Menubar Item Text</span>
|
|
104
|
+
<RBMenubarShortcut>⌘P</RBMenubarShortcut>
|
|
105
|
+
</RBMenubarItem>
|
|
106
|
+
</RBMenubarContent>
|
|
107
|
+
</RBMenubarMenu>
|
|
108
|
+
|
|
109
|
+
<RBMenubarMenu>
|
|
110
|
+
<RBMenubarTrigger>View</RBMenubarTrigger>
|
|
111
|
+
<RBMenubarContent>
|
|
112
|
+
<RBMenubarItem>
|
|
113
|
+
<span className="flex-1 truncate">Menubar Item Text</span>
|
|
114
|
+
<RBMenubarShortcut>⌘P</RBMenubarShortcut>
|
|
115
|
+
</RBMenubarItem>
|
|
116
|
+
</RBMenubarContent>
|
|
117
|
+
</RBMenubarMenu>
|
|
118
|
+
|
|
119
|
+
<RBMenubarMenu>
|
|
120
|
+
<RBMenubarTrigger>Profiles</RBMenubarTrigger>
|
|
121
|
+
<RBMenubarContent>
|
|
122
|
+
<RBMenubarItem variant="destructive">
|
|
123
|
+
<span className="flex-1 truncate">Menubar Item Text</span>
|
|
124
|
+
<RBMenubarShortcut>⌘P</RBMenubarShortcut>
|
|
125
|
+
</RBMenubarItem>
|
|
126
|
+
</RBMenubarContent>
|
|
127
|
+
</RBMenubarMenu>
|
|
128
|
+
</RBMenubar>
|
|
129
|
+
</VStack>
|
|
130
|
+
);
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
export const Playground: Story = {
|
|
134
|
+
render: () => <PlaygroundStory />,
|
|
135
|
+
};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type { Meta, StoryFn, StoryObj } from "@storybook/react";
|
|
2
|
+
|
|
3
|
+
import {
|
|
4
|
+
RBPopover,
|
|
5
|
+
RBPopoverContent,
|
|
6
|
+
RBPopoverPlacements,
|
|
7
|
+
RBPopoverTrigger,
|
|
8
|
+
type RBPopoverPlacement,
|
|
9
|
+
} from "@repo/rb-components/new_components";
|
|
10
|
+
|
|
11
|
+
type StoryArgs = {
|
|
12
|
+
place: RBPopoverPlacement;
|
|
13
|
+
arrow: boolean;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
type StoryComponent = StoryObj<StoryArgs>;
|
|
17
|
+
type StoryTemplate = StoryFn<StoryArgs>;
|
|
18
|
+
|
|
19
|
+
export default {
|
|
20
|
+
component: RBPopover,
|
|
21
|
+
tags: ["autodocs"],
|
|
22
|
+
args: {
|
|
23
|
+
place: "bottom-center",
|
|
24
|
+
arrow: false,
|
|
25
|
+
},
|
|
26
|
+
argTypes: {
|
|
27
|
+
place: {
|
|
28
|
+
control: "select",
|
|
29
|
+
options: RBPopoverPlacements,
|
|
30
|
+
},
|
|
31
|
+
arrow: {
|
|
32
|
+
control: "boolean",
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
} as Meta<StoryArgs>;
|
|
36
|
+
|
|
37
|
+
const Template: StoryTemplate = ({ place, arrow }: StoryArgs) => {
|
|
38
|
+
return (
|
|
39
|
+
<div className="flex items-center justify-center overflow-hidden">
|
|
40
|
+
<RBPopover>
|
|
41
|
+
<RBPopoverTrigger asChild>
|
|
42
|
+
<button className="text-fg-default border-danger border-1">
|
|
43
|
+
Open Popover
|
|
44
|
+
</button>
|
|
45
|
+
</RBPopoverTrigger>
|
|
46
|
+
|
|
47
|
+
<RBPopoverContent
|
|
48
|
+
place={place}
|
|
49
|
+
arrow={arrow}
|
|
50
|
+
className="text-fg-default py-2_5 min-h-32 min-w-64 px-3"
|
|
51
|
+
>
|
|
52
|
+
Popover Content
|
|
53
|
+
</RBPopoverContent>
|
|
54
|
+
</RBPopover>
|
|
55
|
+
</div>
|
|
56
|
+
);
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
export const Default: StoryComponent = {
|
|
60
|
+
parameters: {
|
|
61
|
+
docs: {
|
|
62
|
+
description: {
|
|
63
|
+
story: "",
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
args: {},
|
|
68
|
+
render: Template,
|
|
69
|
+
};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
|
|
3
|
+
import {
|
|
4
|
+
RBResizable,
|
|
5
|
+
RBResizableHandle,
|
|
6
|
+
RBResizablePanel,
|
|
7
|
+
} from "@repo/rb-components/new_components";
|
|
8
|
+
|
|
9
|
+
const meta = {
|
|
10
|
+
tags: ["autodocs"],
|
|
11
|
+
component: RBResizable,
|
|
12
|
+
parameters: {
|
|
13
|
+
layout: "centered",
|
|
14
|
+
},
|
|
15
|
+
argTypes: {
|
|
16
|
+
direction: {
|
|
17
|
+
control: "select",
|
|
18
|
+
options: ["horizontal", "vertical"],
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
} satisfies Meta<typeof RBResizable>;
|
|
22
|
+
|
|
23
|
+
export default meta;
|
|
24
|
+
|
|
25
|
+
type Story = StoryObj<typeof meta>;
|
|
26
|
+
|
|
27
|
+
const panelBaseClassName =
|
|
28
|
+
"flex h-full items-center justify-center text-base font-medium text-fg-default";
|
|
29
|
+
|
|
30
|
+
export const Overview: Story = {
|
|
31
|
+
args: {
|
|
32
|
+
direction: "horizontal",
|
|
33
|
+
},
|
|
34
|
+
render: ({ direction }) => (
|
|
35
|
+
<div className="relative h-[520px] w-[520px] overflow-hidden p-5">
|
|
36
|
+
<div className="flex h-full items-center justify-center">
|
|
37
|
+
<RBResizable direction={direction} className="h-[480px] w-[480px]">
|
|
38
|
+
<RBResizablePanel>
|
|
39
|
+
<div className={panelBaseClassName}>One</div>
|
|
40
|
+
</RBResizablePanel>
|
|
41
|
+
<RBResizableHandle />
|
|
42
|
+
<RBResizablePanel>
|
|
43
|
+
<div className={panelBaseClassName}>Two</div>
|
|
44
|
+
</RBResizablePanel>
|
|
45
|
+
</RBResizable>
|
|
46
|
+
</div>
|
|
47
|
+
</div>
|
|
48
|
+
),
|
|
49
|
+
};
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { VStack } from "@repo/rb-components";
|
|
3
|
+
|
|
4
|
+
import {
|
|
5
|
+
RBLabelButton,
|
|
6
|
+
RBSheet,
|
|
7
|
+
RBSheetContent,
|
|
8
|
+
RBSheetDescription,
|
|
9
|
+
RBSheetFooter,
|
|
10
|
+
RBSheetHeader,
|
|
11
|
+
RBSheetTitle,
|
|
12
|
+
RBSheetTrigger,
|
|
13
|
+
RBTextField,
|
|
14
|
+
RBTextInput,
|
|
15
|
+
} from "@repo/rb-components/new_components";
|
|
16
|
+
|
|
17
|
+
const meta = {
|
|
18
|
+
tags: ["autodocs"],
|
|
19
|
+
argTypes: {
|
|
20
|
+
showCloseButton: {
|
|
21
|
+
control: "boolean",
|
|
22
|
+
},
|
|
23
|
+
side: {
|
|
24
|
+
control: { type: "select" },
|
|
25
|
+
options: ["right", "left", "bottom", "top"],
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
args: {
|
|
29
|
+
showCloseButton: true,
|
|
30
|
+
side: "right",
|
|
31
|
+
},
|
|
32
|
+
component: RBSheetContent,
|
|
33
|
+
} satisfies Meta<typeof RBSheetContent>;
|
|
34
|
+
|
|
35
|
+
export default meta;
|
|
36
|
+
type Story = StoryObj<typeof meta>;
|
|
37
|
+
|
|
38
|
+
export const Playground: Story = {
|
|
39
|
+
render: (args) => (
|
|
40
|
+
<div>
|
|
41
|
+
<RBSheet defaultOpen>
|
|
42
|
+
<RBSheetTrigger asChild>
|
|
43
|
+
<RBLabelButton size="sm" variant="solid">
|
|
44
|
+
Open Sheet
|
|
45
|
+
</RBLabelButton>
|
|
46
|
+
</RBSheetTrigger>
|
|
47
|
+
<RBSheetContent
|
|
48
|
+
{...args}
|
|
49
|
+
className={
|
|
50
|
+
args.side === "top" || args.side === "bottom" ? "w-full" : "w-96"
|
|
51
|
+
}
|
|
52
|
+
>
|
|
53
|
+
<RBSheetHeader>
|
|
54
|
+
<RBSheetTitle>Edit profile</RBSheetTitle>
|
|
55
|
+
<RBSheetDescription>
|
|
56
|
+
Make changes to your profile here. Click save when you're
|
|
57
|
+
done.
|
|
58
|
+
</RBSheetDescription>
|
|
59
|
+
</RBSheetHeader>
|
|
60
|
+
|
|
61
|
+
<VStack className="flex-1 gap-6">
|
|
62
|
+
<RBTextField
|
|
63
|
+
label="Name"
|
|
64
|
+
required
|
|
65
|
+
className="gap-1_5 flex flex-col"
|
|
66
|
+
>
|
|
67
|
+
<RBTextInput size="sm" className="w-full" />
|
|
68
|
+
</RBTextField>
|
|
69
|
+
|
|
70
|
+
<RBTextField
|
|
71
|
+
label="Username"
|
|
72
|
+
required
|
|
73
|
+
className="flex flex-col gap-1.5"
|
|
74
|
+
>
|
|
75
|
+
<RBTextInput size="sm" className="w-full" />
|
|
76
|
+
</RBTextField>
|
|
77
|
+
</VStack>
|
|
78
|
+
|
|
79
|
+
<RBSheetFooter>
|
|
80
|
+
<RBLabelButton size="sm" variant="solid" className="w-full">
|
|
81
|
+
Save changes
|
|
82
|
+
</RBLabelButton>
|
|
83
|
+
<RBLabelButton size="sm" variant="outlined" className="w-full">
|
|
84
|
+
Cancel
|
|
85
|
+
</RBLabelButton>
|
|
86
|
+
</RBSheetFooter>
|
|
87
|
+
</RBSheetContent>
|
|
88
|
+
</RBSheet>
|
|
89
|
+
</div>
|
|
90
|
+
),
|
|
91
|
+
};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import { VStack } from "@repo/rb-components";
|
|
3
|
+
|
|
4
|
+
import { RBSlider } from "@repo/rb-components/new_components";
|
|
5
|
+
|
|
6
|
+
const meta = {
|
|
7
|
+
component: RBSlider,
|
|
8
|
+
tags: ["autodocs"],
|
|
9
|
+
argTypes: {
|
|
10
|
+
className: { control: false, table: { disable: true } },
|
|
11
|
+
trackClassName: { control: false, table: { disable: true } },
|
|
12
|
+
rangeClassName: { control: false, table: { disable: true } },
|
|
13
|
+
thumbClassName: { control: false, table: { disable: true } },
|
|
14
|
+
min: { control: { type: "number" } },
|
|
15
|
+
max: { control: { type: "number" } },
|
|
16
|
+
step: { control: { type: "number" } },
|
|
17
|
+
disabled: { control: "boolean" },
|
|
18
|
+
defaultValue: { control: { type: "object" } },
|
|
19
|
+
},
|
|
20
|
+
args: {
|
|
21
|
+
min: 0,
|
|
22
|
+
max: 100,
|
|
23
|
+
step: 1,
|
|
24
|
+
disabled: false,
|
|
25
|
+
defaultValue: [64],
|
|
26
|
+
},
|
|
27
|
+
} satisfies Meta<typeof RBSlider>;
|
|
28
|
+
|
|
29
|
+
export default meta;
|
|
30
|
+
type Story = StoryObj<typeof meta>;
|
|
31
|
+
|
|
32
|
+
export const Playground: Story = {
|
|
33
|
+
render: (args) => (
|
|
34
|
+
<VStack className="w-80 gap-4">
|
|
35
|
+
<RBSlider {...args} />
|
|
36
|
+
</VStack>
|
|
37
|
+
),
|
|
38
|
+
};
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { useEffect, useState, type ComponentProps } from "react";
|
|
2
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
3
|
+
|
|
4
|
+
import { VStack } from "@repo/rb-components";
|
|
5
|
+
import { RBSwitch, RBSwitchField } from "@repo/rb-components/new_components";
|
|
6
|
+
|
|
7
|
+
type SwitchStoryArgs = ComponentProps<typeof RBSwitch> & {
|
|
8
|
+
defaultChecked: boolean;
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
type WithTextStoryArgs = ComponentProps<typeof RBSwitchField> &
|
|
12
|
+
ComponentProps<typeof RBSwitch> & {
|
|
13
|
+
defaultChecked: boolean;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
const meta: Meta<SwitchStoryArgs> = {
|
|
17
|
+
component: RBSwitch,
|
|
18
|
+
tags: ["autodocs"],
|
|
19
|
+
argTypes: {
|
|
20
|
+
checked: { control: false, table: { disable: true } },
|
|
21
|
+
defaultChecked: { control: "boolean" },
|
|
22
|
+
size: {
|
|
23
|
+
control: { type: "select" },
|
|
24
|
+
options: ["default", "sm"],
|
|
25
|
+
},
|
|
26
|
+
invalid: { control: "boolean" },
|
|
27
|
+
disabled: { control: "boolean" },
|
|
28
|
+
},
|
|
29
|
+
args: {
|
|
30
|
+
defaultChecked: false,
|
|
31
|
+
disabled: false,
|
|
32
|
+
invalid: false,
|
|
33
|
+
size: "default",
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export default meta;
|
|
38
|
+
type Story = StoryObj<SwitchStoryArgs>;
|
|
39
|
+
type WithTextStory = StoryObj<WithTextStoryArgs>;
|
|
40
|
+
|
|
41
|
+
export const Playground: Story = {
|
|
42
|
+
render: function Render(args) {
|
|
43
|
+
const [checked, setChecked] = useState(Boolean(args.defaultChecked));
|
|
44
|
+
|
|
45
|
+
useEffect(() => {
|
|
46
|
+
setChecked(Boolean(args.defaultChecked));
|
|
47
|
+
}, [args.defaultChecked]);
|
|
48
|
+
|
|
49
|
+
return (
|
|
50
|
+
<VStack className="w-80 gap-4">
|
|
51
|
+
<RBSwitch {...args} checked={checked} onCheckedChange={setChecked} />
|
|
52
|
+
</VStack>
|
|
53
|
+
);
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
export const WithText: WithTextStory = {
|
|
58
|
+
args: {
|
|
59
|
+
controlPlacement: "start",
|
|
60
|
+
defaultChecked: false,
|
|
61
|
+
description: "This is a switch description.",
|
|
62
|
+
disabled: false,
|
|
63
|
+
invalid: false,
|
|
64
|
+
label: "Switch Text",
|
|
65
|
+
size: "default",
|
|
66
|
+
type: "default",
|
|
67
|
+
},
|
|
68
|
+
argTypes: {
|
|
69
|
+
controlPlacement: {
|
|
70
|
+
control: { type: "select" },
|
|
71
|
+
options: ["start", "end"],
|
|
72
|
+
},
|
|
73
|
+
description: { control: "text" },
|
|
74
|
+
descriptionClassName: { control: false, table: { disable: true } },
|
|
75
|
+
label: { control: "text" },
|
|
76
|
+
labelClassName: { control: false, table: { disable: true } },
|
|
77
|
+
type: {
|
|
78
|
+
control: { type: "select" },
|
|
79
|
+
options: ["default", "box"],
|
|
80
|
+
},
|
|
81
|
+
},
|
|
82
|
+
render: function Render(args) {
|
|
83
|
+
const [checked, setChecked] = useState(Boolean(args.defaultChecked));
|
|
84
|
+
|
|
85
|
+
useEffect(() => {
|
|
86
|
+
setChecked(Boolean(args.defaultChecked));
|
|
87
|
+
}, [args.defaultChecked]);
|
|
88
|
+
|
|
89
|
+
return (
|
|
90
|
+
<VStack className="w-80 gap-4">
|
|
91
|
+
<RBSwitchField
|
|
92
|
+
controlPlacement={args.controlPlacement}
|
|
93
|
+
description={args.description}
|
|
94
|
+
descriptionClassName={args.descriptionClassName}
|
|
95
|
+
invalid={args.invalid}
|
|
96
|
+
label={args.label}
|
|
97
|
+
labelClassName={args.labelClassName}
|
|
98
|
+
size={args.size}
|
|
99
|
+
type={args.type}
|
|
100
|
+
>
|
|
101
|
+
<RBSwitch
|
|
102
|
+
checked={checked}
|
|
103
|
+
disabled={args.disabled}
|
|
104
|
+
invalid={args.invalid}
|
|
105
|
+
size={args.size}
|
|
106
|
+
onCheckedChange={setChecked}
|
|
107
|
+
/>
|
|
108
|
+
</RBSwitchField>
|
|
109
|
+
</VStack>
|
|
110
|
+
);
|
|
111
|
+
},
|
|
112
|
+
};
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
|
|
3
|
+
import {
|
|
4
|
+
RBTabs,
|
|
5
|
+
RBTabsList,
|
|
6
|
+
RBTabsTrigger,
|
|
7
|
+
} from "@repo/rb-components/new_components";
|
|
8
|
+
|
|
9
|
+
const meta = {
|
|
10
|
+
tags: ["autodocs"],
|
|
11
|
+
component: RBTabs,
|
|
12
|
+
parameters: {
|
|
13
|
+
layout: "centered",
|
|
14
|
+
},
|
|
15
|
+
argTypes: {
|
|
16
|
+
size: {
|
|
17
|
+
control: "select",
|
|
18
|
+
options: ["sm", "xs"],
|
|
19
|
+
table: {
|
|
20
|
+
type: {
|
|
21
|
+
summary: '"sm" | "xs"',
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
variant: {
|
|
26
|
+
control: "select",
|
|
27
|
+
options: ["default", "line"],
|
|
28
|
+
table: {
|
|
29
|
+
type: {
|
|
30
|
+
summary: '"default" | "line"',
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
orientation: {
|
|
35
|
+
control: "select",
|
|
36
|
+
options: ["horizontal", "vertical"],
|
|
37
|
+
description: "line variant 는 horizontal orientation 만 지원",
|
|
38
|
+
table: {
|
|
39
|
+
type: {
|
|
40
|
+
summary: '"horizontal" | "vertical"',
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
} satisfies Meta<typeof RBTabs>;
|
|
46
|
+
|
|
47
|
+
export default meta;
|
|
48
|
+
|
|
49
|
+
type Story = StoryObj<typeof meta>;
|
|
50
|
+
|
|
51
|
+
export const Playground: Story = {
|
|
52
|
+
args: {
|
|
53
|
+
size: "sm",
|
|
54
|
+
variant: "default",
|
|
55
|
+
orientation: "horizontal",
|
|
56
|
+
},
|
|
57
|
+
render: ({ orientation, size, variant }) => {
|
|
58
|
+
const resolvedOrientation = variant === "line" ? "horizontal" : orientation;
|
|
59
|
+
|
|
60
|
+
return (
|
|
61
|
+
<RBTabs
|
|
62
|
+
defaultValue="tab-1"
|
|
63
|
+
variant={variant}
|
|
64
|
+
size={size}
|
|
65
|
+
orientation={resolvedOrientation}
|
|
66
|
+
>
|
|
67
|
+
<RBTabsList>
|
|
68
|
+
<RBTabsTrigger value="tab-1">Tabs Text</RBTabsTrigger>
|
|
69
|
+
<RBTabsTrigger value="tab-2">Tabs Text</RBTabsTrigger>
|
|
70
|
+
<RBTabsTrigger value="tab-3">Tabs Text</RBTabsTrigger>
|
|
71
|
+
</RBTabsList>
|
|
72
|
+
</RBTabs>
|
|
73
|
+
);
|
|
74
|
+
},
|
|
75
|
+
};
|