goobs-frontend 0.9.35 → 0.122.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 +136 -335
- package/package.json +36 -26
- package/src/components/Accordion/accordion.stories.tsx +1150 -239
- package/src/components/Accordion/index.tsx +350 -610
- package/src/components/Alert/alert.stories.tsx +238 -0
- package/src/components/Alert/index.tsx +143 -0
- package/src/components/AppBar/index.tsx +285 -0
- package/src/components/Avatar/index.tsx +48 -0
- package/src/components/Badge/badge.stories.tsx +1020 -0
- package/src/components/Badge/index.tsx +23 -0
- package/src/components/Breadcrumb/breadcrumb.stories.tsx +83 -0
- package/src/components/Breadcrumb/index.tsx +220 -0
- package/src/components/Button/button.stories.tsx +331 -108
- package/src/components/Button/index.tsx +290 -367
- package/src/components/Card/index.tsx +316 -322
- package/src/components/Checkbox/checkbox.stories.tsx +71 -93
- package/src/components/Checkbox/index.tsx +256 -237
- package/src/components/Chip/chip.stories.tsx +180 -0
- package/src/components/Chip/index.tsx +105 -0
- package/src/components/CodeCopy/codecopy.stories.tsx +217 -124
- package/src/components/CodeCopy/index.tsx +232 -345
- package/src/components/ComplexTextEditor/MarkdownEditor/index.tsx +113 -130
- package/src/components/ComplexTextEditor/RichEditor/index.tsx +134 -327
- package/src/components/ComplexTextEditor/SimpleEditor/index.tsx +152 -141
- package/src/components/ComplexTextEditor/Toolbars/Complex/index.tsx +56 -175
- package/src/components/ComplexTextEditor/Toolbars/Editor/index.tsx +385 -425
- package/src/components/ComplexTextEditor/editor.stories.tsx +692 -198
- package/src/components/ComplexTextEditor/index.tsx +184 -237
- package/src/components/ComplexTextEditor/theme.ts +410 -0
- package/src/components/ComplexTextEditor/utils/conversion.ts +83 -0
- package/src/components/ComplexTextEditor/utils/useMarkdownEditor.tsx +23 -8
- package/src/components/ConfirmationCodeInput/codeinput.stories.tsx +306 -562
- package/src/components/ConfirmationCodeInput/index.tsx +279 -531
- package/src/components/Container/index.tsx +48 -0
- package/src/components/Content/Structure/CVV/useCVV.tsx +13 -25
- package/src/components/Content/Structure/CreditCardNumber/useCreditCardNumber.tsx +13 -25
- package/src/components/Content/Structure/DateRange/useDateRange.tsx +5 -8
- package/src/components/Content/Structure/USD/useUSD.tsx +18 -30
- package/src/components/Content/Structure/animations.tsx +78 -57
- package/src/components/Content/Structure/button/useButton.tsx +3 -3
- package/src/components/Content/Structure/checkbox/useCheckbox.tsx +3 -9
- package/src/components/Content/Structure/datefield/useDateField.tsx +9 -19
- package/src/components/Content/Structure/externalIncremementNumberField/useIncremementNumberField.tsx +30 -0
- package/src/components/Content/Structure/link/useLink.tsx +9 -4
- package/src/components/Content/Structure/phoneNumber/usePhoneNumber.tsx +5 -4
- package/src/components/Content/Structure/searchableDropdown/useSearchableDropdown.tsx +6 -6
- package/src/components/Content/Structure/searchableHistory/useSearchableHistory.tsx +33 -0
- package/src/components/Content/Structure/stepper/useStepper.tsx +4 -4
- package/src/components/Content/Structure/typography/useTypography.tsx +3 -13
- package/src/components/Content/index.tsx +28 -31
- package/src/components/DataGrid/FilterSection/index.tsx +338 -180
- package/src/components/DataGrid/Footer/index.tsx +376 -216
- package/src/components/DataGrid/ManageColumnsSimple/index.tsx +152 -0
- package/src/components/DataGrid/ManageRow/index.tsx +301 -319
- package/src/components/DataGrid/MetricCard/index.tsx +384 -328
- package/src/components/DataGrid/MetricSection/index.tsx +104 -39
- package/src/components/DataGrid/Table/ColumnHeaderRow/index.tsx +349 -228
- package/src/components/DataGrid/Table/CreationRow/index.tsx +452 -0
- package/src/components/DataGrid/Table/Rows/index.tsx +516 -932
- package/src/components/DataGrid/Table/index.tsx +194 -182
- package/src/components/DataGrid/VerticalDivider/index.tsx +21 -13
- package/src/components/DataGrid/datagrid.stories.tsx +1511 -387
- package/src/components/DataGrid/index.tsx +571 -348
- package/src/components/DataGrid/types/index.ts +120 -9
- package/src/components/DataGrid/utils/useColumnResize.tsx +137 -0
- package/src/components/DataGrid/utils/useComputeTableResize.tsx +11 -5
- package/src/components/DataGrid/utils/useIsMobile.tsx +16 -0
- package/src/components/DataGrid/utils/useToolbarSearchbar.tsx +0 -5
- package/src/components/Dialog/dialog.stories.tsx +1196 -0
- package/src/components/Dialog/index.tsx +120 -0
- package/src/components/Divider/index.tsx +56 -0
- package/src/components/Drawer/index.tsx +350 -0
- package/src/components/Fade/index.tsx +48 -0
- package/src/components/Field/Date/DateField/DateField.stories.tsx +171 -0
- package/src/components/Field/Date/DateField/index.tsx +563 -714
- package/src/components/Field/Date/DateRange/DateRange.stories.tsx +606 -0
- package/src/components/Field/Date/DateRange/index.tsx +666 -812
- package/src/components/Field/Dropdown/MultiSelect/index.tsx +245 -512
- package/src/components/Field/Dropdown/MultiSelect/multiselect.stories.tsx +480 -96
- package/src/components/Field/Dropdown/Regular/dropdown.stories.tsx +614 -210
- package/src/components/Field/Dropdown/Regular/index.tsx +336 -489
- package/src/components/Field/Dropdown/SearchableHistory/index.tsx +443 -0
- package/src/components/Field/Dropdown/SearchableHistory/searchablehistory.stories.tsx +894 -0
- package/src/components/Field/Dropdown/SearchableSimple/index.tsx +212 -0
- package/src/components/Field/Dropdown/SearchableSimple/searchablesimple.stories.tsx +680 -0
- package/src/components/Field/IPAM/Address/Address.stories.tsx +265 -102
- package/src/components/Field/IPAM/Address/index.tsx +353 -846
- package/src/components/Field/IPAM/CIDR/CIDR.stories.tsx +254 -154
- package/src/components/Field/IPAM/CIDR/index.tsx +231 -144
- package/src/components/Field/IPAM/MACAddress/Address.stories.tsx +268 -33
- package/src/components/Field/IPAM/MACAddress/index.tsx +118 -44
- package/src/components/Field/IPAM/Subnet/Subnet.stories.tsx +259 -101
- package/src/components/Field/IPAM/Subnet/index.tsx +276 -312
- package/src/components/Field/IPAM/Supernet/Supernet.stories.tsx +273 -111
- package/src/components/Field/IPAM/Supernet/index.tsx +4 -0
- package/src/components/Field/IPAM/VLAN/VLAN.stories.tsx +283 -93
- package/src/components/Field/IPAM/VLAN/index.tsx +7 -1
- package/src/components/Field/Number/AccountNumber/AccountNumber.stories.tsx +313 -0
- package/src/components/Field/Number/AccountNumber/index.tsx +137 -151
- package/src/components/Field/Number/CVV/CVV.stories.tsx +320 -0
- package/src/components/Field/Number/CVV/index.tsx +147 -164
- package/src/components/Field/Number/CreditCardNumber/CreditCardNumber.stories.tsx +358 -0
- package/src/components/Field/Number/CreditCardNumber/index.tsx +157 -240
- package/src/components/Field/Number/ExternalIncrement/ExternalIncrement.stories.tsx +188 -0
- package/src/components/Field/Number/ExternalIncrement/index.tsx +143 -88
- package/src/components/Field/Number/InternalIncrement/InternalIncrement.stories.tsx +326 -0
- package/src/components/Field/Number/InternalIncrement/index.tsx +225 -240
- package/src/components/Field/Number/RoutingNumber/RoutingNumber.stories.tsx +349 -0
- package/src/components/Field/Number/RoutingNumber/index.tsx +155 -182
- package/src/components/Field/Password/index.tsx +149 -176
- package/src/components/Field/Password/passwordfield.stories.tsx +601 -88
- package/src/components/Field/Percentage/index.tsx +256 -237
- package/src/components/Field/Percentage/percentagefield.stories.tsx +579 -141
- package/src/components/Field/PhoneNumber/index.tsx +172 -140
- package/src/components/Field/PhoneNumber/phonenumberfield.stories.tsx +575 -103
- package/src/components/Field/Search/index.tsx +170 -248
- package/src/components/Field/Search/searchbar.stories.tsx +616 -114
- package/src/components/Field/Slider/index.tsx +76 -0
- package/src/components/Field/Text/index.tsx +201 -301
- package/src/components/Field/Text/textfield.stories.tsx +915 -176
- package/src/components/Field/Time/TimeRange/TimeRange.stories.tsx +369 -0
- package/src/components/Field/Time/TimeRange/index.tsx +609 -1269
- package/src/components/Field/USD/index.tsx +262 -290
- package/src/components/Field/USD/usd.stories.tsx +453 -144
- package/src/components/Form/DataGrid/index.tsx +187 -493
- package/src/components/Form/Dialog/index.tsx +140 -296
- package/src/components/Form/Popup/index.tsx +256 -476
- package/src/components/Form/ProjectBoard/index.tsx +260 -349
- package/src/components/FormControl/index.tsx +95 -0
- package/src/components/FormControlLabel/index.tsx +168 -0
- package/src/components/Grid/Grid.tsx +118 -0
- package/src/components/Grid/index.ts +2 -0
- package/src/components/IconButton/index.tsx +85 -0
- package/src/components/Icons/AccessTime.tsx +67 -0
- package/src/components/Icons/AccountBalance.tsx +67 -0
- package/src/components/Icons/AccountBalanceWallet.tsx +67 -0
- package/src/components/Icons/AccountTree.tsx +67 -0
- package/src/components/Icons/Add.tsx +63 -0
- package/src/components/Icons/AddCircle.tsx +67 -0
- package/src/components/Icons/AddCircleOutline.tsx +67 -0
- package/src/components/Icons/AddPhotoAlternate.tsx +72 -0
- package/src/components/Icons/AddShoppingCart.tsx +67 -0
- package/src/components/Icons/AddTask.tsx +67 -0
- package/src/components/Icons/AdminPanelSettings.tsx +67 -0
- package/src/components/Icons/AllIcons.stories.tsx +778 -0
- package/src/components/Icons/Analytics.tsx +67 -0
- package/src/components/Icons/Animation.tsx +60 -0
- package/src/components/Icons/Apartment.tsx +67 -0
- package/src/components/Icons/Apple.tsx +60 -0
- package/src/components/Icons/ArrowBack.tsx +67 -0
- package/src/components/Icons/ArrowDropDown.tsx +67 -0
- package/src/components/Icons/ArrowDropDownCircle.tsx +67 -0
- package/src/components/Icons/ArrowDropUp.tsx +67 -0
- package/src/components/Icons/ArrowForward.tsx +67 -0
- package/src/components/Icons/Article.tsx +67 -0
- package/src/components/Icons/Assessment.tsx +67 -0
- package/src/components/Icons/Assignment.tsx +67 -0
- package/src/components/Icons/AttachFile.tsx +60 -0
- package/src/components/Icons/AttachMoney.tsx +60 -0
- package/src/components/Icons/Attachment.tsx +60 -0
- package/src/components/Icons/AutoAwesome.tsx +60 -0
- package/src/components/Icons/AutoGraph.tsx +67 -0
- package/src/components/Icons/Autorenew.tsx +67 -0
- package/src/components/Icons/Bank.tsx +60 -0
- package/src/components/Icons/BarChart.tsx +60 -0
- package/src/components/Icons/Block.tsx +60 -0
- package/src/components/Icons/BugReport.tsx +60 -0
- package/src/components/Icons/Build.tsx +67 -0
- package/src/components/Icons/Business.tsx +67 -0
- package/src/components/Icons/BusinessCenter.tsx +67 -0
- package/src/components/Icons/Calculate.tsx +67 -0
- package/src/components/Icons/Calendar.tsx +56 -28
- package/src/components/Icons/CalendarMonth.tsx +67 -0
- package/src/components/Icons/CalendarToday.tsx +67 -0
- package/src/components/Icons/Campaign.tsx +67 -0
- package/src/components/Icons/Cancel.tsx +67 -0
- package/src/components/Icons/CardGiftcard.tsx +67 -0
- package/src/components/Icons/CardMembership.tsx +67 -0
- package/src/components/Icons/Category.tsx +70 -0
- package/src/components/Icons/Chat.tsx +67 -0
- package/src/components/Icons/Check.tsx +67 -0
- package/src/components/Icons/CheckBoxIcon.tsx +67 -0
- package/src/components/Icons/CheckCircle.tsx +67 -0
- package/src/components/Icons/CheckCircleOutline.tsx +67 -0
- package/src/components/Icons/ChevronLeft.tsx +67 -0
- package/src/components/Icons/ChevronRight.tsx +67 -0
- package/src/components/Icons/CircleOutline.tsx +67 -0
- package/src/components/Icons/Clear.tsx +67 -0
- package/src/components/Icons/Close.tsx +67 -0
- package/src/components/Icons/CloudSync.tsx +67 -0
- package/src/components/Icons/CloudUpload.tsx +67 -0
- package/src/components/Icons/Code.tsx +67 -0
- package/src/components/Icons/CompareArrows.tsx +67 -0
- package/src/components/Icons/Construction.tsx +67 -0
- package/src/components/Icons/Contacts.tsx +67 -0
- package/src/components/Icons/ContentCopy.tsx +67 -0
- package/src/components/Icons/ContractIcon.tsx +67 -0
- package/src/components/Icons/Create.tsx +67 -0
- package/src/components/Icons/CreateNewFolder.tsx +67 -0
- package/src/components/Icons/CreditCard.tsx +67 -0
- package/src/components/Icons/CreditCardOff.tsx +67 -0
- package/src/components/Icons/CurrencyExchange.tsx +67 -0
- package/src/components/Icons/Dashboard.tsx +67 -0
- package/src/components/Icons/DateRange.tsx +67 -0
- package/src/components/Icons/Delete.tsx +67 -0
- package/src/components/Icons/Description.tsx +67 -0
- package/src/components/Icons/DesktopWindows.tsx +67 -0
- package/src/components/Icons/DeviceHub.tsx +67 -0
- package/src/components/Icons/Devices.tsx +67 -0
- package/src/components/Icons/Dns.tsx +63 -0
- package/src/components/Icons/Domain.tsx +67 -0
- package/src/components/Icons/Download.tsx +67 -0
- package/src/components/Icons/Drag.tsx +60 -19
- package/src/components/Icons/DragIndicator.tsx +67 -0
- package/src/components/Icons/DuplicateIcon.tsx +67 -0
- package/src/components/Icons/Edit.tsx +67 -0
- package/src/components/Icons/Email.tsx +67 -0
- package/src/components/Icons/EmojiEvents.tsx +67 -0
- package/src/components/Icons/Engineering.tsx +75 -0
- package/src/components/Icons/Error.tsx +67 -0
- package/src/components/Icons/ErrorOutline.tsx +67 -0
- package/src/components/Icons/Event.tsx +67 -0
- package/src/components/Icons/EventAvailable.tsx +67 -0
- package/src/components/Icons/EventBusy.tsx +67 -0
- package/src/components/Icons/ExpandLess.tsx +67 -0
- package/src/components/Icons/ExpandMore.tsx +67 -0
- package/src/components/Icons/Extension.tsx +67 -0
- package/src/components/Icons/Favorite.tsx +67 -0
- package/src/components/Icons/FavoriteBorder.tsx +67 -0
- package/src/components/Icons/FavoriteBorderIcon.tsx +67 -0
- package/src/components/Icons/FavoriteIcon.tsx +50 -56
- package/src/components/Icons/Feedback.tsx +67 -0
- package/src/components/Icons/FileCopy.tsx +67 -0
- package/src/components/Icons/Filing.tsx +67 -0
- package/src/components/Icons/FilterList.tsx +67 -0
- package/src/components/Icons/Fingerprint.tsx +67 -0
- package/src/components/Icons/FirstPage.tsx +67 -0
- package/src/components/Icons/FormatAlignCenter.tsx +67 -0
- package/src/components/Icons/FormatAlignLeft.tsx +67 -0
- package/src/components/Icons/FormatAlignRight.tsx +67 -0
- package/src/components/Icons/FormatBold.tsx +67 -0
- package/src/components/Icons/FormatItalic.tsx +67 -0
- package/src/components/Icons/FormatListBulleted.tsx +72 -0
- package/src/components/Icons/FormatListNumbered.tsx +85 -0
- package/src/components/Icons/FormatUnderlined.tsx +67 -0
- package/src/components/Icons/Gavel.tsx +67 -0
- package/src/components/Icons/Gesture.tsx +67 -0
- package/src/components/Icons/Google.tsx +67 -0
- package/src/components/Icons/GridView.tsx +67 -0
- package/src/components/Icons/GridViewIcon.tsx +67 -0
- package/src/components/Icons/Group.tsx +67 -0
- package/src/components/Icons/GroupWork.tsx +67 -0
- package/src/components/Icons/Groups.tsx +67 -0
- package/src/components/Icons/Handshake.tsx +67 -0
- package/src/components/Icons/Help.tsx +67 -0
- package/src/components/Icons/History.tsx +67 -0
- package/src/components/Icons/Home.tsx +67 -0
- package/src/components/Icons/HomeWork.tsx +67 -0
- package/src/components/Icons/HourglassEmpty.tsx +67 -0
- package/src/components/Icons/Hub.tsx +65 -0
- package/src/components/Icons/ICON_THEME_MIGRATION.md +383 -0
- package/src/components/Icons/ImageIcon.tsx +67 -0
- package/src/components/Icons/IndeterminateCheckBox.tsx +67 -0
- package/src/components/Icons/Info.tsx +76 -22
- package/src/components/Icons/InfoOutline.tsx +67 -0
- package/src/components/Icons/Insights.tsx +67 -0
- package/src/components/Icons/IntegrationInstructions.tsx +66 -0
- package/src/components/Icons/Inventory.tsx +67 -0
- package/src/components/Icons/KeyboardArrowDown.tsx +67 -0
- package/src/components/Icons/KeyboardArrowLeft.tsx +67 -0
- package/src/components/Icons/KeyboardArrowRight.tsx +67 -0
- package/src/components/Icons/KeyboardReturn.tsx +67 -0
- package/src/components/Icons/Lan.tsx +66 -0
- package/src/components/Icons/LastPage.tsx +67 -0
- package/src/components/Icons/Launch.tsx +67 -0
- package/src/components/Icons/Layers.tsx +67 -0
- package/src/components/Icons/Link.tsx +67 -0
- package/src/components/Icons/ListAlt.tsx +67 -0
- package/src/components/Icons/LocalGasStation.tsx +67 -0
- package/src/components/Icons/LocalOffer.tsx +67 -0
- package/src/components/Icons/LocalShipping.tsx +67 -0
- package/src/components/Icons/LocationCity.tsx +67 -0
- package/src/components/Icons/LocationIcon.tsx +67 -0
- package/src/components/Icons/LocationOn.tsx +66 -0
- package/src/components/Icons/LocationSearching.tsx +67 -0
- package/src/components/Icons/Lock.tsx +67 -0
- package/src/components/Icons/Login.tsx +67 -0
- package/src/components/Icons/LogoutRounded.tsx +67 -0
- package/src/components/Icons/LooksFour.tsx +67 -0
- package/src/components/Icons/LooksOne.tsx +67 -0
- package/src/components/Icons/LooksThree.tsx +67 -0
- package/src/components/Icons/LooksTwo.tsx +67 -0
- package/src/components/Icons/Loop.tsx +67 -0
- package/src/components/Icons/LowPriority.tsx +70 -0
- package/src/components/Icons/Loyalty.tsx +67 -0
- package/src/components/Icons/Map.tsx +63 -0
- package/src/components/Icons/Menu.tsx +67 -0
- package/src/components/Icons/MenuBook.tsx +60 -0
- package/src/components/Icons/MonetizationOn.tsx +60 -0
- package/src/components/Icons/Money.tsx +60 -0
- package/src/components/Icons/MoreHoriz.tsx +67 -0
- package/src/components/Icons/MoreVert.tsx +60 -0
- package/src/components/Icons/Mouse.tsx +62 -0
- package/src/components/Icons/Navigation.tsx +60 -0
- package/src/components/Icons/NetworkCheck.tsx +64 -0
- package/src/components/Icons/NotificationActive.tsx +60 -0
- package/src/components/Icons/NotificationImportant.tsx +60 -0
- package/src/components/Icons/Notifications.tsx +60 -0
- package/src/components/Icons/Outlook.tsx +60 -0
- package/src/components/Icons/Pause.tsx +60 -0
- package/src/components/Icons/Payment.tsx +60 -0
- package/src/components/Icons/PdfIcon.tsx +56 -0
- package/src/components/Icons/PendingActions.tsx +60 -0
- package/src/components/Icons/People.tsx +65 -0
- package/src/components/Icons/Person.tsx +67 -0
- package/src/components/Icons/PersonAdd.tsx +67 -0
- package/src/components/Icons/PersonOutline.tsx +60 -0
- package/src/components/Icons/Phone.tsx +60 -0
- package/src/components/Icons/PlayArrow.tsx +60 -0
- package/src/components/Icons/PlaylistAddCheck.tsx +60 -0
- package/src/components/Icons/PointOfSale.tsx +60 -0
- package/src/components/Icons/Policy.tsx +60 -0
- package/src/components/Icons/PostAdd.tsx +61 -0
- package/src/components/Icons/PrecisionManufacturing.tsx +68 -0
- package/src/components/Icons/Preview.tsx +60 -0
- package/src/components/Icons/Print.tsx +60 -0
- package/src/components/Icons/PriorityHigh.tsx +62 -0
- package/src/components/Icons/Psychology.tsx +60 -0
- package/src/components/Icons/Public.tsx +60 -0
- package/src/components/Icons/QrCode.tsx +76 -0
- package/src/components/Icons/QrCodeScanner.tsx +67 -0
- package/src/components/Icons/RadioButtonChecked.tsx +60 -0
- package/src/components/Icons/RateReview.tsx +60 -0
- package/src/components/Icons/Receipt.tsx +60 -0
- package/src/components/Icons/Redo.tsx +60 -0
- package/src/components/Icons/Refresh.tsx +67 -0
- package/src/components/Icons/Remove.tsx +60 -0
- package/src/components/Icons/Repeat.tsx +60 -0
- package/src/components/Icons/ReportProblem.tsx +61 -0
- package/src/components/Icons/RequestQuote.tsx +62 -0
- package/src/components/Icons/Restore.tsx +59 -0
- package/src/components/Icons/Router.tsx +60 -0
- package/src/components/Icons/Save.tsx +67 -0
- package/src/components/Icons/Schedule.tsx +60 -0
- package/src/components/Icons/School.tsx +60 -0
- package/src/components/Icons/ScreenRotation.tsx +60 -0
- package/src/components/Icons/Search.tsx +59 -39
- package/src/components/Icons/Security.tsx +60 -0
- package/src/components/Icons/Send.tsx +60 -0
- package/src/components/Icons/Settings.tsx +67 -0
- package/src/components/Icons/Shield.tsx +60 -0
- package/src/components/Icons/ShoppingBasket.tsx +67 -0
- package/src/components/Icons/ShowChart.tsx +60 -0
- package/src/components/Icons/ShowHideEye.tsx +117 -22
- package/src/components/Icons/SkipNext.tsx +60 -0
- package/src/components/Icons/SmartButtonIcon.tsx +67 -0
- package/src/components/Icons/Smartphone.tsx +60 -0
- package/src/components/Icons/Sms.tsx +56 -0
- package/src/components/Icons/Sort.tsx +65 -0
- package/src/components/Icons/Spa.tsx +63 -0
- package/src/components/Icons/Speed.tsx +66 -0
- package/src/components/Icons/Star.tsx +65 -0
- package/src/components/Icons/StarBorder.tsx +65 -0
- package/src/components/Icons/StarIcon.tsx +65 -0
- package/src/components/Icons/Stop.tsx +67 -0
- package/src/components/Icons/Storage.tsx +65 -0
- package/src/components/Icons/Store.tsx +65 -0
- package/src/components/Icons/StoreMallDirectory.tsx +65 -0
- package/src/components/Icons/StrikethroughS.tsx +65 -0
- package/src/components/Icons/SupervisedUserCircle.tsx +65 -0
- package/src/components/Icons/Support.tsx +65 -0
- package/src/components/Icons/Sync.tsx +65 -0
- package/src/components/Icons/TableIcon.tsx +65 -0
- package/src/components/Icons/Tablet.tsx +65 -0
- package/src/components/Icons/TemplateIcon.tsx +65 -0
- package/src/components/Icons/TextFieldsIcon.tsx +67 -0
- package/src/components/Icons/ThumbUp.tsx +65 -0
- package/src/components/Icons/Timeline.tsx +65 -0
- package/src/components/Icons/Timer.tsx +65 -0
- package/src/components/Icons/Transfer.tsx +65 -0
- package/src/components/Icons/TrendingDown.tsx +65 -0
- package/src/components/Icons/TrendingUp.tsx +65 -0
- package/src/components/Icons/Undo.tsx +65 -0
- package/src/components/Icons/VerifiedUser.tsx +65 -0
- package/src/components/Icons/VideoLibraryIcon.tsx +67 -0
- package/src/components/Icons/Videocam.tsx +66 -0
- package/src/components/Icons/ViewCompact.tsx +67 -0
- package/src/components/Icons/ViewCompactIcon.tsx +65 -0
- package/src/components/Icons/ViewHeadlineIcon.tsx +67 -0
- package/src/components/Icons/ViewIcon.tsx +65 -0
- package/src/components/Icons/ViewList.tsx +65 -0
- package/src/components/Icons/ViewModule.tsx +65 -0
- package/src/components/Icons/ViewSidebar.tsx +65 -0
- package/src/components/Icons/Visibility.tsx +65 -0
- package/src/components/Icons/VisibilityOff.tsx +65 -0
- package/src/components/Icons/VpnKey.tsx +65 -0
- package/src/components/Icons/VpnLock.tsx +65 -0
- package/src/components/Icons/Warning.tsx +65 -0
- package/src/components/Icons/WarningAmber.tsx +69 -0
- package/src/components/Icons/WaterDrop.tsx +67 -0
- package/src/components/Icons/Web.tsx +61 -0
- package/src/components/Icons/Widgets.tsx +65 -0
- package/src/components/Icons/Wifi.tsx +67 -0
- package/src/components/Icons/WifiOff.tsx +67 -0
- package/src/components/Icons/Work.tsx +67 -0
- package/src/components/Icons/WorkspacePremium.tsx +67 -0
- package/src/components/Icons/index.ts +261 -0
- package/src/components/InputLabel/index.tsx +137 -0
- package/src/components/List/index.tsx +77 -0
- package/src/components/MenuItem/index.tsx +147 -0
- package/src/components/Pagination/index.tsx +455 -0
- package/src/components/Paper/index.tsx +93 -0
- package/src/components/Popover/index.tsx +65 -0
- package/src/components/Popover/popover.stories.tsx +455 -0
- package/src/components/PricingTable/index.tsx +488 -337
- package/src/components/PricingTable/pricingtable.stories.tsx +66 -130
- package/src/components/ProgressBar/index.tsx +104 -0
- package/src/components/ProgressBar/progressbar.stories.tsx +641 -0
- package/src/components/ProjectBoard/ShowTask.stories.tsx +218 -0
- package/src/components/ProjectBoard/administratorCompanyDropdown.stories.tsx +213 -0
- package/src/components/ProjectBoard/administratorCompanyProvided.stories.tsx +205 -0
- package/src/components/ProjectBoard/board/board.stories.tsx +516 -0
- package/src/components/ProjectBoard/board/index.tsx +836 -41
- package/src/components/ProjectBoard/companyCustomerDropdown.stories.tsx +228 -0
- package/src/components/ProjectBoard/companyCustomerProvided.stories.tsx +206 -0
- package/src/components/ProjectBoard/customer.stories.tsx +154 -0
- package/src/components/ProjectBoard/forms/AddTask/administrator/companyDropdown/index.tsx +346 -450
- package/src/components/ProjectBoard/forms/AddTask/administrator/companyProvided/index.tsx +337 -432
- package/src/components/ProjectBoard/forms/AddTask/company/customerDropdown/index.tsx +363 -471
- package/src/components/ProjectBoard/forms/AddTask/company/customerProvided/index.tsx +336 -436
- package/src/components/ProjectBoard/forms/AddTask/customer/index.tsx +238 -314
- package/src/components/ProjectBoard/forms/AddTask/noUser/index.tsx +71 -147
- package/src/components/ProjectBoard/forms/ShowTask/client.tsx +639 -974
- package/src/components/ProjectBoard/index.tsx +193 -365
- package/src/components/ProjectBoard/noUser.stories.tsx +141 -0
- package/src/components/ProjectBoard/types/index.tsx +5 -2
- package/src/components/ProjectBoard/utils/useDragandDrop/columns.tsx +115 -42
- package/src/components/ProjectBoard/utils/useDragandDrop/tasks.tsx +146 -56
- package/src/components/QRCode/index.tsx +97 -262
- package/src/components/QRCode/qrcode.stories.tsx +510 -79
- package/src/components/RadioGroup/index.tsx +74 -125
- package/src/components/RadioGroup/radiogroup.stories.tsx +456 -66
- package/src/components/Select/index.tsx +183 -0
- package/src/components/Slide/index.tsx +49 -0
- package/src/components/Slide/slide.stories.tsx +327 -0
- package/src/components/Snackbar/index.tsx +65 -0
- package/src/components/Snackbar/snackbar.stories.tsx +834 -0
- package/src/components/Stack/index.tsx +162 -0
- package/src/components/Stepper/index.tsx +371 -245
- package/src/components/Stepper/stepper.stories.tsx +792 -215
- package/src/components/Switch/index.tsx +138 -0
- package/src/components/Switch/switch.stories.tsx +1000 -0
- package/src/components/Table/Table.stories.tsx +123 -0
- package/src/components/Table/index.tsx +262 -0
- package/src/components/Tabs/index.tsx +112 -172
- package/src/components/Tabs/tabs.stories.tsx +131 -158
- package/src/components/ToggleButton/index.tsx +267 -0
- package/src/components/ToggleButton/togglebutton.stories.tsx +637 -0
- package/src/components/Toolbar/index.tsx +156 -156
- package/src/components/Toolbar/left/index.tsx +52 -47
- package/src/components/Toolbar/leftCenter/index.tsx +109 -71
- package/src/components/Toolbar/right/index.tsx +29 -29
- package/src/components/Toolbar/rightCenter/index.tsx +22 -17
- package/src/components/Toolbar/toolbar.stories.tsx +134 -71
- package/src/components/Tooltip/index.tsx +224 -76
- package/src/components/Tooltip/tooltip.stories.tsx +97 -137
- package/src/components/TransferList/index.tsx +313 -354
- package/src/components/TransferList/transferlist.stories.tsx +191 -157
- package/src/components/TreeView/index.tsx +1205 -0
- package/src/components/TreeView/treeview.stories.tsx +788 -0
- package/src/components/Typography/index.tsx +53 -390
- package/src/components/Typography/typography.stories.tsx +260 -101
- package/src/components/Zoom/index.tsx +48 -0
- package/src/index.ts +194 -40
- package/src/stories/Button.stories.ts +1 -1
- package/src/stories/Header.stories.ts +1 -1
- package/src/stories/Page.stories.ts +1 -1
- package/src/theme/accordion.ts +784 -0
- package/src/theme/alert.ts +619 -0
- package/src/theme/appbar.ts +297 -0
- package/src/theme/avatar.ts +188 -0
- package/src/theme/badge.ts +166 -0
- package/src/theme/breadcrumb.ts +315 -0
- package/src/theme/button.ts +403 -0
- package/src/theme/card.ts +382 -0
- package/src/theme/checkbox.ts +538 -0
- package/src/theme/chip.ts +656 -0
- package/src/theme/codecopy.ts +427 -0
- package/src/theme/complextexteditor.ts +508 -0
- package/src/theme/confirmationcodeinput.ts +687 -0
- package/src/theme/container.ts +175 -0
- package/src/theme/datagrid.ts +784 -0
- package/src/theme/dialog.ts +465 -0
- package/src/theme/divider.ts +205 -0
- package/src/theme/drawer.ts +358 -0
- package/src/theme/dropdown.ts +733 -0
- package/src/theme/fade.ts +132 -0
- package/src/theme/formField.ts +388 -0
- package/src/theme/icon.ts +308 -0
- package/src/theme/index.ts +558 -0
- package/src/theme/list.ts +160 -0
- package/src/theme/nav.ts +1111 -0
- package/src/theme/pagination.ts +368 -0
- package/src/theme/paper.ts +269 -0
- package/src/theme/popover.ts +178 -0
- package/src/theme/pricingtable.ts +693 -0
- package/src/theme/progressbar.ts +433 -0
- package/src/theme/projectboard.ts +291 -0
- package/src/theme/qrcode.ts +485 -0
- package/src/theme/radiogroup.ts +424 -0
- package/src/theme/shared.ts +222 -0
- package/src/theme/slide.ts +161 -0
- package/src/theme/stepper.ts +849 -0
- package/src/theme/switch.ts +567 -0
- package/src/theme/tabs.ts +552 -0
- package/src/theme/toolbar.ts +238 -0
- package/src/theme/tooltip.ts +232 -0
- package/src/theme/treeview.ts +1239 -0
- package/src/theme/typography.ts +812 -0
- package/src/theme/zoom.ts +166 -0
- package/src/utils/alpha.ts +34 -0
- package/src/utils/keyframes.ts +81 -0
- package/src/components/Card/card.stories.tsx +0 -337
- package/src/components/Card/variants/defaultconfig/index.tsx +0 -236
- package/src/components/Card/variants/detailedpricingsummary/index.tsx +0 -270
- package/src/components/Card/variants/inventory/index.tsx +0 -289
- package/src/components/Card/variants/product/index.tsx +0 -378
- package/src/components/Card/variants/productsummary/index.tsx +0 -274
- package/src/components/Card/variants/simplepricingsummary/index.tsx +0 -215
- package/src/components/Card/variants/task/index.tsx +0 -197
- package/src/components/ComplexTextEditor/utils/useRichtextEditor.tsx +0 -440
- package/src/components/Content/Structure/CreditCardExpiration/useCreditCardExpiration.tsx +0 -62
- package/src/components/Content/Structure/card/useCard.tsx +0 -24
- package/src/components/Content/Structure/incremementNumberField/useIncremementNumberField.tsx +0 -33
- package/src/components/DataGrid/ManageColumn/index.tsx +0 -331
- package/src/components/Field/Date/CreditCardExpiration/index.tsx +0 -1304
- package/src/components/Field/Dropdown/Searchable/index.tsx +0 -1711
- package/src/components/Field/Dropdown/Searchable/searchabledropdown.stories.tsx +0 -746
- package/src/components/Field/IPAM/NetworkAddress/index.tsx +0 -499
- package/src/components/Field/Number/ExternalIncrement/incrementnumberfield.stories.tsx +0 -152
- package/src/components/Field/Number/InternalIncrement/numberfield.stories.tsx +0 -228
- package/src/components/Nav/VerticalVariant/mainNav/expanding.tsx +0 -168
- package/src/components/Nav/VerticalVariant/mainNav/list.tsx +0 -160
- package/src/components/Nav/VerticalVariant/subNav/expanding.tsx +0 -159
- package/src/components/Nav/VerticalVariant/subNav/list.tsx +0 -120
- package/src/components/Nav/VerticalVariant/subSubViewNav/list.tsx +0 -133
- package/src/components/Nav/VerticalVariant/subViewNav/expanding.tsx +0 -175
- package/src/components/Nav/VerticalVariant/subViewNav/list.tsx +0 -133
- package/src/components/Nav/VerticalVariant/viewNav/expanding.tsx +0 -164
- package/src/components/Nav/VerticalVariant/viewNav/index.tsx +0 -124
- package/src/components/Nav/index.tsx +0 -1056
- package/src/components/Nav/nav.stories.tsx +0 -473
- package/src/components/ProjectBoard/board/desktop/index.tsx +0 -487
- package/src/components/ProjectBoard/board/mobile/index.tsx +0 -515
- package/src/components/ProjectBoard/board/tablet/index.tsx +0 -496
- package/src/components/ProjectBoard/projectboard.stories.tsx +0 -881
- package/src/components/Widget/index.tsx +0 -343
- package/src/stories/Configure.mdx +0 -451
- package/src/styles/Form/index.ts +0 -7
- package/src/styles/palette.ts +0 -143
- package/src/styles/typography.ts +0 -185
- package/src/types/react-datepicker.d.ts +0 -75
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# goobs-frontend
|
|
2
2
|
|
|
3
|
-
goobs-frontend
|
|
3
|
+
goobs-frontend is a comprehensive React-based UI component library featuring a custom design system with 100+ components, built with TypeScript and modern React patterns.
|
|
4
4
|
|
|
5
5
|
The NPM repo is available here - https://www.npmjs.com/package/goobs-frontend
|
|
6
6
|
|
|
@@ -46,343 +46,144 @@ export default nextConfig
|
|
|
46
46
|
|
|
47
47
|
After this is done, you can import components from goobs-frontend into your project.
|
|
48
48
|
|
|
49
|
-
##
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
-
|
|
114
|
-
-
|
|
115
|
-
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
-
|
|
125
|
-
-
|
|
126
|
-
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
-
|
|
135
|
-
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
-
|
|
180
|
-
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
Description: A numeric input with dedicated increment/decrement buttons.
|
|
185
|
-
|
|
186
|
-
Features:
|
|
187
|
-
|
|
188
|
-
- Restricts input to digits.
|
|
189
|
-
- Configurable label, background, outline, and text color.
|
|
190
|
-
|
|
191
|
-
### MultiSelectChip
|
|
192
|
-
|
|
193
|
-
Description: A multiple-selection dropdown that displays selected items as chips.
|
|
194
|
-
|
|
195
|
-
Features:
|
|
196
|
-
|
|
197
|
-
- Easy to handle multiple values.
|
|
198
|
-
- Optional background, font, and label styling.
|
|
199
|
-
|
|
200
|
-
### Nav (Vertical)
|
|
201
|
-
|
|
202
|
-
Description: A vertical navigation component with expandable main/sub nav items, optional search, etc.
|
|
203
|
-
|
|
204
|
-
Features:
|
|
205
|
-
|
|
206
|
-
- Supports multiple levels: mainNav, subNav, and viewNav.
|
|
207
|
-
- Collapsible sections and optional route-based or onClick triggers.
|
|
208
|
-
|
|
209
|
-
### NumberField
|
|
210
|
-
|
|
211
|
-
Description: A numeric text field with optional min/max constraints.
|
|
212
|
-
|
|
213
|
-
Features:
|
|
214
|
-
|
|
215
|
-
- Restricts non-numeric input.
|
|
216
|
-
- Auto-corrects values outside allowable ranges.
|
|
217
|
-
|
|
218
|
-
### PasswordField
|
|
219
|
-
|
|
220
|
-
Description: A text field for secure passwords, featuring a show/hide toggle icon.
|
|
221
|
-
|
|
222
|
-
Features:
|
|
223
|
-
|
|
224
|
-
- Color overrides for background, outline, text.
|
|
225
|
-
- Eye icon toggles between hidden and visible text.
|
|
226
|
-
|
|
227
|
-
### PhoneNumberField
|
|
228
|
-
|
|
229
|
-
Description: A phone number input that auto-formats values (e.g., +1-xxx-xxx-xxxx).
|
|
230
|
-
|
|
231
|
-
Features:
|
|
232
|
-
|
|
233
|
-
- Removes non-digit characters, ensures +1.
|
|
234
|
-
- Great for US-based phone inputs, can be adapted for international usage.
|
|
235
|
-
|
|
236
|
-
### PricingTable
|
|
237
|
-
|
|
238
|
-
Description: A tabular display of multi-tier pricing data, toggling monthly/annual costs, etc.
|
|
239
|
-
|
|
240
|
-
Features:
|
|
241
|
-
|
|
242
|
-
- Compare multiple packages.
|
|
243
|
-
- Checkmark-based feature lists.
|
|
244
|
-
- Integrated CTA buttons, easily link to a router or checkout flow.
|
|
245
|
-
|
|
246
|
-
### ProjectBoard
|
|
247
|
-
|
|
248
|
-
Description: A kanban-like board for tasks, with drag-and-drop columns, search, and sub-forms (AddTask, ShowTask).
|
|
249
|
-
|
|
250
|
-
Features:
|
|
251
|
-
|
|
252
|
-
- Handles status/sub-status or severity-based columns.
|
|
253
|
-
- Built-in search, comment, revision history, assigned user, etc.
|
|
254
|
-
|
|
255
|
-
### QRCodeComponent
|
|
256
|
-
|
|
257
|
-
Description: Dynamically generates a QR code from TOTP secrets (or any string).
|
|
258
|
-
|
|
259
|
-
Features:
|
|
260
|
-
|
|
261
|
-
- Integrates with otplib for generating or verifying TOTP secrets.
|
|
262
|
-
- Accepts size, optional title, and callback for the generated secret.
|
|
263
|
-
|
|
264
|
-
### RadioGroup
|
|
265
|
-
|
|
266
|
-
Description: A group of radio buttons for single-option selection, built on Material-UI’s RadioGroup.
|
|
267
|
-
|
|
268
|
-
Features:
|
|
269
|
-
|
|
270
|
-
- Accepts typed RadioOption for label customizations.
|
|
271
|
-
- Includes an optional overall label with custom font variants/colors.
|
|
272
|
-
|
|
273
|
-
### RichTextEditor
|
|
274
|
-
|
|
275
|
-
Description: A full WYSIWYG editor with optional Markdown toggles, link insertion, bold/italic, etc.
|
|
276
|
-
|
|
277
|
-
Features:
|
|
278
|
-
|
|
279
|
-
- Built on Slate or similar.
|
|
280
|
-
- Separate toolbars for Rich Text vs. Markdown modes.
|
|
281
|
-
|
|
282
|
-
### SearchableDropdown
|
|
283
|
-
|
|
284
|
-
Description: A dropdown with real-time filtering, based on Material-UI’s Autocomplete.
|
|
285
|
-
|
|
286
|
-
Features:
|
|
287
|
-
|
|
288
|
-
- Additional attributes for each option (attribute1, attribute2).
|
|
289
|
-
- Flexible color/label styling.
|
|
290
|
-
|
|
291
|
-
### Searchbar
|
|
292
|
-
|
|
293
|
-
Description: A stylized search input field, typically placed in a toolbar or nav.
|
|
294
|
-
|
|
295
|
-
Features:
|
|
296
|
-
|
|
297
|
-
- Icon, label positioning, and color customization.
|
|
298
|
-
- Easy onChange event to handle filtering or searching.
|
|
299
|
-
|
|
300
|
-
### ShowTask
|
|
301
|
-
|
|
302
|
-
Description: A modal-based component that displays a single task, its fields, and a comment section with revision history.
|
|
303
|
-
|
|
304
|
-
Features:
|
|
305
|
-
|
|
306
|
-
- Edits or adds comments, optionally restricted to the original commenter.
|
|
307
|
-
- Adjust sub-status, assigned user, next-action date, etc.
|
|
308
|
-
|
|
309
|
-
### Stepper (CustomStepper)
|
|
310
|
-
|
|
311
|
-
Description: A multi-step progress indicator for processes or wizards.
|
|
312
|
-
|
|
313
|
-
Features:
|
|
314
|
-
|
|
315
|
-
- Supports “completed”, “active”, “error”, or “inactive” steps.
|
|
316
|
-
- Displays optional step descriptions or links.
|
|
317
|
-
- Step icons can be customized (check, lock, error, etc.).
|
|
318
|
-
|
|
319
|
-
### StyledTooltip
|
|
320
|
-
|
|
321
|
-
Description: A Material-UI Tooltip extended with custom color, offsets, and arrow placement.
|
|
322
|
-
|
|
323
|
-
Features:
|
|
324
|
-
|
|
325
|
-
- Override background color, text color, arrow color.
|
|
326
|
-
- Precisely position via offset props.
|
|
327
|
-
|
|
328
|
-
### Tabs (Horizontal)
|
|
329
|
-
|
|
330
|
-
Description: A horizontal tab navigation bar built with Material-UI’s Tabs.
|
|
331
|
-
|
|
332
|
-
Features:
|
|
333
|
-
|
|
334
|
-
- Route-based (trigger='route') or custom callback (trigger='onClick') tab switches.
|
|
335
|
-
- Supports alignment (left, center, right, justify) and optional borders.
|
|
336
|
-
|
|
337
|
-
### TextField
|
|
338
|
-
|
|
339
|
-
Description: A Material-UI TextField wrapper with advanced color and label position overrides, plus optional end adornments.
|
|
340
|
-
|
|
341
|
-
Features:
|
|
342
|
-
|
|
343
|
-
- Label can shrink onto or above the outline for a unique UI.
|
|
344
|
-
- Extended color styling for background, outline, font, placeholder, etc.
|
|
345
|
-
|
|
346
|
-
### Toolbar
|
|
347
|
-
|
|
348
|
-
Description: A flexible container for actions, often used atop tables or pages for filtering, button actions, and more.
|
|
349
|
-
|
|
350
|
-
Features:
|
|
351
|
-
|
|
352
|
-
- Extensible subcomponents (Left, LeftCenter, Right, RightCenter).
|
|
353
|
-
- Adapts layout based on screen size (desktop, tablet, mobile).
|
|
354
|
-
|
|
355
|
-
### Tooltip
|
|
356
|
-
|
|
357
|
-
Description: A styled tooltip (see StyledTooltip).
|
|
358
|
-
|
|
359
|
-
Features:
|
|
360
|
-
|
|
361
|
-
- Enhanced theming, offsets, arrow customization.
|
|
362
|
-
- Works with icons, text, or anything that needs a hover tooltip.
|
|
363
|
-
|
|
364
|
-
### TransferList
|
|
365
|
-
|
|
366
|
-
Description: A dual-list component for transferring items between left and right.
|
|
367
|
-
|
|
368
|
-
Features:
|
|
369
|
-
|
|
370
|
-
- “Move selected” or “Move all” controls.
|
|
371
|
-
- Single or multiple selection variants.
|
|
372
|
-
- Can pair with dropdowns for multi-collection contexts.
|
|
373
|
-
|
|
374
|
-
### Typography
|
|
375
|
-
|
|
376
|
-
Description: A text component supporting multiple font families (Arapey, Inter, Merriweather) and variant styles.
|
|
377
|
-
|
|
378
|
-
Features:
|
|
379
|
-
|
|
380
|
-
- Additional variants like paragraph, helperheader, helperfooter.
|
|
381
|
-
- Flexible coloring and consistent text sizing across your app.
|
|
49
|
+
## Component Library Overview
|
|
50
|
+
|
|
51
|
+
goobs-frontend provides 100+ fully-featured React components organized into logical categories. All components are built with TypeScript, custom theming, and responsive design principles. For detailed documentation, examples, and interactive demos, visit our [Storybook](https://storybook.technologiesunlimited.net/).
|
|
52
|
+
|
|
53
|
+
## Core Component Categories
|
|
54
|
+
|
|
55
|
+
### 🎨 Layout & Structure
|
|
56
|
+
- **Grid** - Responsive grid system with flexible row/column configurations
|
|
57
|
+
- **Container** - Responsive content containers with consistent spacing
|
|
58
|
+
- **Stack** - One-dimensional layout component for arranging items
|
|
59
|
+
- **Paper** - Elevated surface container for content sections
|
|
60
|
+
- **Divider** - Visual separators for content organization
|
|
61
|
+
|
|
62
|
+
### 📝 Form Components
|
|
63
|
+
**Text Inputs**
|
|
64
|
+
- **TextField** - Versatile text input with advanced styling and label positioning
|
|
65
|
+
- **PasswordField** - Secure password input with show/hide toggle functionality
|
|
66
|
+
- **SearchField** - Search input with integrated search icons and styling
|
|
67
|
+
- **ComplexTextEditor** - Multi-mode editor (simple, markdown, rich text) with integrated toolbar
|
|
68
|
+
|
|
69
|
+
**Specialized Inputs**
|
|
70
|
+
- **PhoneNumberField** - Auto-formatting phone number input (+1-xxx-xxx-xxxx)
|
|
71
|
+
- **USDField** - Currency input with dollar formatting and validation
|
|
72
|
+
- **PercentageField** - Percentage input with % symbol and range validation
|
|
73
|
+
- **ConfirmationCodeInput** - OTP-style multi-digit input with auto-focus progression
|
|
74
|
+
|
|
75
|
+
**Number Inputs**
|
|
76
|
+
- **IncrementNumberField** - Number input with built-in increment/decrement controls
|
|
77
|
+
- **AccountNumberField** - Bank account number input with validation
|
|
78
|
+
- **RoutingNumberField** - Bank routing number input with format validation
|
|
79
|
+
- **CreditCardField** - Credit card input with real-time formatting
|
|
80
|
+
- **CVVField** - Secure CVV input for payment forms
|
|
81
|
+
|
|
82
|
+
**Date & Time**
|
|
83
|
+
- **DateField** - Date picker with calendar popup and keyboard navigation
|
|
84
|
+
- **DateRangeField** - Start/end date selection with range validation
|
|
85
|
+
- **TimeRangeField** - Time range selector with 12/24 hour support
|
|
86
|
+
|
|
87
|
+
**Selection Components**
|
|
88
|
+
- **Dropdown** - Customizable select component with advanced styling
|
|
89
|
+
- **MultiSelectChip** - Multi-selection dropdown with chip display
|
|
90
|
+
- **SearchableDropdown** - Real-time filtering dropdown with autocomplete
|
|
91
|
+
- **RadioGroup** - Radio button groups with custom styling and TypeScript support
|
|
92
|
+
- **Checkbox** - Enhanced checkbox with indeterminate state support
|
|
93
|
+
- **Switch** - Toggle switch with smooth animations
|
|
94
|
+
|
|
95
|
+
**IPAM & Network Fields**
|
|
96
|
+
- **IPAddressField** - IP address input with validation
|
|
97
|
+
- **CIDRField** - CIDR notation input with subnet validation
|
|
98
|
+
- **SubnetField** - Subnet configuration input
|
|
99
|
+
- **VLANField** - VLAN ID input with range validation
|
|
100
|
+
- **MACAddressField** - MAC address input with auto-formatting
|
|
101
|
+
|
|
102
|
+
### 🗂️ Data Display
|
|
103
|
+
- **DataGrid** - Advanced data table with sorting, filtering, pagination, and row management
|
|
104
|
+
- **Table** - Lightweight table component for simple data display
|
|
105
|
+
- **Card** - Versatile card container with multiple variants (product, pricing, task, inventory)
|
|
106
|
+
- **List** - Flexible list component with custom item rendering
|
|
107
|
+
- **PricingTable** - Specialized pricing comparison table with feature highlights
|
|
108
|
+
- **ProjectBoard** - Kanban-style board with drag-and-drop task management
|
|
109
|
+
|
|
110
|
+
### 🧭 Navigation
|
|
111
|
+
- **Tabs** - Horizontal tab navigation with route integration
|
|
112
|
+
- **Breadcrumb** - Breadcrumb navigation with custom separators
|
|
113
|
+
- **Stepper** - Step-by-step process indicator with customizable states
|
|
114
|
+
- **TreeView** - Hierarchical tree navigation with expand/collapse
|
|
115
|
+
- **Pagination** - Page navigation with customizable page size options
|
|
116
|
+
|
|
117
|
+
### 🎯 Action Components
|
|
118
|
+
- **Button** - Highly customizable button with icon support and flexible positioning
|
|
119
|
+
- **IconButton** - Icon-only buttons with hover states and accessibility
|
|
120
|
+
- **ToggleButton** - Toggle button with active/inactive states
|
|
121
|
+
|
|
122
|
+
### 💬 Feedback & Overlays
|
|
123
|
+
- **Alert** - Contextual alerts with multiple severity levels
|
|
124
|
+
- **Dialog** - Modal dialogs for complex interactions
|
|
125
|
+
- **Snackbar** - Toast notifications with action buttons
|
|
126
|
+
- **Tooltip** - Enhanced tooltips with custom positioning and styling
|
|
127
|
+
- **Popover** - Positioned popup containers
|
|
128
|
+
|
|
129
|
+
### 🔧 Utility Components
|
|
130
|
+
- **Accordion** - Collapsible content sections with smooth animations
|
|
131
|
+
- **Badge** - Notification badges with custom positioning
|
|
132
|
+
- **Chip** - Compact information chips with delete functionality
|
|
133
|
+
- **Avatar** - User avatars with fallback text and image support
|
|
134
|
+
- **ProgressBar** - Progress indicators with customizable styling
|
|
135
|
+
- **CodeCopy** - Syntax-highlighted code blocks with one-click copying
|
|
136
|
+
- **QRCode** - Dynamic QR code generator with TOTP integration
|
|
137
|
+
- **TransferList** - Dual-list component for moving items between collections
|
|
138
|
+
|
|
139
|
+
### 🎨 Design & Animation
|
|
140
|
+
- **Typography** - Text component with multiple font families (Arapey, Inter, Merriweather)
|
|
141
|
+
- **Fade**, **Slide**, **Zoom** - Smooth transition components for enhanced UX
|
|
142
|
+
|
|
143
|
+
### 🏗️ Advanced Components
|
|
144
|
+
- **Toolbar** - Flexible toolbar with multiple sections and responsive behavior
|
|
145
|
+
- **Content** - Dynamic content renderer supporting multiple content types
|
|
146
|
+
- **FormDataGrid** - Data grid with integrated form validation
|
|
147
|
+
|
|
148
|
+
### 📱 Mobile-First Design
|
|
149
|
+
All components are built with mobile-first responsive design principles, ensuring optimal performance across desktop, tablet, and mobile devices.
|
|
150
|
+
|
|
151
|
+
### 🎨 Comprehensive Icon Library
|
|
152
|
+
200+ carefully crafted icons covering:
|
|
153
|
+
- Navigation (arrows, chevrons, menu controls)
|
|
154
|
+
- Actions (add, delete, edit, save, settings)
|
|
155
|
+
- Communication (email, phone, notifications)
|
|
156
|
+
- Business (payment, store, analytics)
|
|
157
|
+
- Technology (code, devices, security, networking)
|
|
158
|
+
- Status indicators (success, error, warning, info)
|
|
159
|
+
|
|
160
|
+
## Key Features
|
|
161
|
+
|
|
162
|
+
### 🔧 Customization
|
|
163
|
+
- **Advanced Theming** - Override colors, fonts, spacing, and component behavior
|
|
164
|
+
- **Flexible Styling** - Custom CSS-in-JS with theme-aware styling system
|
|
165
|
+
- **Component Variants** - Multiple pre-built variants for common use cases
|
|
166
|
+
|
|
167
|
+
### 📋 Developer Experience
|
|
168
|
+
- **Full TypeScript Support** - Complete type definitions with IntelliSense
|
|
169
|
+
- **Comprehensive Documentation** - Interactive Storybook with live examples
|
|
170
|
+
- **Consistent API** - Predictable prop patterns across all components
|
|
171
|
+
|
|
172
|
+
### ♿ Accessibility & Performance
|
|
173
|
+
- **ARIA Compliance** - Full accessibility support with proper ARIA labels
|
|
174
|
+
- **Keyboard Navigation** - Complete keyboard support for all interactive components
|
|
175
|
+
- **Performance Optimized** - Lazy loading, code splitting, and optimized bundle sizes
|
|
176
|
+
|
|
177
|
+
### 🚀 Modern React Patterns
|
|
178
|
+
- **Hooks-Based** - Built with modern React hooks and functional components
|
|
179
|
+
- **State Management** - Integrated Jotai support for complex state scenarios
|
|
180
|
+
- **Form Integration** - Seamless integration with popular form libraries
|
|
181
|
+
|
|
182
|
+
*For complete component documentation, interactive examples, and implementation guides, visit the [Storybook documentation](https://storybook.technologiesunlimited.net/).*
|
|
382
183
|
|
|
383
184
|
### Feedback and Contributions
|
|
384
185
|
|
|
385
|
-
|
|
186
|
+
I welcome feedback and contributions of all kinds:
|
|
386
187
|
|
|
387
188
|
- Issues: Report bugs or request features via GitHub Issues.
|
|
388
189
|
- Pull Requests: Fork, create a branch, and open a PR for review.
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "goobs-frontend",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.122.0",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"description": "A comprehensive React-based libary
|
|
5
|
+
"description": "A comprehensive React-based libary for building modern web applications",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"main": "./src/index.ts",
|
|
8
8
|
"types": "./src/index.ts",
|
|
@@ -18,17 +18,17 @@
|
|
|
18
18
|
"serve": "next start",
|
|
19
19
|
"start": "storybook dev -p 6006",
|
|
20
20
|
"lint": "next lint",
|
|
21
|
+
"lint:fix": "next lint --fix --quiet --progress",
|
|
22
|
+
"lint:verbose": "eslint \"src/**/*.{js,mjs,cjs,jsx,ts,tsx}\" --fix --format=pretty --max-warnings=0 --debug",
|
|
23
|
+
"lint:progress": "eslint \"src/**/*.{js,mjs,cjs,jsx,ts,tsx}\" --fix --format=unix --max-warnings=0",
|
|
24
|
+
"lint:test": "eslint \"src/components/Button/Button.tsx\" --fix --format=stylish --debug",
|
|
25
|
+
"clean-unused": "bun run lint:progress && echo \"✅ Linting complete, now formatting...\" && bun run format",
|
|
26
|
+
"format": "prettier --write \"src/**/*.{ts,tsx,js,jsx,json,css,md}\"",
|
|
21
27
|
"storybook": "storybook dev -p 6006",
|
|
22
28
|
"build-storybook": "storybook build"
|
|
23
29
|
},
|
|
24
30
|
"dependencies": {
|
|
25
|
-
"@emotion/cache": "^11",
|
|
26
|
-
"@emotion/react": "^11",
|
|
27
|
-
"@emotion/styled": "^11",
|
|
28
|
-
"@mui/icons-material": "^7",
|
|
29
|
-
"@mui/material": "^7",
|
|
30
31
|
"@storybook/addon-links": "^9",
|
|
31
|
-
"@storybook/test": "^8.6.14",
|
|
32
32
|
"@types/lodash": "^4",
|
|
33
33
|
"formik": "^2",
|
|
34
34
|
"highlight.js": "^11",
|
|
@@ -37,34 +37,44 @@
|
|
|
37
37
|
"next": "15",
|
|
38
38
|
"otplib": "^12",
|
|
39
39
|
"react-qr-code": "^2",
|
|
40
|
-
"slate": "^0.
|
|
41
|
-
"slate-dom": "^0.
|
|
40
|
+
"slate": "^0.118",
|
|
41
|
+
"slate-dom": "^0.117",
|
|
42
42
|
"slate-history": "^0.113",
|
|
43
43
|
"slate-react": "^0.117",
|
|
44
44
|
"storybook": "^9",
|
|
45
|
-
"zod": "^
|
|
45
|
+
"zod": "^4",
|
|
46
46
|
"zod-formik-adapter": "^1"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@
|
|
49
|
+
"@babel/core": "^7.28.0",
|
|
50
|
+
"@babel/generator": "^7.28.0",
|
|
51
|
+
"@babel/parser": "^7.28.0",
|
|
52
|
+
"@babel/traverse": "^7.28.0",
|
|
53
|
+
"@babel/types": "^7.28.0",
|
|
54
|
+
"@chromatic-com/storybook": "^4.0.1",
|
|
50
55
|
"@next/eslint-plugin-next": "^15",
|
|
51
56
|
"@storybook/addon-onboarding": "^9",
|
|
52
57
|
"@storybook/nextjs": "^9",
|
|
53
58
|
"@storybook/react": "^9",
|
|
54
|
-
"@
|
|
55
|
-
"@types/
|
|
56
|
-
"@
|
|
57
|
-
"@
|
|
58
|
-
"
|
|
59
|
-
"eslint": "^
|
|
60
|
-
"eslint
|
|
61
|
-
"
|
|
62
|
-
"
|
|
63
|
-
"eslint
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
-
"
|
|
67
|
-
"
|
|
59
|
+
"@storybook/test": "^8",
|
|
60
|
+
"@types/babel__generator": "^7.27.0",
|
|
61
|
+
"@types/babel__traverse": "^7.20.7",
|
|
62
|
+
"@types/react": "^19.1.8",
|
|
63
|
+
"@types/react-dom": "^19.1.6",
|
|
64
|
+
"@typescript-eslint/eslint-plugin": "^8.37",
|
|
65
|
+
"@typescript-eslint/parser": "^8.37",
|
|
66
|
+
"autoprefixer": "^10.4.21",
|
|
67
|
+
"chromatic": "^13.1.2",
|
|
68
|
+
"eslint": "^9.30.1",
|
|
69
|
+
"eslint-config-next": "^15.3.5",
|
|
70
|
+
"eslint-config-prettier": "^10.1.5",
|
|
71
|
+
"eslint-plugin-prettier": "^5.5.1",
|
|
72
|
+
"eslint-plugin-storybook": "^9.0.15",
|
|
73
|
+
"eslint-plugin-unused-imports": "^4.1.4",
|
|
74
|
+
"prettier": "^3.6.2",
|
|
75
|
+
"react": "^19.1.0",
|
|
76
|
+
"react-dom": "^19.1.0",
|
|
77
|
+
"typescript": "^5.8.3"
|
|
68
78
|
},
|
|
69
79
|
"files": [
|
|
70
80
|
"src"
|