siesa-ui-kit 1.0.4 → 1.0.5
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 +89 -115
- package/bin/install.cjs +502 -502
- package/bin/prepare-publish.cjs +28 -28
- package/bin/restore-folders.cjs +28 -28
- package/claude/agents/siesa-ui-kit-specialist.md +2401 -2445
- package/claude/prompts/component-template.md +121 -121
- package/claude/settings.local.json +61 -72
- package/docs/border-radius.md +1261 -1261
- package/docs/colors.md +832 -832
- package/docs/dark-mode-guide.md +1426 -1426
- package/docs/filters.md +1243 -1243
- package/docs/icons.md +1283 -1264
- package/docs/shadows.md +1377 -1377
- package/docs/spacing.md +1684 -1684
- package/docs/typography.md +1268 -1268
- package/package.json +83 -111
- package/postcss.config.cjs +6 -6
- package/src/App.css +42 -42
- package/src/App.tsx +8 -8
- package/src/ButtonTest.tsx +147 -147
- package/src/assets/fonts/README.md +261 -261
- package/src/components/Alert/Alert.stories.tsx +332 -332
- package/src/components/Alert/Alert.tsx +106 -106
- package/src/components/Alert/Alert.types.ts +54 -54
- package/src/components/Avatar/Avatar.stories.tsx +494 -494
- package/src/components/Avatar/Avatar.tsx +143 -143
- package/src/components/Avatar/Avatar.types.ts +53 -53
- package/src/components/Badge/Badge.stories.tsx +339 -339
- package/src/components/Badge/Badge.tsx +278 -278
- package/src/components/Badge/Badge.types.ts +58 -58
- package/src/components/Button/Button.stories.tsx +950 -950
- package/src/components/Button/Button.tsx +337 -337
- package/src/components/Button/Button.types.ts +180 -180
- package/src/components/Button/icons.tsx +87 -48
- package/src/components/Button/index.ts +3 -3
- package/src/components/Checkbox/Checkbox.stories.tsx +453 -453
- package/src/components/Checkbox/Checkbox.tsx +208 -208
- package/src/components/Checkbox/Checkbox.types.ts +61 -61
- package/src/components/DescriptionList/DescriptionList.stories.tsx +250 -250
- package/src/components/DescriptionList/DescriptionList.tsx +96 -96
- package/src/components/DescriptionList/DescriptionList.types.ts +29 -29
- package/src/components/Divider/Divider.stories.tsx +263 -263
- package/src/components/Divider/Divider.tsx +80 -80
- package/src/components/Divider/Divider.types.ts +24 -24
- package/src/components/Dropdown/Dropdown.stories.tsx +552 -552
- package/src/components/Dropdown/Dropdown.tsx +422 -422
- package/src/components/Dropdown/Dropdown.types.ts +146 -146
- package/src/components/Dropdown/README.md +266 -266
- package/src/components/Dropdown/icons.tsx +72 -72
- package/src/components/Dropdown/index.ts +8 -8
- package/src/components/Input/Input.stories.tsx +583 -583
- package/src/components/Input/Input.tsx +204 -204
- package/src/components/Input/Input.types.ts +80 -80
- package/src/components/Input/icons.tsx +145 -145
- package/src/components/Input/index.ts +2 -2
- package/src/components/LoginView/LoginView.stories.tsx +148 -148
- package/src/components/LoginView/LoginView.tsx +426 -426
- package/src/components/LoginView/LoginView.types.ts +52 -52
- package/src/components/LoginView/README.md +396 -396
- package/src/components/LoginView/icons.tsx +85 -85
- package/src/components/LoginView/index.ts +3 -3
- package/src/components/Navbar/Navbar.stories.tsx +810 -810
- package/src/components/Navbar/Navbar.tsx +755 -755
- package/src/components/Navbar/Navbar.types.ts +219 -219
- package/src/components/Navbar/README.md +279 -279
- package/src/components/Navbar/icons.tsx +102 -102
- package/src/components/Navbar/index.ts +8 -8
- package/src/components/NavigationBar/NavigationBar.stories.tsx +406 -406
- package/src/components/NavigationBar/NavigationBar.tsx +246 -246
- package/src/components/NavigationBar/NavigationBar.types.ts +74 -74
- package/src/components/NavigationBar/README.md +469 -469
- package/src/components/NavigationBar/index.ts +2 -2
- package/src/components/NavigationRail/NavigationRail.stories.tsx +417 -417
- package/src/components/NavigationRail/NavigationRail.tsx +418 -418
- package/src/components/NavigationRail/NavigationRail.types.ts +109 -109
- package/src/components/NavigationRail/README.md +224 -224
- package/src/components/NavigationRail/index.ts +2 -2
- package/src/components/Notification/Notification.stories.tsx +513 -513
- package/src/components/Notification/Notification.tsx +145 -145
- package/src/components/Notification/Notification.types.ts +142 -142
- package/src/components/Notification/README.md +409 -409
- package/src/components/Notification/index.ts +3 -3
- package/src/components/POSConvention/POSConvention.stories.tsx +235 -235
- package/src/components/POSConvention/POSConvention.tsx +129 -129
- package/src/components/POSConvention/POSConvention.types.ts +38 -38
- package/src/components/POSConvention/README.md +123 -123
- package/src/components/POSConvention/icons.tsx +45 -45
- package/src/components/POSConvention/index.ts +3 -3
- package/src/components/POSLocationButton/POSLocationButton.stories.tsx +531 -531
- package/src/components/POSLocationButton/POSLocationButton.tsx +247 -247
- package/src/components/POSLocationButton/POSLocationButton.types.ts +87 -87
- package/src/components/POSLocationButton/README.md +253 -253
- package/src/components/POSLocationButton/icons.tsx +120 -120
- package/src/components/POSLocationButton/index.ts +14 -14
- package/src/components/POSNumberButton/POSNumberButton.stories.tsx +415 -415
- package/src/components/POSNumberButton/POSNumberButton.tsx +179 -179
- package/src/components/POSNumberButton/POSNumberButton.types.ts +51 -51
- package/src/components/POSNumberButton/README.md +321 -321
- package/src/components/POSNumberButton/index.ts +3 -3
- package/src/components/POSProductButton/POSProductButton.stories.tsx +318 -318
- package/src/components/POSProductButton/POSProductButton.tsx +152 -152
- package/src/components/POSProductButton/POSProductButton.types.ts +46 -46
- package/src/components/POSProductButton/README.md +269 -269
- package/src/components/POSProductButton/index.ts +2 -2
- package/src/components/POSProductCard/POSProductCard.stories.tsx +642 -642
- package/src/components/POSProductCard/POSProductCard.tsx +208 -208
- package/src/components/POSProductCard/POSProductCard.types.ts +76 -76
- package/src/components/POSProductCard/README.md +179 -179
- package/src/components/POSProductCard/icons.tsx +26 -26
- package/src/components/POSProductCard/index.ts +2 -2
- package/src/components/POSProductSidebarItems/POSProductSidebarItems.stories.tsx +753 -753
- package/src/components/POSProductSidebarItems/POSProductSidebarItems.tsx +332 -332
- package/src/components/POSProductSidebarItems/POSProductSidebarItems.types.ts +119 -119
- package/src/components/POSProductSidebarItems/README.md +198 -198
- package/src/components/POSProductSidebarItems/icons.tsx +21 -21
- package/src/components/POSProductSidebarItems/index.ts +3 -3
- package/src/components/POSTable/POSTable.stories.tsx +737 -737
- package/src/components/POSTable/POSTable.tsx +401 -401
- package/src/components/POSTable/POSTable.types.ts +83 -83
- package/src/components/POSTable/README.md +286 -286
- package/src/components/POSTable/index.ts +7 -7
- package/src/components/Pagination/Pagination.stories.tsx +555 -555
- package/src/components/Pagination/Pagination.tsx +286 -286
- package/src/components/Pagination/Pagination.types.ts +93 -93
- package/src/components/Pagination/README.md +298 -298
- package/src/components/Pagination/icons.tsx +47 -47
- package/src/components/Pagination/index.ts +3 -3
- package/src/components/Quantity/Quantity.stories.tsx +457 -457
- package/src/components/Quantity/Quantity.tsx +289 -289
- package/src/components/Quantity/Quantity.types.ts +70 -70
- package/src/components/Radio/Radio.stories.tsx +523 -523
- package/src/components/Radio/Radio.tsx +170 -170
- package/src/components/Radio/Radio.types.ts +122 -122
- package/src/components/Select/README.md +299 -299
- package/src/components/Select/Select.stories.tsx +673 -705
- package/src/components/Select/Select.tsx +454 -457
- package/src/components/Select/Select.types.ts +148 -148
- package/src/components/Select/icons.tsx +50 -25
- package/src/components/Select/index.ts +3 -3
- package/src/components/SignUpView/SignUpView.stories.tsx +129 -129
- package/src/components/SignUpView/SignUpView.tsx +503 -503
- package/src/components/SignUpView/SignUpView.types.ts +58 -58
- package/src/components/SignUpView/icons.tsx +71 -71
- package/src/components/SignUpView/index.ts +3 -3
- package/src/components/Switch/README.md +112 -112
- package/src/components/Switch/Switch.stories.tsx +550 -550
- package/src/components/Switch/Switch.tsx +246 -246
- package/src/components/Switch/Switch.types.ts +67 -67
- package/src/components/Table/README.md +369 -369
- package/src/components/Table/Table.stories.tsx +805 -805
- package/src/components/Table/Table.tsx +688 -688
- package/src/components/Table/Table.types.ts +204 -204
- package/src/components/Table/index.ts +9 -9
- package/src/components/Tabs/README.md +201 -201
- package/src/components/Tabs/Tabs.stories.tsx +580 -580
- package/src/components/Tabs/Tabs.tsx +356 -356
- package/src/components/Tabs/Tabs.types.ts +127 -127
- package/src/components/Tabs/icons.tsx +129 -129
- package/src/components/Tabs/index.ts +11 -11
- package/src/components/Textarea/Textarea.stories.tsx +535 -535
- package/src/components/Textarea/Textarea.tsx +188 -188
- package/src/components/Textarea/Textarea.types.ts +54 -54
- package/src/context/ThemeContext.tsx +99 -99
- package/src/context/index.ts +1 -1
- package/src/index.css +29 -29
- package/src/index.ts +39 -133
- package/src/main.tsx +10 -10
- package/src/views/ProductsView/ProductsView.stories.tsx +344 -344
- package/src/views/ProductsView/ProductsView.tsx +480 -480
- package/src/views/ProductsView/ProductsView.types.ts +238 -238
- package/src/views/ProductsView/README.md +312 -312
- package/src/views/ProductsView/icons.tsx +38 -38
- package/src/views/ProductsView/index.ts +8 -8
- package/src/views/RecoverPasswordView/README.md +269 -269
- package/src/views/RecoverPasswordView/RecoverPasswordView.stories.tsx +131 -131
- package/src/views/RecoverPasswordView/RecoverPasswordView.tsx +376 -376
- package/src/views/RecoverPasswordView/RecoverPasswordView.types.ts +56 -56
- package/src/views/RecoverPasswordView/icons.tsx +17 -17
- package/src/views/RecoverPasswordView/index.ts +2 -2
- package/src/views/TableLayoutView/README.md +268 -268
- package/src/views/TableLayoutView/TableLayoutView.stories.tsx +235 -235
- package/src/views/TableLayoutView/TableLayoutView.tsx +461 -461
- package/src/views/TableLayoutView/TableLayoutView.types.ts +209 -209
- package/src/views/TableLayoutView/icons.tsx +113 -113
- package/src/views/TableLayoutView/index.ts +6 -6
- package/storybook/main.ts +19 -19
- package/storybook/preview.tsx +84 -84
- package/storybook/vitest.setup.ts +6 -6
- package/tailwind.config.js +128 -128
- package/claude/prompts/siesa-ui-kit.md +0 -28
- package/dist/ButtonTest.d.ts +0 -6
- package/dist/ButtonTest.d.ts.map +0 -1
- package/dist/components/Alert/Alert.d.ts +0 -23
- package/dist/components/Alert/Alert.d.ts.map +0 -1
- package/dist/components/Alert/Alert.types.d.ts +0 -46
- package/dist/components/Alert/Alert.types.d.ts.map +0 -1
- package/dist/components/Avatar/Avatar.d.ts +0 -41
- package/dist/components/Avatar/Avatar.d.ts.map +0 -1
- package/dist/components/Avatar/Avatar.types.d.ts +0 -46
- package/dist/components/Avatar/Avatar.types.d.ts.map +0 -1
- package/dist/components/Badge/Badge.d.ts +0 -42
- package/dist/components/Badge/Badge.d.ts.map +0 -1
- package/dist/components/Badge/Badge.types.d.ts +0 -32
- package/dist/components/Badge/Badge.types.d.ts.map +0 -1
- package/dist/components/Button/Button.d.ts +0 -84
- package/dist/components/Button/Button.d.ts.map +0 -1
- package/dist/components/Button/Button.types.d.ts +0 -162
- package/dist/components/Button/Button.types.d.ts.map +0 -1
- package/dist/components/Button/icons.d.ts +0 -27
- package/dist/components/Button/icons.d.ts.map +0 -1
- package/dist/components/Button/index.d.ts +0 -4
- package/dist/components/Button/index.d.ts.map +0 -1
- package/dist/components/Checkbox/Checkbox.d.ts +0 -31
- package/dist/components/Checkbox/Checkbox.d.ts.map +0 -1
- package/dist/components/Checkbox/Checkbox.types.d.ts +0 -53
- package/dist/components/Checkbox/Checkbox.types.d.ts.map +0 -1
- package/dist/components/DescriptionList/DescriptionList.d.ts +0 -38
- package/dist/components/DescriptionList/DescriptionList.d.ts.map +0 -1
- package/dist/components/DescriptionList/DescriptionList.types.d.ts +0 -27
- package/dist/components/DescriptionList/DescriptionList.types.d.ts.map +0 -1
- package/dist/components/Divider/Divider.d.ts +0 -33
- package/dist/components/Divider/Divider.d.ts.map +0 -1
- package/dist/components/Divider/Divider.types.d.ts +0 -22
- package/dist/components/Divider/Divider.types.d.ts.map +0 -1
- package/dist/components/Dropdown/Dropdown.d.ts +0 -66
- package/dist/components/Dropdown/Dropdown.d.ts.map +0 -1
- package/dist/components/Dropdown/Dropdown.types.d.ts +0 -124
- package/dist/components/Dropdown/Dropdown.types.d.ts.map +0 -1
- package/dist/components/Dropdown/icons.d.ts +0 -10
- package/dist/components/Dropdown/icons.d.ts.map +0 -1
- package/dist/components/Dropdown/index.d.ts +0 -4
- package/dist/components/Dropdown/index.d.ts.map +0 -1
- package/dist/components/DropdownItemCollapsible/DropdownItemCollapsible.d.ts +0 -101
- package/dist/components/DropdownItemCollapsible/DropdownItemCollapsible.d.ts.map +0 -1
- package/dist/components/DropdownItemCollapsible/DropdownItemCollapsible.types.d.ts +0 -116
- package/dist/components/DropdownItemCollapsible/DropdownItemCollapsible.types.d.ts.map +0 -1
- package/dist/components/DropdownItemCollapsible/icons.d.ts +0 -19
- package/dist/components/DropdownItemCollapsible/icons.d.ts.map +0 -1
- package/dist/components/DropdownItemCollapsible/index.d.ts +0 -9
- package/dist/components/DropdownItemCollapsible/index.d.ts.map +0 -1
- package/dist/components/DropdownItemHeading/DropdownItemHeading.d.ts +0 -75
- package/dist/components/DropdownItemHeading/DropdownItemHeading.d.ts.map +0 -1
- package/dist/components/DropdownItemHeading/DropdownItemHeading.types.d.ts +0 -85
- package/dist/components/DropdownItemHeading/DropdownItemHeading.types.d.ts.map +0 -1
- package/dist/components/DropdownItemHeading/icons.d.ts +0 -48
- package/dist/components/DropdownItemHeading/icons.d.ts.map +0 -1
- package/dist/components/DropdownItemHeading/index.d.ts +0 -4
- package/dist/components/DropdownItemHeading/index.d.ts.map +0 -1
- package/dist/components/Input/Input.d.ts +0 -40
- package/dist/components/Input/Input.d.ts.map +0 -1
- package/dist/components/Input/Input.types.d.ts +0 -71
- package/dist/components/Input/Input.types.d.ts.map +0 -1
- package/dist/components/Input/icons.d.ts +0 -15
- package/dist/components/Input/icons.d.ts.map +0 -1
- package/dist/components/Input/index.d.ts +0 -3
- package/dist/components/Input/index.d.ts.map +0 -1
- package/dist/components/LoginView/LoginView.d.ts +0 -36
- package/dist/components/LoginView/LoginView.d.ts.map +0 -1
- package/dist/components/LoginView/LoginView.types.d.ts +0 -46
- package/dist/components/LoginView/LoginView.types.d.ts.map +0 -1
- package/dist/components/LoginView/icons.d.ts +0 -18
- package/dist/components/LoginView/icons.d.ts.map +0 -1
- package/dist/components/LoginView/index.d.ts +0 -4
- package/dist/components/LoginView/index.d.ts.map +0 -1
- package/dist/components/Navbar/Navbar.d.ts +0 -63
- package/dist/components/Navbar/Navbar.d.ts.map +0 -1
- package/dist/components/Navbar/Navbar.types.d.ts +0 -194
- package/dist/components/Navbar/Navbar.types.d.ts.map +0 -1
- package/dist/components/Navbar/icons.d.ts +0 -12
- package/dist/components/Navbar/icons.d.ts.map +0 -1
- package/dist/components/Navbar/index.d.ts +0 -4
- package/dist/components/Navbar/index.d.ts.map +0 -1
- package/dist/components/NavigationBar/NavigationBar.d.ts +0 -75
- package/dist/components/NavigationBar/NavigationBar.d.ts.map +0 -1
- package/dist/components/NavigationBar/NavigationBar.types.d.ts +0 -63
- package/dist/components/NavigationBar/NavigationBar.types.d.ts.map +0 -1
- package/dist/components/NavigationBar/index.d.ts +0 -3
- package/dist/components/NavigationBar/index.d.ts.map +0 -1
- package/dist/components/NavigationRail/NavigationRail.d.ts +0 -7
- package/dist/components/NavigationRail/NavigationRail.d.ts.map +0 -1
- package/dist/components/NavigationRail/NavigationRail.types.d.ts +0 -92
- package/dist/components/NavigationRail/NavigationRail.types.d.ts.map +0 -1
- package/dist/components/NavigationRail/index.d.ts +0 -3
- package/dist/components/NavigationRail/index.d.ts.map +0 -1
- package/dist/components/NavigationRailCommercial/NavigationRailCommercial.d.ts +0 -122
- package/dist/components/NavigationRailCommercial/NavigationRailCommercial.d.ts.map +0 -1
- package/dist/components/NavigationRailCommercial/NavigationRailCommercial.types.d.ts +0 -139
- package/dist/components/NavigationRailCommercial/NavigationRailCommercial.types.d.ts.map +0 -1
- package/dist/components/NavigationRailCommercial/icons.d.ts +0 -33
- package/dist/components/NavigationRailCommercial/icons.d.ts.map +0 -1
- package/dist/components/NavigationRailCommercial/index.d.ts +0 -4
- package/dist/components/NavigationRailCommercial/index.d.ts.map +0 -1
- package/dist/components/NavigationRailItem/NavigationRailItem.d.ts +0 -90
- package/dist/components/NavigationRailItem/NavigationRailItem.d.ts.map +0 -1
- package/dist/components/NavigationRailItem/NavigationRailItem.types.d.ts +0 -162
- package/dist/components/NavigationRailItem/NavigationRailItem.types.d.ts.map +0 -1
- package/dist/components/NavigationRailItem/index.d.ts +0 -3
- package/dist/components/NavigationRailItem/index.d.ts.map +0 -1
- package/dist/components/NavigationRailPanel/NavigationRailPanel.d.ts +0 -124
- package/dist/components/NavigationRailPanel/NavigationRailPanel.d.ts.map +0 -1
- package/dist/components/NavigationRailPanel/NavigationRailPanel.types.d.ts +0 -154
- package/dist/components/NavigationRailPanel/NavigationRailPanel.types.d.ts.map +0 -1
- package/dist/components/NavigationRailPanel/index.d.ts +0 -3
- package/dist/components/NavigationRailPanel/index.d.ts.map +0 -1
- package/dist/components/NavigationRailTypes/NavigationRailTypes.d.ts +0 -99
- package/dist/components/NavigationRailTypes/NavigationRailTypes.d.ts.map +0 -1
- package/dist/components/NavigationRailTypes/NavigationRailTypes.types.d.ts +0 -152
- package/dist/components/NavigationRailTypes/NavigationRailTypes.types.d.ts.map +0 -1
- package/dist/components/NavigationRailTypes/icons.d.ts +0 -44
- package/dist/components/NavigationRailTypes/icons.d.ts.map +0 -1
- package/dist/components/NavigationRailTypes/index.d.ts +0 -4
- package/dist/components/NavigationRailTypes/index.d.ts.map +0 -1
- package/dist/components/Notification/Notification.d.ts +0 -52
- package/dist/components/Notification/Notification.d.ts.map +0 -1
- package/dist/components/Notification/Notification.types.d.ts +0 -138
- package/dist/components/Notification/Notification.types.d.ts.map +0 -1
- package/dist/components/Notification/index.d.ts +0 -3
- package/dist/components/Notification/index.d.ts.map +0 -1
- package/dist/components/POSConvention/POSConvention.d.ts +0 -55
- package/dist/components/POSConvention/POSConvention.d.ts.map +0 -1
- package/dist/components/POSConvention/POSConvention.types.d.ts +0 -37
- package/dist/components/POSConvention/POSConvention.types.d.ts.map +0 -1
- package/dist/components/POSConvention/icons.d.ts +0 -21
- package/dist/components/POSConvention/icons.d.ts.map +0 -1
- package/dist/components/POSConvention/index.d.ts +0 -4
- package/dist/components/POSConvention/index.d.ts.map +0 -1
- package/dist/components/POSLocationButton/POSLocationButton.d.ts +0 -73
- package/dist/components/POSLocationButton/POSLocationButton.d.ts.map +0 -1
- package/dist/components/POSLocationButton/POSLocationButton.types.d.ts +0 -75
- package/dist/components/POSLocationButton/POSLocationButton.types.d.ts.map +0 -1
- package/dist/components/POSLocationButton/icons.d.ts +0 -37
- package/dist/components/POSLocationButton/icons.d.ts.map +0 -1
- package/dist/components/POSLocationButton/index.d.ts +0 -4
- package/dist/components/POSLocationButton/index.d.ts.map +0 -1
- package/dist/components/POSNumberButton/POSNumberButton.d.ts +0 -61
- package/dist/components/POSNumberButton/POSNumberButton.d.ts.map +0 -1
- package/dist/components/POSNumberButton/POSNumberButton.types.d.ts +0 -43
- package/dist/components/POSNumberButton/POSNumberButton.types.d.ts.map +0 -1
- package/dist/components/POSNumberButton/index.d.ts +0 -3
- package/dist/components/POSNumberButton/index.d.ts.map +0 -1
- package/dist/components/POSProductButton/POSProductButton.d.ts +0 -59
- package/dist/components/POSProductButton/POSProductButton.d.ts.map +0 -1
- package/dist/components/POSProductButton/POSProductButton.types.d.ts +0 -40
- package/dist/components/POSProductButton/POSProductButton.types.d.ts.map +0 -1
- package/dist/components/POSProductButton/index.d.ts +0 -3
- package/dist/components/POSProductButton/index.d.ts.map +0 -1
- package/dist/components/POSProductCard/POSProductCard.d.ts +0 -68
- package/dist/components/POSProductCard/POSProductCard.d.ts.map +0 -1
- package/dist/components/POSProductCard/POSProductCard.types.d.ts +0 -67
- package/dist/components/POSProductCard/POSProductCard.types.d.ts.map +0 -1
- package/dist/components/POSProductCard/icons.d.ts +0 -10
- package/dist/components/POSProductCard/icons.d.ts.map +0 -1
- package/dist/components/POSProductCard/index.d.ts +0 -3
- package/dist/components/POSProductCard/index.d.ts.map +0 -1
- package/dist/components/POSProductSidebarItems/POSProductSidebarItems.d.ts +0 -57
- package/dist/components/POSProductSidebarItems/POSProductSidebarItems.d.ts.map +0 -1
- package/dist/components/POSProductSidebarItems/POSProductSidebarItems.types.d.ts +0 -85
- package/dist/components/POSProductSidebarItems/POSProductSidebarItems.types.d.ts.map +0 -1
- package/dist/components/POSProductSidebarItems/icons.d.ts +0 -9
- package/dist/components/POSProductSidebarItems/icons.d.ts.map +0 -1
- package/dist/components/POSProductSidebarItems/index.d.ts +0 -4
- package/dist/components/POSProductSidebarItems/index.d.ts.map +0 -1
- package/dist/components/POSTable/POSTable.d.ts +0 -75
- package/dist/components/POSTable/POSTable.d.ts.map +0 -1
- package/dist/components/POSTable/POSTable.types.d.ts +0 -71
- package/dist/components/POSTable/POSTable.types.d.ts.map +0 -1
- package/dist/components/POSTable/index.d.ts +0 -3
- package/dist/components/POSTable/index.d.ts.map +0 -1
- package/dist/components/Pagination/Pagination.d.ts +0 -29
- package/dist/components/Pagination/Pagination.d.ts.map +0 -1
- package/dist/components/Pagination/Pagination.types.d.ts +0 -79
- package/dist/components/Pagination/Pagination.types.d.ts.map +0 -1
- package/dist/components/Pagination/icons.d.ts +0 -18
- package/dist/components/Pagination/icons.d.ts.map +0 -1
- package/dist/components/Pagination/index.d.ts +0 -4
- package/dist/components/Pagination/index.d.ts.map +0 -1
- package/dist/components/Quantity/Quantity.d.ts +0 -38
- package/dist/components/Quantity/Quantity.d.ts.map +0 -1
- package/dist/components/Quantity/Quantity.types.d.ts +0 -59
- package/dist/components/Quantity/Quantity.types.d.ts.map +0 -1
- package/dist/components/Radio/Radio.d.ts +0 -45
- package/dist/components/Radio/Radio.d.ts.map +0 -1
- package/dist/components/Radio/Radio.types.d.ts +0 -115
- package/dist/components/Radio/Radio.types.d.ts.map +0 -1
- package/dist/components/Select/Select.d.ts +0 -37
- package/dist/components/Select/Select.d.ts.map +0 -1
- package/dist/components/Select/Select.types.d.ts +0 -124
- package/dist/components/Select/Select.types.d.ts.map +0 -1
- package/dist/components/Select/icons.d.ts +0 -20
- package/dist/components/Select/icons.d.ts.map +0 -1
- package/dist/components/Select/index.d.ts +0 -4
- package/dist/components/Select/index.d.ts.map +0 -1
- package/dist/components/SignUpView/SignUpView.d.ts +0 -38
- package/dist/components/SignUpView/SignUpView.d.ts.map +0 -1
- package/dist/components/SignUpView/SignUpView.types.d.ts +0 -51
- package/dist/components/SignUpView/SignUpView.types.d.ts.map +0 -1
- package/dist/components/SignUpView/icons.d.ts +0 -18
- package/dist/components/SignUpView/icons.d.ts.map +0 -1
- package/dist/components/SignUpView/index.d.ts +0 -4
- package/dist/components/SignUpView/index.d.ts.map +0 -1
- package/dist/components/Switch/Switch.d.ts +0 -46
- package/dist/components/Switch/Switch.d.ts.map +0 -1
- package/dist/components/Switch/Switch.types.d.ts +0 -58
- package/dist/components/Switch/Switch.types.d.ts.map +0 -1
- package/dist/components/Table/Table.d.ts +0 -64
- package/dist/components/Table/Table.d.ts.map +0 -1
- package/dist/components/Table/Table.types.d.ts +0 -173
- package/dist/components/Table/Table.types.d.ts.map +0 -1
- package/dist/components/Table/index.d.ts +0 -3
- package/dist/components/Table/index.d.ts.map +0 -1
- package/dist/components/Tabs/Tabs.d.ts +0 -76
- package/dist/components/Tabs/Tabs.d.ts.map +0 -1
- package/dist/components/Tabs/Tabs.types.d.ts +0 -107
- package/dist/components/Tabs/Tabs.types.d.ts.map +0 -1
- package/dist/components/Tabs/icons.d.ts +0 -45
- package/dist/components/Tabs/icons.d.ts.map +0 -1
- package/dist/components/Tabs/index.d.ts +0 -4
- package/dist/components/Tabs/index.d.ts.map +0 -1
- package/dist/components/Textarea/Textarea.d.ts +0 -38
- package/dist/components/Textarea/Textarea.d.ts.map +0 -1
- package/dist/components/Textarea/Textarea.types.d.ts +0 -46
- package/dist/components/Textarea/Textarea.types.d.ts.map +0 -1
- package/dist/context/ThemeContext.d.ts +0 -46
- package/dist/context/ThemeContext.d.ts.map +0 -1
- package/dist/context/index.d.ts +0 -2
- package/dist/context/index.d.ts.map +0 -1
- package/dist/index.d.ts +0 -88
- package/dist/index.d.ts.map +0 -1
- package/dist/siesa-ui-kit.cjs +0 -1474
- package/dist/siesa-ui-kit.cjs.map +0 -1
- package/dist/siesa-ui-kit.mjs +0 -9580
- package/dist/siesa-ui-kit.mjs.map +0 -1
- package/dist/views/LayoutCommercial/LayoutCommercial.d.ts +0 -48
- package/dist/views/LayoutCommercial/LayoutCommercial.d.ts.map +0 -1
- package/dist/views/LayoutCommercial/LayoutCommercial.types.d.ts +0 -49
- package/dist/views/LayoutCommercial/LayoutCommercial.types.d.ts.map +0 -1
- package/dist/views/LayoutCommercial/index.d.ts +0 -3
- package/dist/views/LayoutCommercial/index.d.ts.map +0 -1
- package/dist/views/ListView/ListView.d.ts +0 -47
- package/dist/views/ListView/ListView.d.ts.map +0 -1
- package/dist/views/ListView/ListView.types.d.ts +0 -177
- package/dist/views/ListView/ListView.types.d.ts.map +0 -1
- package/dist/views/ListView/icons.d.ts +0 -60
- package/dist/views/ListView/icons.d.ts.map +0 -1
- package/dist/views/ListView/index.d.ts +0 -3
- package/dist/views/ListView/index.d.ts.map +0 -1
- package/dist/views/LoginView/LoginView.d.ts +0 -36
- package/dist/views/LoginView/LoginView.d.ts.map +0 -1
- package/dist/views/LoginView/LoginView.types.d.ts +0 -46
- package/dist/views/LoginView/LoginView.types.d.ts.map +0 -1
- package/dist/views/LoginView/icons.d.ts +0 -18
- package/dist/views/LoginView/icons.d.ts.map +0 -1
- package/dist/views/LoginView/index.d.ts +0 -4
- package/dist/views/LoginView/index.d.ts.map +0 -1
- package/dist/views/ProductsView/ProductsView.d.ts +0 -56
- package/dist/views/ProductsView/ProductsView.d.ts.map +0 -1
- package/dist/views/ProductsView/ProductsView.types.d.ts +0 -184
- package/dist/views/ProductsView/ProductsView.types.d.ts.map +0 -1
- package/dist/views/ProductsView/icons.d.ts +0 -12
- package/dist/views/ProductsView/icons.d.ts.map +0 -1
- package/dist/views/ProductsView/index.d.ts +0 -3
- package/dist/views/ProductsView/index.d.ts.map +0 -1
- package/dist/views/RecoverPasswordView/RecoverPasswordView.d.ts +0 -34
- package/dist/views/RecoverPasswordView/RecoverPasswordView.d.ts.map +0 -1
- package/dist/views/RecoverPasswordView/RecoverPasswordView.types.d.ts +0 -50
- package/dist/views/RecoverPasswordView/RecoverPasswordView.types.d.ts.map +0 -1
- package/dist/views/RecoverPasswordView/icons.d.ts +0 -9
- package/dist/views/RecoverPasswordView/icons.d.ts.map +0 -1
- package/dist/views/RecoverPasswordView/index.d.ts +0 -3
- package/dist/views/RecoverPasswordView/index.d.ts.map +0 -1
- package/dist/views/SignUpView/SignUpView.d.ts +0 -38
- package/dist/views/SignUpView/SignUpView.d.ts.map +0 -1
- package/dist/views/SignUpView/SignUpView.types.d.ts +0 -51
- package/dist/views/SignUpView/SignUpView.types.d.ts.map +0 -1
- package/dist/views/SignUpView/icons.d.ts +0 -18
- package/dist/views/SignUpView/icons.d.ts.map +0 -1
- package/dist/views/SignUpView/index.d.ts +0 -4
- package/dist/views/SignUpView/index.d.ts.map +0 -1
- package/dist/views/TableLayoutView/TableLayoutView.d.ts +0 -46
- package/dist/views/TableLayoutView/TableLayoutView.d.ts.map +0 -1
- package/dist/views/TableLayoutView/TableLayoutView.types.d.ts +0 -170
- package/dist/views/TableLayoutView/TableLayoutView.types.d.ts.map +0 -1
- package/dist/views/TableLayoutView/icons.d.ts +0 -27
- package/dist/views/TableLayoutView/icons.d.ts.map +0 -1
- package/dist/views/TableLayoutView/index.d.ts +0 -3
- package/dist/views/TableLayoutView/index.d.ts.map +0 -1
- package/src/components/DropdownItemCollapsible/DropdownItemCollapsible.stories.tsx +0 -317
- package/src/components/DropdownItemCollapsible/DropdownItemCollapsible.tsx +0 -307
- package/src/components/DropdownItemCollapsible/DropdownItemCollapsible.types.ts +0 -136
- package/src/components/DropdownItemCollapsible/README.md +0 -264
- package/src/components/DropdownItemCollapsible/icons.tsx +0 -57
- package/src/components/DropdownItemCollapsible/index.ts +0 -12
- package/src/components/DropdownItemHeading/DropdownItemHeading.stories.tsx +0 -386
- package/src/components/DropdownItemHeading/DropdownItemHeading.tsx +0 -216
- package/src/components/DropdownItemHeading/DropdownItemHeading.types.ts +0 -93
- package/src/components/DropdownItemHeading/README.md +0 -573
- package/src/components/DropdownItemHeading/icons.tsx +0 -125
- package/src/components/DropdownItemHeading/index.ts +0 -3
- package/src/components/NavigationRailCommercial/NavigationRailCommercial.stories.tsx +0 -464
- package/src/components/NavigationRailCommercial/NavigationRailCommercial.tsx +0 -301
- package/src/components/NavigationRailCommercial/NavigationRailCommercial.types.ts +0 -162
- package/src/components/NavigationRailCommercial/README.md +0 -251
- package/src/components/NavigationRailCommercial/icons.tsx +0 -54
- package/src/components/NavigationRailCommercial/index.ts +0 -6
- package/src/components/NavigationRailItem/NavigationRailItem.stories.tsx +0 -667
- package/src/components/NavigationRailItem/NavigationRailItem.tsx +0 -314
- package/src/components/NavigationRailItem/NavigationRailItem.types.ts +0 -175
- package/src/components/NavigationRailItem/README.md +0 -476
- package/src/components/NavigationRailItem/index.ts +0 -2
- package/src/components/NavigationRailPanel/NavigationRailPanel.stories.tsx +0 -462
- package/src/components/NavigationRailPanel/NavigationRailPanel.tsx +0 -332
- package/src/components/NavigationRailPanel/NavigationRailPanel.types.ts +0 -178
- package/src/components/NavigationRailPanel/README.md +0 -461
- package/src/components/NavigationRailPanel/index.ts +0 -6
- package/src/components/NavigationRailTypes/NavigationRailTypes.stories.tsx +0 -682
- package/src/components/NavigationRailTypes/NavigationRailTypes.tsx +0 -363
- package/src/components/NavigationRailTypes/NavigationRailTypes.types.ts +0 -178
- package/src/components/NavigationRailTypes/README.md +0 -573
- package/src/components/NavigationRailTypes/icons.tsx +0 -76
- package/src/components/NavigationRailTypes/index.ts +0 -7
- package/src/views/LayoutCommercial/LayoutCommercial.stories.tsx +0 -374
- package/src/views/LayoutCommercial/LayoutCommercial.tsx +0 -125
- package/src/views/LayoutCommercial/LayoutCommercial.types.ts +0 -54
- package/src/views/LayoutCommercial/README.md +0 -286
- package/src/views/LayoutCommercial/index.ts +0 -2
- package/src/views/ListView/ListView.stories.tsx +0 -329
- package/src/views/ListView/ListView.tsx +0 -570
- package/src/views/ListView/ListView.types.ts +0 -211
- package/src/views/ListView/icons.tsx +0 -282
- package/src/views/ListView/index.ts +0 -11
- package/src/views/LoginView/LoginView.stories.tsx +0 -148
- package/src/views/LoginView/LoginView.tsx +0 -426
- package/src/views/LoginView/LoginView.types.ts +0 -52
- package/src/views/LoginView/README.md +0 -396
- package/src/views/LoginView/icons.tsx +0 -85
- package/src/views/LoginView/index.ts +0 -3
- package/src/views/SignUpView/SignUpView.stories.tsx +0 -129
- package/src/views/SignUpView/SignUpView.tsx +0 -503
- package/src/views/SignUpView/SignUpView.types.ts +0 -58
- package/src/views/SignUpView/icons.tsx +0 -71
- package/src/views/SignUpView/index.ts +0 -3
|
@@ -1,279 +1,279 @@
|
|
|
1
|
-
# Navbar
|
|
2
|
-
|
|
3
|
-
Barra de navegación principal del sistema de diseño Siesa UI Kit con soporte completo para responsive design y dark mode.
|
|
4
|
-
|
|
5
|
-
## Características
|
|
6
|
-
|
|
7
|
-
- **4 Variantes**: `responsive` (default), `desktop`, `tablet`, `mobile`
|
|
8
|
-
- **Dark Mode Completo**: Todos los elementos con tokens adaptativos
|
|
9
|
-
- **Tokens del Sistema**: NO colores hardcodeados
|
|
10
|
-
- **Focus Rings Adaptativos**: Para accesibilidad en light y dark mode
|
|
11
|
-
- **Logo Personalizable**: Acepta componente custom o usa logo por defecto
|
|
12
|
-
- **Badge de Ambiente**: Usa el componente Badge con color yellow del sistema
|
|
13
|
-
- **Notificaciones**: Badges con token `error-content` para consistencia
|
|
14
|
-
- **Dropdown de Usuario**: Avatar con nombre y email
|
|
15
|
-
- **Logo Siesa Trailing**: Opcional, solo en desktop
|
|
16
|
-
- **TypeScript Estricto**: Tipado completo con interfaces
|
|
17
|
-
- **Accesibilidad**: ARIA labels en todos los botones
|
|
18
|
-
- **Handlers de Eventos**: Callbacks para navegación, búsqueda, carrito y notificaciones
|
|
19
|
-
|
|
20
|
-
## Especificaciones de Figma
|
|
21
|
-
|
|
22
|
-
| Variante | Tamaño | Elementos |
|
|
23
|
-
|----------|--------|-----------|
|
|
24
|
-
| **Desktop** | 1360x64px | Botón nav, Logo business, Siesa logo, Nombre producto, Badge, Botones, Dropdown, Siesa logo trailing |
|
|
25
|
-
| **Tablet** | 1024x64px | Similar a desktop pero logos más pequeños, sin Siesa trailing |
|
|
26
|
-
| **Mobile** | 428x40px | Solo Siesa icono (30x30), Badge "Pruebas", Botón búsqueda, Avatar circular |
|
|
27
|
-
|
|
28
|
-
## Instalación
|
|
29
|
-
|
|
30
|
-
```tsx
|
|
31
|
-
import { Navbar } from '@/components/Navbar';
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
## Uso Básico
|
|
35
|
-
|
|
36
|
-
```tsx
|
|
37
|
-
<Navbar
|
|
38
|
-
productName="Mi Aplicación"
|
|
39
|
-
environmentBadge="Ambiente de Pruebas"
|
|
40
|
-
userDropdown={{
|
|
41
|
-
avatar: "/path/to/avatar.jpg",
|
|
42
|
-
name: "Juan Pérez",
|
|
43
|
-
email: "juan@ejemplo.com",
|
|
44
|
-
}}
|
|
45
|
-
/>
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
## Con Handlers de Eventos
|
|
49
|
-
|
|
50
|
-
```tsx
|
|
51
|
-
<Navbar
|
|
52
|
-
productName="Portal Empresarial"
|
|
53
|
-
environmentBadge="Ambiente de Pruebas"
|
|
54
|
-
userDropdown={{
|
|
55
|
-
avatar: "/path/to/avatar.jpg",
|
|
56
|
-
name: "María García",
|
|
57
|
-
email: "maria@miempresa.com",
|
|
58
|
-
onMenuClick: () => openUserMenu(),
|
|
59
|
-
}}
|
|
60
|
-
notifications={{
|
|
61
|
-
cart: 15,
|
|
62
|
-
bell: true,
|
|
63
|
-
}}
|
|
64
|
-
onNavigationClick={() => router.back()}
|
|
65
|
-
onSearchClick={() => openSearch()}
|
|
66
|
-
onCartClick={() => openCart()}
|
|
67
|
-
onNotificationsClick={() => openNotifications()}
|
|
68
|
-
/>
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
## Variantes de Dispositivo
|
|
72
|
-
|
|
73
|
-
### Desktop
|
|
74
|
-
|
|
75
|
-
```tsx
|
|
76
|
-
<Navbar
|
|
77
|
-
variant="desktop"
|
|
78
|
-
productName="Sistema de Gestión"
|
|
79
|
-
showTrailingSiesaLogo={true}
|
|
80
|
-
// ... resto de props
|
|
81
|
-
/>
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
### Tablet
|
|
85
|
-
|
|
86
|
-
```tsx
|
|
87
|
-
<Navbar
|
|
88
|
-
variant="tablet"
|
|
89
|
-
productName="Sistema de Gestión"
|
|
90
|
-
// ... resto de props
|
|
91
|
-
/>
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
### Mobile
|
|
95
|
-
|
|
96
|
-
```tsx
|
|
97
|
-
<Navbar
|
|
98
|
-
variant="mobile"
|
|
99
|
-
environmentBadge="Ambiente de Pruebas"
|
|
100
|
-
// productName se ignora en mobile
|
|
101
|
-
// ... resto de props
|
|
102
|
-
/>
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
## Props
|
|
106
|
-
|
|
107
|
-
### NavbarProps
|
|
108
|
-
|
|
109
|
-
| Prop | Tipo | Default | Descripción |
|
|
110
|
-
|------|------|---------|-------------|
|
|
111
|
-
| `logo` | `ReactNode` | Logo business | Logo del negocio/cliente (solo desktop/tablet) |
|
|
112
|
-
| `siesaLogo` | `ReactNode` | Logo Siesa | Logo de Siesa personalizado |
|
|
113
|
-
| `productName` | `string` | `'Nombre Producto'` | Nombre del producto (solo desktop/tablet) |
|
|
114
|
-
| `environmentBadge` | `string` | `undefined` | Texto del badge de ambiente |
|
|
115
|
-
| `userDropdown` | `UserDropdownProps` | `undefined` | Datos del dropdown de usuario |
|
|
116
|
-
| `actions` | `ReactNode` | `undefined` | Elementos adicionales en trailing |
|
|
117
|
-
| `notifications` | `NotificationsProps` | `undefined` | Configuración de badges |
|
|
118
|
-
| `className` | `string` | `''` | Clases CSS adicionales |
|
|
119
|
-
| `variant` | `NavbarVariant` | `'responsive'` | Modo de visualización |
|
|
120
|
-
| `hideActionButtons` | `boolean` | `false` | Ocultar botones de acción |
|
|
121
|
-
| `leadingAction` | `ReactNode` | `undefined` | Elemento leading personalizado |
|
|
122
|
-
| `showTrailingSiesaLogo` | `boolean` | `true` | Mostrar Siesa logo en trailing (solo desktop) |
|
|
123
|
-
| `onNavigationClick` | `() => void` | `undefined` | Handler para botón de navegación |
|
|
124
|
-
| `onSearchClick` | `() => void` | `undefined` | Handler para búsqueda (solo mobile) |
|
|
125
|
-
| `onCartClick` | `() => void` | `undefined` | Handler para carrito |
|
|
126
|
-
| `onNotificationsClick` | `() => void` | `undefined` | Handler para notificaciones |
|
|
127
|
-
|
|
128
|
-
### UserDropdownProps
|
|
129
|
-
|
|
130
|
-
```typescript
|
|
131
|
-
interface UserDropdownProps {
|
|
132
|
-
avatar: string; // URL del avatar (mínimo 80x80px para retina)
|
|
133
|
-
name: string; // Nombre del usuario
|
|
134
|
-
email?: string; // Email del usuario
|
|
135
|
-
role?: string; // Rol (alternativa a email)
|
|
136
|
-
onMenuClick?: () => void; // Handler para click
|
|
137
|
-
}
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
### NotificationsProps
|
|
141
|
-
|
|
142
|
-
```typescript
|
|
143
|
-
interface NotificationsProps {
|
|
144
|
-
cart?: number; // Número de items (>99 muestra "+99")
|
|
145
|
-
bell?: boolean; // Dot de notificación
|
|
146
|
-
}
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
### NavbarVariant
|
|
150
|
-
|
|
151
|
-
```typescript
|
|
152
|
-
type NavbarVariant = 'responsive' | 'desktop' | 'tablet' | 'mobile';
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
## Dark Mode
|
|
156
|
-
|
|
157
|
-
El componente se adapta automáticamente al dark mode usando la clase `.dark` en el elemento `<html>`.
|
|
158
|
-
|
|
159
|
-
### Tokens de Color
|
|
160
|
-
|
|
161
|
-
| Elemento | Light Token | Dark Token |
|
|
162
|
-
|----------|-------------|------------|
|
|
163
|
-
| **Fondo** | `bg-background-primary` | `dark:bg-dark-bg-primary` |
|
|
164
|
-
| **Texto principal** | `text-content-primary` | `dark:text-dark-content-primary` |
|
|
165
|
-
| **Texto secundario** | `text-content-secondary` | `dark:text-content-secondary` |
|
|
166
|
-
| **Bordes divider** | `bg-border-primary` | `dark:bg-dark-border-primary` |
|
|
167
|
-
| **Iconos acción** | `text-primary-custom-600` | `dark:text-primary-custom-600` |
|
|
168
|
-
| **Hover buttons** | `hover:bg-background-secondary` | `dark:hover:bg-dark-bg-secondary` |
|
|
169
|
-
| **Botón navegación** | `bg-primary-custom-600` | `dark:bg-dark-bg-inverse` |
|
|
170
|
-
| **Badge notificación** | `bg-error-content` | `dark:bg-error-content` |
|
|
171
|
-
| **Focus ring** | `focus:ring-primary-custom-400` | `dark:focus:ring-dark-border-custom` |
|
|
172
|
-
| **Focus offset** | `focus:ring-offset-2` | `dark:focus:ring-offset-dark-bg-primary` |
|
|
173
|
-
|
|
174
|
-
### Estados Interactivos
|
|
175
|
-
|
|
176
|
-
Todos los botones incluyen:
|
|
177
|
-
- **Hover**: Cambio de fondo adaptativo
|
|
178
|
-
- **Active**: `scale-95` para feedback visual
|
|
179
|
-
- **Focus**: Ring adaptativo con offset correcto
|
|
180
|
-
- **Transiciones**: `transition-all duration-150`
|
|
181
|
-
|
|
182
|
-
## Responsive Behavior
|
|
183
|
-
|
|
184
|
-
| Elemento | Desktop (lg:) | Tablet (md:) | Mobile |
|
|
185
|
-
|----------|---------------|--------------|--------|
|
|
186
|
-
| **Altura** | 64px | 64px | 40px |
|
|
187
|
-
| **Botón navegación** | Visible | Visible | Oculto |
|
|
188
|
-
| **Business Logo** | 168x30px | 140x25px | Oculto |
|
|
189
|
-
| **Siesa Logo Leading** | 120x30px | 100x25px | 30x30px (icono) |
|
|
190
|
-
| **Nombre producto** | Visible | Visible | Oculto |
|
|
191
|
-
| **Dividers** | Visibles | Visibles | Ocultos |
|
|
192
|
-
| **Badge ambiente** | Texto completo | Texto completo | "Pruebas" |
|
|
193
|
-
| **Botón búsqueda** | Oculto | Oculto | Visible |
|
|
194
|
-
| **Avatar** | 40x40 rounded-md | 40x40 rounded-md | 32x32 rounded-full |
|
|
195
|
-
| **Nombre/email** | Visibles | Visibles | Ocultos |
|
|
196
|
-
| **Chevron** | Visible | Visible | Oculto |
|
|
197
|
-
| **Siesa Logo Trailing** | Visible | Oculto | Oculto |
|
|
198
|
-
|
|
199
|
-
## Mejores Prácticas
|
|
200
|
-
|
|
201
|
-
### Hacer
|
|
202
|
-
|
|
203
|
-
1. Usar la variante `responsive` (default) para adaptación automática
|
|
204
|
-
2. Proporcionar siempre `userDropdown` para mostrar información del usuario
|
|
205
|
-
3. Usar avatares de alta resolución (mínimo 80x80px)
|
|
206
|
-
4. Mantener `productName` corto (idealmente <25 caracteres)
|
|
207
|
-
5. Actualizar `notifications` dinámicamente
|
|
208
|
-
6. Usar solo tokens del sistema para customización
|
|
209
|
-
7. Testear estados de focus con teclado (Tab)
|
|
210
|
-
8. Implementar handlers para interactividad
|
|
211
|
-
|
|
212
|
-
### Evitar
|
|
213
|
-
|
|
214
|
-
1. No forzar variantes a menos que sea necesario
|
|
215
|
-
2. No usar textos muy largos en `productName`
|
|
216
|
-
3. No olvidar `environmentBadge` en desarrollo/prueba
|
|
217
|
-
4. No mezclar el navbar con otros headers
|
|
218
|
-
5. No usar colores hardcodeados (hex)
|
|
219
|
-
6. No omitir handlers para elementos interactivos
|
|
220
|
-
|
|
221
|
-
## Archivos del Componente
|
|
222
|
-
|
|
223
|
-
```
|
|
224
|
-
src/components/Navbar/
|
|
225
|
-
├── Navbar.tsx # Componente principal
|
|
226
|
-
├── Navbar.types.ts # Tipos e interfaces
|
|
227
|
-
├── Navbar.stories.tsx # Stories de Storybook
|
|
228
|
-
├── icons.tsx # Iconos Heroicons Micro
|
|
229
|
-
├── index.ts # Exports
|
|
230
|
-
└── README.md # Documentación
|
|
231
|
-
```
|
|
232
|
-
|
|
233
|
-
## Referencias
|
|
234
|
-
|
|
235
|
-
- **Figma**: [Navbar Component](https://www.figma.com/design/5XNqf2YTxvwemxwo1LMQ6j/Siesa-UI-Kit?node-id=4278-18626&m=dev)
|
|
236
|
-
- **Docs**:
|
|
237
|
-
- `docs/colors.md` - Sistema de colores
|
|
238
|
-
- `docs/typography.md` - Sistema tipográfico
|
|
239
|
-
- `docs/spacing.md` - Sistema de espaciado
|
|
240
|
-
- `docs/shadows.md` - Sistema de sombras
|
|
241
|
-
- `docs/dark-mode-guide.md` - Guía de dark mode
|
|
242
|
-
|
|
243
|
-
## Changelog
|
|
244
|
-
|
|
245
|
-
### Version 1.2.0 (2025-12-02) - Corrección Completa Siesa UI Kit Specialist
|
|
246
|
-
|
|
247
|
-
**Nuevas características:**
|
|
248
|
-
- Variante `tablet` añadida para soporte completo responsive
|
|
249
|
-
- `showTrailingSiesaLogo` prop para controlar logo Siesa en trailing
|
|
250
|
-
- Handlers de eventos: `onNavigationClick`, `onSearchClick`, `onCartClick`, `onNotificationsClick`
|
|
251
|
-
- Tipos exportados: `NavbarVariant`, `UserDropdownProps`, `NotificationsProps`
|
|
252
|
-
|
|
253
|
-
**Correcciones:**
|
|
254
|
-
- Dark mode completo en todos los elementos con tokens del sistema
|
|
255
|
-
- Focus rings adaptativos para light y dark mode
|
|
256
|
-
- Botón de navegación con `shadow-button-inset` según Button de referencia
|
|
257
|
-
- Badge de ambiente usa componente Badge correctamente
|
|
258
|
-
- Hover states con tokens: `hover:bg-background-secondary` / `dark:hover:bg-dark-bg-secondary`
|
|
259
|
-
- Fondo del navbar con tokens: `bg-background-primary` / `dark:bg-dark-bg-primary`
|
|
260
|
-
|
|
261
|
-
**Mejoras:**
|
|
262
|
-
- JSDoc completo con referencias `@see` a documentación
|
|
263
|
-
- Stories actualizadas con ejemplos de todas las variantes
|
|
264
|
-
- README actualizado con tabla de tokens y especificaciones
|
|
265
|
-
|
|
266
|
-
### Version 1.1.0 (2025-11-19)
|
|
267
|
-
- Corrección de colores hardcodeados
|
|
268
|
-
- Añadidos focus rings adaptativos
|
|
269
|
-
- Active states con scale-95
|
|
270
|
-
|
|
271
|
-
### Version 1.0.0 (2025-11-18)
|
|
272
|
-
- Componente inicial con soporte responsive
|
|
273
|
-
- Dark mode básico
|
|
274
|
-
- Badges de notificación
|
|
275
|
-
|
|
276
|
-
---
|
|
277
|
-
|
|
278
|
-
**Mantenido por**: Equipo Siesa UI Kit
|
|
279
|
-
**Última actualización**: 2025-12-02
|
|
1
|
+
# Navbar
|
|
2
|
+
|
|
3
|
+
Barra de navegación principal del sistema de diseño Siesa UI Kit con soporte completo para responsive design y dark mode.
|
|
4
|
+
|
|
5
|
+
## Características
|
|
6
|
+
|
|
7
|
+
- **4 Variantes**: `responsive` (default), `desktop`, `tablet`, `mobile`
|
|
8
|
+
- **Dark Mode Completo**: Todos los elementos con tokens adaptativos
|
|
9
|
+
- **Tokens del Sistema**: NO colores hardcodeados
|
|
10
|
+
- **Focus Rings Adaptativos**: Para accesibilidad en light y dark mode
|
|
11
|
+
- **Logo Personalizable**: Acepta componente custom o usa logo por defecto
|
|
12
|
+
- **Badge de Ambiente**: Usa el componente Badge con color yellow del sistema
|
|
13
|
+
- **Notificaciones**: Badges con token `error-content` para consistencia
|
|
14
|
+
- **Dropdown de Usuario**: Avatar con nombre y email
|
|
15
|
+
- **Logo Siesa Trailing**: Opcional, solo en desktop
|
|
16
|
+
- **TypeScript Estricto**: Tipado completo con interfaces
|
|
17
|
+
- **Accesibilidad**: ARIA labels en todos los botones
|
|
18
|
+
- **Handlers de Eventos**: Callbacks para navegación, búsqueda, carrito y notificaciones
|
|
19
|
+
|
|
20
|
+
## Especificaciones de Figma
|
|
21
|
+
|
|
22
|
+
| Variante | Tamaño | Elementos |
|
|
23
|
+
|----------|--------|-----------|
|
|
24
|
+
| **Desktop** | 1360x64px | Botón nav, Logo business, Siesa logo, Nombre producto, Badge, Botones, Dropdown, Siesa logo trailing |
|
|
25
|
+
| **Tablet** | 1024x64px | Similar a desktop pero logos más pequeños, sin Siesa trailing |
|
|
26
|
+
| **Mobile** | 428x40px | Solo Siesa icono (30x30), Badge "Pruebas", Botón búsqueda, Avatar circular |
|
|
27
|
+
|
|
28
|
+
## Instalación
|
|
29
|
+
|
|
30
|
+
```tsx
|
|
31
|
+
import { Navbar } from '@/components/Navbar';
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Uso Básico
|
|
35
|
+
|
|
36
|
+
```tsx
|
|
37
|
+
<Navbar
|
|
38
|
+
productName="Mi Aplicación"
|
|
39
|
+
environmentBadge="Ambiente de Pruebas"
|
|
40
|
+
userDropdown={{
|
|
41
|
+
avatar: "/path/to/avatar.jpg",
|
|
42
|
+
name: "Juan Pérez",
|
|
43
|
+
email: "juan@ejemplo.com",
|
|
44
|
+
}}
|
|
45
|
+
/>
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Con Handlers de Eventos
|
|
49
|
+
|
|
50
|
+
```tsx
|
|
51
|
+
<Navbar
|
|
52
|
+
productName="Portal Empresarial"
|
|
53
|
+
environmentBadge="Ambiente de Pruebas"
|
|
54
|
+
userDropdown={{
|
|
55
|
+
avatar: "/path/to/avatar.jpg",
|
|
56
|
+
name: "María García",
|
|
57
|
+
email: "maria@miempresa.com",
|
|
58
|
+
onMenuClick: () => openUserMenu(),
|
|
59
|
+
}}
|
|
60
|
+
notifications={{
|
|
61
|
+
cart: 15,
|
|
62
|
+
bell: true,
|
|
63
|
+
}}
|
|
64
|
+
onNavigationClick={() => router.back()}
|
|
65
|
+
onSearchClick={() => openSearch()}
|
|
66
|
+
onCartClick={() => openCart()}
|
|
67
|
+
onNotificationsClick={() => openNotifications()}
|
|
68
|
+
/>
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Variantes de Dispositivo
|
|
72
|
+
|
|
73
|
+
### Desktop
|
|
74
|
+
|
|
75
|
+
```tsx
|
|
76
|
+
<Navbar
|
|
77
|
+
variant="desktop"
|
|
78
|
+
productName="Sistema de Gestión"
|
|
79
|
+
showTrailingSiesaLogo={true}
|
|
80
|
+
// ... resto de props
|
|
81
|
+
/>
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Tablet
|
|
85
|
+
|
|
86
|
+
```tsx
|
|
87
|
+
<Navbar
|
|
88
|
+
variant="tablet"
|
|
89
|
+
productName="Sistema de Gestión"
|
|
90
|
+
// ... resto de props
|
|
91
|
+
/>
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Mobile
|
|
95
|
+
|
|
96
|
+
```tsx
|
|
97
|
+
<Navbar
|
|
98
|
+
variant="mobile"
|
|
99
|
+
environmentBadge="Ambiente de Pruebas"
|
|
100
|
+
// productName se ignora en mobile
|
|
101
|
+
// ... resto de props
|
|
102
|
+
/>
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
## Props
|
|
106
|
+
|
|
107
|
+
### NavbarProps
|
|
108
|
+
|
|
109
|
+
| Prop | Tipo | Default | Descripción |
|
|
110
|
+
|------|------|---------|-------------|
|
|
111
|
+
| `logo` | `ReactNode` | Logo business | Logo del negocio/cliente (solo desktop/tablet) |
|
|
112
|
+
| `siesaLogo` | `ReactNode` | Logo Siesa | Logo de Siesa personalizado |
|
|
113
|
+
| `productName` | `string` | `'Nombre Producto'` | Nombre del producto (solo desktop/tablet) |
|
|
114
|
+
| `environmentBadge` | `string` | `undefined` | Texto del badge de ambiente |
|
|
115
|
+
| `userDropdown` | `UserDropdownProps` | `undefined` | Datos del dropdown de usuario |
|
|
116
|
+
| `actions` | `ReactNode` | `undefined` | Elementos adicionales en trailing |
|
|
117
|
+
| `notifications` | `NotificationsProps` | `undefined` | Configuración de badges |
|
|
118
|
+
| `className` | `string` | `''` | Clases CSS adicionales |
|
|
119
|
+
| `variant` | `NavbarVariant` | `'responsive'` | Modo de visualización |
|
|
120
|
+
| `hideActionButtons` | `boolean` | `false` | Ocultar botones de acción |
|
|
121
|
+
| `leadingAction` | `ReactNode` | `undefined` | Elemento leading personalizado |
|
|
122
|
+
| `showTrailingSiesaLogo` | `boolean` | `true` | Mostrar Siesa logo en trailing (solo desktop) |
|
|
123
|
+
| `onNavigationClick` | `() => void` | `undefined` | Handler para botón de navegación |
|
|
124
|
+
| `onSearchClick` | `() => void` | `undefined` | Handler para búsqueda (solo mobile) |
|
|
125
|
+
| `onCartClick` | `() => void` | `undefined` | Handler para carrito |
|
|
126
|
+
| `onNotificationsClick` | `() => void` | `undefined` | Handler para notificaciones |
|
|
127
|
+
|
|
128
|
+
### UserDropdownProps
|
|
129
|
+
|
|
130
|
+
```typescript
|
|
131
|
+
interface UserDropdownProps {
|
|
132
|
+
avatar: string; // URL del avatar (mínimo 80x80px para retina)
|
|
133
|
+
name: string; // Nombre del usuario
|
|
134
|
+
email?: string; // Email del usuario
|
|
135
|
+
role?: string; // Rol (alternativa a email)
|
|
136
|
+
onMenuClick?: () => void; // Handler para click
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### NotificationsProps
|
|
141
|
+
|
|
142
|
+
```typescript
|
|
143
|
+
interface NotificationsProps {
|
|
144
|
+
cart?: number; // Número de items (>99 muestra "+99")
|
|
145
|
+
bell?: boolean; // Dot de notificación
|
|
146
|
+
}
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### NavbarVariant
|
|
150
|
+
|
|
151
|
+
```typescript
|
|
152
|
+
type NavbarVariant = 'responsive' | 'desktop' | 'tablet' | 'mobile';
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
## Dark Mode
|
|
156
|
+
|
|
157
|
+
El componente se adapta automáticamente al dark mode usando la clase `.dark` en el elemento `<html>`.
|
|
158
|
+
|
|
159
|
+
### Tokens de Color
|
|
160
|
+
|
|
161
|
+
| Elemento | Light Token | Dark Token |
|
|
162
|
+
|----------|-------------|------------|
|
|
163
|
+
| **Fondo** | `bg-background-primary` | `dark:bg-dark-bg-primary` |
|
|
164
|
+
| **Texto principal** | `text-content-primary` | `dark:text-dark-content-primary` |
|
|
165
|
+
| **Texto secundario** | `text-content-secondary` | `dark:text-content-secondary` |
|
|
166
|
+
| **Bordes divider** | `bg-border-primary` | `dark:bg-dark-border-primary` |
|
|
167
|
+
| **Iconos acción** | `text-primary-custom-600` | `dark:text-primary-custom-600` |
|
|
168
|
+
| **Hover buttons** | `hover:bg-background-secondary` | `dark:hover:bg-dark-bg-secondary` |
|
|
169
|
+
| **Botón navegación** | `bg-primary-custom-600` | `dark:bg-dark-bg-inverse` |
|
|
170
|
+
| **Badge notificación** | `bg-error-content` | `dark:bg-error-content` |
|
|
171
|
+
| **Focus ring** | `focus:ring-primary-custom-400` | `dark:focus:ring-dark-border-custom` |
|
|
172
|
+
| **Focus offset** | `focus:ring-offset-2` | `dark:focus:ring-offset-dark-bg-primary` |
|
|
173
|
+
|
|
174
|
+
### Estados Interactivos
|
|
175
|
+
|
|
176
|
+
Todos los botones incluyen:
|
|
177
|
+
- **Hover**: Cambio de fondo adaptativo
|
|
178
|
+
- **Active**: `scale-95` para feedback visual
|
|
179
|
+
- **Focus**: Ring adaptativo con offset correcto
|
|
180
|
+
- **Transiciones**: `transition-all duration-150`
|
|
181
|
+
|
|
182
|
+
## Responsive Behavior
|
|
183
|
+
|
|
184
|
+
| Elemento | Desktop (lg:) | Tablet (md:) | Mobile |
|
|
185
|
+
|----------|---------------|--------------|--------|
|
|
186
|
+
| **Altura** | 64px | 64px | 40px |
|
|
187
|
+
| **Botón navegación** | Visible | Visible | Oculto |
|
|
188
|
+
| **Business Logo** | 168x30px | 140x25px | Oculto |
|
|
189
|
+
| **Siesa Logo Leading** | 120x30px | 100x25px | 30x30px (icono) |
|
|
190
|
+
| **Nombre producto** | Visible | Visible | Oculto |
|
|
191
|
+
| **Dividers** | Visibles | Visibles | Ocultos |
|
|
192
|
+
| **Badge ambiente** | Texto completo | Texto completo | "Pruebas" |
|
|
193
|
+
| **Botón búsqueda** | Oculto | Oculto | Visible |
|
|
194
|
+
| **Avatar** | 40x40 rounded-md | 40x40 rounded-md | 32x32 rounded-full |
|
|
195
|
+
| **Nombre/email** | Visibles | Visibles | Ocultos |
|
|
196
|
+
| **Chevron** | Visible | Visible | Oculto |
|
|
197
|
+
| **Siesa Logo Trailing** | Visible | Oculto | Oculto |
|
|
198
|
+
|
|
199
|
+
## Mejores Prácticas
|
|
200
|
+
|
|
201
|
+
### Hacer
|
|
202
|
+
|
|
203
|
+
1. Usar la variante `responsive` (default) para adaptación automática
|
|
204
|
+
2. Proporcionar siempre `userDropdown` para mostrar información del usuario
|
|
205
|
+
3. Usar avatares de alta resolución (mínimo 80x80px)
|
|
206
|
+
4. Mantener `productName` corto (idealmente <25 caracteres)
|
|
207
|
+
5. Actualizar `notifications` dinámicamente
|
|
208
|
+
6. Usar solo tokens del sistema para customización
|
|
209
|
+
7. Testear estados de focus con teclado (Tab)
|
|
210
|
+
8. Implementar handlers para interactividad
|
|
211
|
+
|
|
212
|
+
### Evitar
|
|
213
|
+
|
|
214
|
+
1. No forzar variantes a menos que sea necesario
|
|
215
|
+
2. No usar textos muy largos en `productName`
|
|
216
|
+
3. No olvidar `environmentBadge` en desarrollo/prueba
|
|
217
|
+
4. No mezclar el navbar con otros headers
|
|
218
|
+
5. No usar colores hardcodeados (hex)
|
|
219
|
+
6. No omitir handlers para elementos interactivos
|
|
220
|
+
|
|
221
|
+
## Archivos del Componente
|
|
222
|
+
|
|
223
|
+
```
|
|
224
|
+
src/components/Navbar/
|
|
225
|
+
├── Navbar.tsx # Componente principal
|
|
226
|
+
├── Navbar.types.ts # Tipos e interfaces
|
|
227
|
+
├── Navbar.stories.tsx # Stories de Storybook
|
|
228
|
+
├── icons.tsx # Iconos Heroicons Micro
|
|
229
|
+
├── index.ts # Exports
|
|
230
|
+
└── README.md # Documentación
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
## Referencias
|
|
234
|
+
|
|
235
|
+
- **Figma**: [Navbar Component](https://www.figma.com/design/5XNqf2YTxvwemxwo1LMQ6j/Siesa-UI-Kit?node-id=4278-18626&m=dev)
|
|
236
|
+
- **Docs**:
|
|
237
|
+
- `docs/colors.md` - Sistema de colores
|
|
238
|
+
- `docs/typography.md` - Sistema tipográfico
|
|
239
|
+
- `docs/spacing.md` - Sistema de espaciado
|
|
240
|
+
- `docs/shadows.md` - Sistema de sombras
|
|
241
|
+
- `docs/dark-mode-guide.md` - Guía de dark mode
|
|
242
|
+
|
|
243
|
+
## Changelog
|
|
244
|
+
|
|
245
|
+
### Version 1.2.0 (2025-12-02) - Corrección Completa Siesa UI Kit Specialist
|
|
246
|
+
|
|
247
|
+
**Nuevas características:**
|
|
248
|
+
- Variante `tablet` añadida para soporte completo responsive
|
|
249
|
+
- `showTrailingSiesaLogo` prop para controlar logo Siesa en trailing
|
|
250
|
+
- Handlers de eventos: `onNavigationClick`, `onSearchClick`, `onCartClick`, `onNotificationsClick`
|
|
251
|
+
- Tipos exportados: `NavbarVariant`, `UserDropdownProps`, `NotificationsProps`
|
|
252
|
+
|
|
253
|
+
**Correcciones:**
|
|
254
|
+
- Dark mode completo en todos los elementos con tokens del sistema
|
|
255
|
+
- Focus rings adaptativos para light y dark mode
|
|
256
|
+
- Botón de navegación con `shadow-button-inset` según Button de referencia
|
|
257
|
+
- Badge de ambiente usa componente Badge correctamente
|
|
258
|
+
- Hover states con tokens: `hover:bg-background-secondary` / `dark:hover:bg-dark-bg-secondary`
|
|
259
|
+
- Fondo del navbar con tokens: `bg-background-primary` / `dark:bg-dark-bg-primary`
|
|
260
|
+
|
|
261
|
+
**Mejoras:**
|
|
262
|
+
- JSDoc completo con referencias `@see` a documentación
|
|
263
|
+
- Stories actualizadas con ejemplos de todas las variantes
|
|
264
|
+
- README actualizado con tabla de tokens y especificaciones
|
|
265
|
+
|
|
266
|
+
### Version 1.1.0 (2025-11-19)
|
|
267
|
+
- Corrección de colores hardcodeados
|
|
268
|
+
- Añadidos focus rings adaptativos
|
|
269
|
+
- Active states con scale-95
|
|
270
|
+
|
|
271
|
+
### Version 1.0.0 (2025-11-18)
|
|
272
|
+
- Componente inicial con soporte responsive
|
|
273
|
+
- Dark mode básico
|
|
274
|
+
- Badges de notificación
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
**Mantenido por**: Equipo Siesa UI Kit
|
|
279
|
+
**Última actualización**: 2025-12-02
|