siesa-ui-kit 1.0.3 → 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 +28 -54
- package/claude/agents/siesa-ui-kit-specialist.md +2401 -0
- package/claude/prompts/component-template.md +121 -0
- package/claude/settings.local.json +61 -0
- package/docs/border-radius.md +1261 -0
- package/docs/colors.md +832 -0
- package/docs/dark-mode-guide.md +1426 -0
- package/docs/filters.md +1243 -0
- package/docs/icons.md +1283 -0
- package/docs/shadows.md +1377 -0
- package/docs/spacing.md +1684 -0
- package/docs/typography.md +1268 -0
- package/package.json +14 -34
- package/postcss.config.cjs +6 -0
- package/public/,Business Logo.png +0 -0
- package/public/.Siesa Logo.png +0 -0
- package/public/bg_siesa.png +0 -0
- package/public/siesa_logo_mobile.png +0 -0
- package/public/vite.svg +1 -0
- package/src/App.css +42 -0
- package/src/App.tsx +8 -0
- package/src/ButtonTest.tsx +147 -0
- package/src/assets/fonts/README.md +261 -0
- package/src/assets/fonts/SiesaBT/SiesaBT-Bold.otf +0 -0
- package/src/assets/fonts/SiesaBT/SiesaBT-Light.otf +0 -0
- package/src/assets/fonts/SiesaBT/SiesaBT-Regular.otf +0 -0
- package/src/assets/react.svg +1 -0
- package/src/components/Alert/Alert.stories.tsx +332 -0
- package/src/components/Alert/Alert.tsx +106 -0
- package/src/components/Alert/Alert.types.ts +54 -0
- package/src/components/Avatar/Avatar.stories.tsx +494 -0
- package/src/components/Avatar/Avatar.tsx +143 -0
- package/src/components/Avatar/Avatar.types.ts +53 -0
- package/src/components/Badge/Badge.stories.tsx +339 -0
- package/src/components/Badge/Badge.tsx +278 -0
- package/src/components/Badge/Badge.types.ts +58 -0
- package/src/components/Button/Button.stories.tsx +950 -0
- package/src/components/Button/Button.tsx +337 -0
- package/src/components/Button/Button.types.ts +180 -0
- package/src/components/Button/icons.tsx +87 -0
- package/{dist/components/Button/index.d.ts → src/components/Button/index.ts} +3 -4
- package/src/components/Checkbox/Checkbox.stories.tsx +453 -0
- package/src/components/Checkbox/Checkbox.tsx +208 -0
- package/src/components/Checkbox/Checkbox.types.ts +61 -0
- package/src/components/DescriptionList/DescriptionList.stories.tsx +250 -0
- package/src/components/DescriptionList/DescriptionList.tsx +96 -0
- package/src/components/DescriptionList/DescriptionList.types.ts +29 -0
- package/src/components/Divider/Divider.stories.tsx +263 -0
- package/src/components/Divider/Divider.tsx +80 -0
- package/src/components/Divider/Divider.types.ts +24 -0
- package/src/components/Dropdown/Dropdown.stories.tsx +552 -0
- package/src/components/Dropdown/Dropdown.tsx +422 -0
- package/src/components/Dropdown/Dropdown.types.ts +146 -0
- package/src/components/Dropdown/README.md +266 -0
- package/src/components/Dropdown/icons.tsx +72 -0
- package/{dist/components/Dropdown/index.d.ts → src/components/Dropdown/index.ts} +8 -4
- package/src/components/Input/Input.stories.tsx +583 -0
- package/src/components/Input/Input.tsx +204 -0
- package/src/components/Input/Input.types.ts +80 -0
- package/src/components/Input/icons.tsx +145 -0
- package/{dist/components/Input/index.d.ts → src/components/Input/index.ts} +2 -3
- package/src/components/LoginView/LoginView.stories.tsx +148 -0
- package/src/components/LoginView/LoginView.tsx +426 -0
- package/src/components/LoginView/LoginView.types.ts +52 -0
- package/src/components/LoginView/README.md +396 -0
- package/src/components/LoginView/icons.tsx +85 -0
- package/{dist/components/LoginView/index.d.ts → src/components/LoginView/index.ts} +3 -4
- package/src/components/Navbar/Navbar.stories.tsx +810 -0
- package/src/components/Navbar/Navbar.tsx +755 -0
- package/src/components/Navbar/Navbar.types.ts +219 -0
- package/src/components/Navbar/README.md +279 -0
- package/src/components/Navbar/icons.tsx +102 -0
- package/src/components/Navbar/index.ts +8 -0
- package/src/components/NavigationBar/NavigationBar.stories.tsx +406 -0
- package/src/components/NavigationBar/NavigationBar.tsx +246 -0
- package/src/components/NavigationBar/NavigationBar.types.ts +74 -0
- package/src/components/NavigationBar/README.md +469 -0
- package/{dist/components/NavigationBar/index.d.ts → src/components/NavigationBar/index.ts} +2 -3
- package/src/components/NavigationRail/NavigationRail.stories.tsx +417 -0
- package/src/components/NavigationRail/NavigationRail.tsx +418 -0
- package/src/components/NavigationRail/NavigationRail.types.ts +109 -0
- package/src/components/NavigationRail/README.md +224 -0
- package/{dist/components/NavigationRail/index.d.ts → src/components/NavigationRail/index.ts} +2 -3
- package/src/components/Notification/Notification.stories.tsx +513 -0
- package/src/components/Notification/Notification.tsx +145 -0
- package/src/components/Notification/Notification.types.ts +142 -0
- package/src/components/Notification/README.md +409 -0
- package/{dist/components/Notification/index.d.ts → src/components/Notification/index.ts} +3 -3
- package/src/components/POSConvention/POSConvention.stories.tsx +235 -0
- package/src/components/POSConvention/POSConvention.tsx +129 -0
- package/{dist/components/POSConvention/POSConvention.types.d.ts → src/components/POSConvention/POSConvention.types.ts} +38 -37
- package/src/components/POSConvention/README.md +123 -0
- package/src/components/POSConvention/icons.tsx +45 -0
- package/{dist/components/POSConvention/index.d.ts → src/components/POSConvention/index.ts} +3 -4
- package/src/components/POSLocationButton/POSLocationButton.stories.tsx +531 -0
- package/src/components/POSLocationButton/POSLocationButton.tsx +247 -0
- package/src/components/POSLocationButton/POSLocationButton.types.ts +87 -0
- package/src/components/POSLocationButton/README.md +253 -0
- package/src/components/POSLocationButton/icons.tsx +120 -0
- package/src/components/POSLocationButton/index.ts +14 -0
- package/src/components/POSNumberButton/POSNumberButton.stories.tsx +415 -0
- package/src/components/POSNumberButton/POSNumberButton.tsx +179 -0
- package/src/components/POSNumberButton/POSNumberButton.types.ts +51 -0
- package/src/components/POSNumberButton/README.md +321 -0
- package/{dist/components/POSNumberButton/index.d.ts → src/components/POSNumberButton/index.ts} +3 -3
- package/src/components/POSProductButton/POSProductButton.stories.tsx +318 -0
- package/src/components/POSProductButton/POSProductButton.tsx +152 -0
- package/src/components/POSProductButton/POSProductButton.types.ts +46 -0
- package/src/components/POSProductButton/README.md +269 -0
- package/{dist/components/POSProductButton/index.d.ts → src/components/POSProductButton/index.ts} +2 -3
- package/src/components/POSProductCard/POSProductCard.stories.tsx +642 -0
- package/src/components/POSProductCard/POSProductCard.tsx +208 -0
- package/src/components/POSProductCard/POSProductCard.types.ts +76 -0
- package/src/components/POSProductCard/README.md +179 -0
- package/src/components/POSProductCard/icons.tsx +26 -0
- package/{dist/components/POSProductCard/index.d.ts → src/components/POSProductCard/index.ts} +2 -3
- package/src/components/POSProductSidebarItems/POSProductSidebarItems.stories.tsx +753 -0
- package/src/components/POSProductSidebarItems/POSProductSidebarItems.tsx +332 -0
- package/src/components/POSProductSidebarItems/POSProductSidebarItems.types.ts +119 -0
- package/src/components/POSProductSidebarItems/README.md +198 -0
- package/src/components/POSProductSidebarItems/icons.tsx +21 -0
- package/{dist/components/POSProductSidebarItems/index.d.ts → src/components/POSProductSidebarItems/index.ts} +3 -4
- package/src/components/POSTable/POSTable.stories.tsx +737 -0
- package/src/components/POSTable/POSTable.tsx +401 -0
- package/src/components/POSTable/POSTable.types.ts +83 -0
- package/src/components/POSTable/README.md +286 -0
- package/src/components/POSTable/index.ts +7 -0
- package/src/components/Pagination/Pagination.stories.tsx +555 -0
- package/src/components/Pagination/Pagination.tsx +286 -0
- package/src/components/Pagination/Pagination.types.ts +93 -0
- package/src/components/Pagination/README.md +298 -0
- package/src/components/Pagination/icons.tsx +47 -0
- package/{dist/components/Pagination/index.d.ts → src/components/Pagination/index.ts} +3 -4
- package/src/components/Quantity/Quantity.stories.tsx +457 -0
- package/src/components/Quantity/Quantity.tsx +289 -0
- package/src/components/Quantity/Quantity.types.ts +70 -0
- package/src/components/Radio/Radio.stories.tsx +523 -0
- package/src/components/Radio/Radio.tsx +170 -0
- package/src/components/Radio/Radio.types.ts +122 -0
- package/src/components/Select/README.md +299 -0
- package/src/components/Select/Select.stories.tsx +673 -0
- package/src/components/Select/Select.tsx +454 -0
- package/src/components/Select/Select.types.ts +148 -0
- package/src/components/Select/icons.tsx +50 -0
- package/{dist/components/Select/index.d.ts → src/components/Select/index.ts} +3 -4
- package/src/components/SignUpView/SignUpView.stories.tsx +129 -0
- package/src/components/SignUpView/SignUpView.tsx +503 -0
- package/src/components/SignUpView/SignUpView.types.ts +58 -0
- package/src/components/SignUpView/icons.tsx +71 -0
- package/{dist/components/SignUpView/index.d.ts → src/components/SignUpView/index.ts} +3 -4
- package/src/components/Switch/README.md +112 -0
- package/src/components/Switch/Switch.stories.tsx +550 -0
- package/src/components/Switch/Switch.tsx +246 -0
- package/src/components/Switch/Switch.types.ts +67 -0
- package/src/components/Table/README.md +369 -0
- package/src/components/Table/Table.stories.tsx +805 -0
- package/src/components/Table/Table.tsx +688 -0
- package/src/components/Table/Table.types.ts +204 -0
- package/src/components/Table/index.ts +9 -0
- package/src/components/Tabs/README.md +201 -0
- package/src/components/Tabs/Tabs.stories.tsx +580 -0
- package/src/components/Tabs/Tabs.tsx +356 -0
- package/src/components/Tabs/Tabs.types.ts +127 -0
- package/src/components/Tabs/icons.tsx +129 -0
- package/src/components/Tabs/index.ts +11 -0
- package/src/components/Textarea/Textarea.stories.tsx +535 -0
- package/src/components/Textarea/Textarea.tsx +188 -0
- package/src/components/Textarea/Textarea.types.ts +54 -0
- package/src/context/ThemeContext.tsx +99 -0
- package/{dist/context/index.d.ts → src/context/index.ts} +1 -2
- package/src/index.css +29 -0
- package/src/index.ts +39 -0
- package/src/main.tsx +10 -0
- package/src/views/ProductsView/ProductsView.stories.tsx +344 -0
- package/src/views/ProductsView/ProductsView.tsx +480 -0
- package/src/views/ProductsView/ProductsView.types.ts +238 -0
- package/src/views/ProductsView/README.md +312 -0
- package/src/views/ProductsView/icons.tsx +38 -0
- package/src/views/ProductsView/index.ts +8 -0
- package/src/views/RecoverPasswordView/README.md +269 -0
- package/src/views/RecoverPasswordView/RecoverPasswordView.stories.tsx +131 -0
- package/src/views/RecoverPasswordView/RecoverPasswordView.tsx +376 -0
- package/src/views/RecoverPasswordView/RecoverPasswordView.types.ts +56 -0
- package/src/views/RecoverPasswordView/icons.tsx +17 -0
- package/{dist/views/RecoverPasswordView/index.d.ts → src/views/RecoverPasswordView/index.ts} +2 -3
- package/src/views/TableLayoutView/README.md +268 -0
- package/src/views/TableLayoutView/TableLayoutView.stories.tsx +235 -0
- package/src/views/TableLayoutView/TableLayoutView.tsx +461 -0
- package/src/views/TableLayoutView/TableLayoutView.types.ts +209 -0
- package/src/views/TableLayoutView/icons.tsx +113 -0
- package/src/views/TableLayoutView/index.ts +6 -0
- package/storybook/main.ts +20 -0
- package/storybook/preview.tsx +84 -0
- package/storybook/vitest.setup.ts +7 -0
- package/tailwind.config.js +128 -0
- 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 -26
- package/dist/components/Button/icons.d.ts.map +0 -1
- 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.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 -95
- 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.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.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.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.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 -155
- 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 -111
- package/dist/components/NavigationRailTypes/NavigationRailTypes.types.d.ts.map +0 -1
- package/dist/components/NavigationRailTypes/icons.d.ts +0 -58
- 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.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.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.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.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.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.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.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.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 -16
- package/dist/components/Select/icons.d.ts.map +0 -1
- 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.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.map +0 -1
- package/dist/index.d.ts +0 -56
- package/dist/index.d.ts.map +0 -1
- package/dist/siesa-ui-kit.cjs +0 -1260
- package/dist/siesa-ui-kit.cjs.map +0 -1
- package/dist/siesa-ui-kit.mjs +0 -4496
- package/dist/siesa-ui-kit.mjs.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.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
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
# RecoverPasswordView
|
|
2
|
+
|
|
3
|
+
Vista de recuperación de contraseña del sistema Siesa UI Kit.
|
|
4
|
+
|
|
5
|
+
## Descripción
|
|
6
|
+
|
|
7
|
+
Vista completa que permite a los usuarios restablecer su contraseña mediante el envío de instrucciones a su correo electrónico. Incluye formulario de validación, mensajes de estado y navegación al login.
|
|
8
|
+
|
|
9
|
+
## Características
|
|
10
|
+
|
|
11
|
+
- ✅ **Responsive Design**: Adapta automáticamente entre mobile y desktop
|
|
12
|
+
- ✅ **Dark Mode**: Soporte completo para modo oscuro
|
|
13
|
+
- ✅ **Validación de Email**: Validación básica del formato de email
|
|
14
|
+
- ✅ **Estados**: Loading, error, success
|
|
15
|
+
- ✅ **Accesibilidad**: ARIA labels y manejo semántico de formulario
|
|
16
|
+
- ✅ **Fondo Decorativo**: Opcional, solo visible en desktop
|
|
17
|
+
- ✅ **TypeScript**: Tipos estrictos para todas las props
|
|
18
|
+
|
|
19
|
+
## Props
|
|
20
|
+
|
|
21
|
+
| Prop | Tipo | Default | Descripción |
|
|
22
|
+
|------|------|---------|-------------|
|
|
23
|
+
| `onSubmit` | `(email: string) => void` | `undefined` | Función que se ejecuta al enviar el formulario |
|
|
24
|
+
| `onBackToLogin` | `() => void` | `undefined` | Función que se ejecuta al hacer clic en "Iniciar Sesión" |
|
|
25
|
+
| `isLoading` | `boolean` | `false` | Si el formulario está en estado de carga |
|
|
26
|
+
| `errorMessage` | `string` | `undefined` | Mensaje de error general a mostrar |
|
|
27
|
+
| `successMessage` | `string` | `undefined` | Mensaje de éxito cuando el email fue enviado |
|
|
28
|
+
| `className` | `string` | `''` | Clases CSS adicionales |
|
|
29
|
+
| `showBackground` | `boolean` | `true` | Si se muestra el fondo decorativo |
|
|
30
|
+
| `variant` | `'responsive' \| 'mobile' \| 'desktop'` | `'responsive'` | Variante de visualización |
|
|
31
|
+
|
|
32
|
+
## Composición
|
|
33
|
+
|
|
34
|
+
Esta vista utiliza los siguientes elementos del sistema:
|
|
35
|
+
|
|
36
|
+
### Elementos visuales
|
|
37
|
+
- **Logo Siesa**: 200x50px
|
|
38
|
+
- **Card contenedor**: 400px width (desktop), full width (mobile)
|
|
39
|
+
- **Fondo decorativo**: Imagen con overlay azul (#dbeefe)
|
|
40
|
+
|
|
41
|
+
### Campos de formulario
|
|
42
|
+
- **Input de Email**: Con icono de sobre, validación y estados de error
|
|
43
|
+
|
|
44
|
+
### Botones
|
|
45
|
+
- **Botón principal**: "Reestablecer Contraseña" (primary blue button)
|
|
46
|
+
- **Botón secundario**: "Iniciar Sesión" (outline button)
|
|
47
|
+
|
|
48
|
+
## Uso Básico
|
|
49
|
+
|
|
50
|
+
```tsx
|
|
51
|
+
import { RecoverPasswordView } from '@/views/RecoverPasswordView';
|
|
52
|
+
|
|
53
|
+
function App() {
|
|
54
|
+
const handleSubmit = (email: string) => {
|
|
55
|
+
// Lógica para enviar email de recuperación
|
|
56
|
+
console.log('Recover password for:', email);
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
const handleBackToLogin = () => {
|
|
60
|
+
// Navegar al login
|
|
61
|
+
console.log('Back to login');
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
return (
|
|
65
|
+
<RecoverPasswordView
|
|
66
|
+
onSubmit={handleSubmit}
|
|
67
|
+
onBackToLogin={handleBackToLogin}
|
|
68
|
+
/>
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Estados
|
|
74
|
+
|
|
75
|
+
### Loading
|
|
76
|
+
|
|
77
|
+
```tsx
|
|
78
|
+
<RecoverPasswordView
|
|
79
|
+
isLoading={true}
|
|
80
|
+
onSubmit={handleSubmit}
|
|
81
|
+
onBackToLogin={handleBackToLogin}
|
|
82
|
+
/>
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Con Error
|
|
86
|
+
|
|
87
|
+
```tsx
|
|
88
|
+
<RecoverPasswordView
|
|
89
|
+
errorMessage="No se pudo enviar el correo. Por favor, intenta nuevamente."
|
|
90
|
+
onSubmit={handleSubmit}
|
|
91
|
+
onBackToLogin={handleBackToLogin}
|
|
92
|
+
/>
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### Con Éxito
|
|
96
|
+
|
|
97
|
+
```tsx
|
|
98
|
+
<RecoverPasswordView
|
|
99
|
+
successMessage="Se han enviado las instrucciones a tu correo electrónico."
|
|
100
|
+
onSubmit={handleSubmit}
|
|
101
|
+
onBackToLogin={handleBackToLogin}
|
|
102
|
+
/>
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### Sin Fondo
|
|
106
|
+
|
|
107
|
+
```tsx
|
|
108
|
+
<RecoverPasswordView
|
|
109
|
+
showBackground={false}
|
|
110
|
+
onSubmit={handleSubmit}
|
|
111
|
+
onBackToLogin={handleBackToLogin}
|
|
112
|
+
/>
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## Variantes
|
|
116
|
+
|
|
117
|
+
### Responsive (Default)
|
|
118
|
+
|
|
119
|
+
Adapta automáticamente según el viewport:
|
|
120
|
+
- **Mobile** (< 768px): Full width, sin sombras, sin bordes redondeados
|
|
121
|
+
- **Desktop** (≥ 768px): Card de 400px centrado, con sombras y bordes redondeados
|
|
122
|
+
|
|
123
|
+
```tsx
|
|
124
|
+
<RecoverPasswordView variant="responsive" />
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Mobile (Forzado)
|
|
128
|
+
|
|
129
|
+
Fuerza la visualización móvil en cualquier viewport:
|
|
130
|
+
|
|
131
|
+
```tsx
|
|
132
|
+
<RecoverPasswordView variant="mobile" />
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
### Desktop (Forzado)
|
|
136
|
+
|
|
137
|
+
Fuerza la visualización desktop en cualquier viewport:
|
|
138
|
+
|
|
139
|
+
```tsx
|
|
140
|
+
<RecoverPasswordView variant="desktop" />
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
## Responsive Behavior
|
|
144
|
+
|
|
145
|
+
### Mobile (< 768px)
|
|
146
|
+
- Sin fondo decorativo
|
|
147
|
+
- Card ocupa 100% del ancho
|
|
148
|
+
- Sin sombras ni bordes redondeados
|
|
149
|
+
- Padding interno: 64px
|
|
150
|
+
|
|
151
|
+
### Desktop (≥ 768px)
|
|
152
|
+
- Fondo decorativo con imagen
|
|
153
|
+
- Card de 400px centrado
|
|
154
|
+
- Sombra elevada
|
|
155
|
+
- Bordes redondeados (16px)
|
|
156
|
+
- Padding interno: 64px
|
|
157
|
+
|
|
158
|
+
## Dark Mode
|
|
159
|
+
|
|
160
|
+
La vista implementa dark mode completo en todos sus elementos:
|
|
161
|
+
|
|
162
|
+
- **Fondos**: `bg-bg-primary` → `dark:bg-dark-bg-primary`
|
|
163
|
+
- **Textos**: `text-content-primary` → `dark:text-dark-content-primary`
|
|
164
|
+
- **Bordes**: `border-[#e4e4e7]` → `dark:border-dark-border-primary`
|
|
165
|
+
- **Inputs**: Fondos y bordes adaptativos
|
|
166
|
+
- **Botones**: Colores inversos en dark mode
|
|
167
|
+
- **Focus rings**: `ring-primary-custom-400` → `dark:ring-[#93d1fd]`
|
|
168
|
+
|
|
169
|
+
## Validación
|
|
170
|
+
|
|
171
|
+
La vista incluye validación básica de email:
|
|
172
|
+
|
|
173
|
+
1. **Email requerido**: El campo no puede estar vacío
|
|
174
|
+
2. **Formato válido**: Valida usando regex `^[^\s@]+@[^\s@]+\.[^\s@]+$`
|
|
175
|
+
3. **Feedback visual**: Borde rojo y mensaje de error cuando el formato es inválido
|
|
176
|
+
|
|
177
|
+
## Accesibilidad
|
|
178
|
+
|
|
179
|
+
- Labels descriptivos con `htmlFor`
|
|
180
|
+
- Campo requerido indicado con asterisco rojo
|
|
181
|
+
- Mensajes de error con `role="alert"`
|
|
182
|
+
- Mensajes de éxito con `role="status"`
|
|
183
|
+
- Focus visible en todos los elementos interactivos
|
|
184
|
+
- `autoComplete="email"` para mejor UX
|
|
185
|
+
|
|
186
|
+
## Storybook
|
|
187
|
+
|
|
188
|
+
La vista incluye 5 stories:
|
|
189
|
+
|
|
190
|
+
1. **Desktop**: Estado normal con fondo
|
|
191
|
+
2. **Loading**: Estado de carga
|
|
192
|
+
3. **WithError**: Con mensaje de error
|
|
193
|
+
4. **WithSuccess**: Con mensaje de éxito
|
|
194
|
+
5. **WithoutBackground**: Sin fondo decorativo
|
|
195
|
+
|
|
196
|
+
Para ver las stories:
|
|
197
|
+
|
|
198
|
+
```bash
|
|
199
|
+
npm run storybook
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
Navega a: `Siesa UI Kit/RecoverPasswordView`
|
|
203
|
+
|
|
204
|
+
## Integración con Router
|
|
205
|
+
|
|
206
|
+
### React Router
|
|
207
|
+
|
|
208
|
+
```tsx
|
|
209
|
+
import { useNavigate } from 'react-router-dom';
|
|
210
|
+
import { RecoverPasswordView } from '@/views/RecoverPasswordView';
|
|
211
|
+
|
|
212
|
+
function RecoverPasswordPage() {
|
|
213
|
+
const navigate = useNavigate();
|
|
214
|
+
|
|
215
|
+
const handleSubmit = async (email: string) => {
|
|
216
|
+
try {
|
|
217
|
+
await api.sendPasswordResetEmail(email);
|
|
218
|
+
// Mostrar mensaje de éxito
|
|
219
|
+
} catch (error) {
|
|
220
|
+
// Mostrar mensaje de error
|
|
221
|
+
}
|
|
222
|
+
};
|
|
223
|
+
|
|
224
|
+
const handleBackToLogin = () => {
|
|
225
|
+
navigate('/login');
|
|
226
|
+
};
|
|
227
|
+
|
|
228
|
+
return (
|
|
229
|
+
<RecoverPasswordView
|
|
230
|
+
onSubmit={handleSubmit}
|
|
231
|
+
onBackToLogin={handleBackToLogin}
|
|
232
|
+
/>
|
|
233
|
+
);
|
|
234
|
+
}
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
## Mejores Prácticas
|
|
238
|
+
|
|
239
|
+
1. **Siempre proporciona `onSubmit`**: Para manejar el envío del formulario
|
|
240
|
+
2. **Proporciona `onBackToLogin`**: Para navegación al login
|
|
241
|
+
3. **Usa `successMessage`**: Para confirmar al usuario que el email fue enviado
|
|
242
|
+
4. **Usa `errorMessage`**: Para mostrar errores de red o servidor
|
|
243
|
+
5. **Maneja `isLoading`**: Para feedback visual durante el envío
|
|
244
|
+
|
|
245
|
+
## Archivos del Componente
|
|
246
|
+
|
|
247
|
+
```
|
|
248
|
+
RecoverPasswordView/
|
|
249
|
+
├── RecoverPasswordView.tsx # Componente principal (400 líneas)
|
|
250
|
+
├── RecoverPasswordView.types.ts # TypeScript types
|
|
251
|
+
├── RecoverPasswordView.stories.tsx # Storybook stories (5 stories)
|
|
252
|
+
├── icons.tsx # Icono EnvelopeIcon
|
|
253
|
+
├── index.ts # Exports
|
|
254
|
+
└── README.md # Documentación
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
## Referencias
|
|
258
|
+
|
|
259
|
+
- **Diseño Figma**: [Desktop / Recover Password](https://www.figma.com/design/5XNqf2YTxvwemxwo1LMQ6j/Siesa-UI-Kit?node-id=2015-20750)
|
|
260
|
+
- **Sistema de colores**: `docs/colors.md`
|
|
261
|
+
- **Sistema tipográfico**: `docs/typography.md`
|
|
262
|
+
- **Sistema de espaciado**: `docs/spacing.md`
|
|
263
|
+
- **Sistema de sombras**: `docs/shadows.md`
|
|
264
|
+
|
|
265
|
+
## Versión
|
|
266
|
+
|
|
267
|
+
- **Versión**: 1.0.0
|
|
268
|
+
- **Última actualización**: 2025-11-12
|
|
269
|
+
- **Figma node-id**: 2015-20750
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { RecoverPasswordView } from './RecoverPasswordView';
|
|
3
|
+
|
|
4
|
+
const meta = {
|
|
5
|
+
title: 'Siesa UI Kit/RecoverPasswordView',
|
|
6
|
+
component: RecoverPasswordView,
|
|
7
|
+
parameters: {
|
|
8
|
+
layout: 'fullscreen',
|
|
9
|
+
docs: {
|
|
10
|
+
description: {
|
|
11
|
+
component: 'Vista de recuperación de contraseña con formulario de email y navegación al login.',
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
},
|
|
15
|
+
tags: ['autodocs'],
|
|
16
|
+
argTypes: {
|
|
17
|
+
onSubmit: {
|
|
18
|
+
description: 'Función que se ejecuta al enviar el formulario',
|
|
19
|
+
action: 'onSubmit',
|
|
20
|
+
},
|
|
21
|
+
onBackToLogin: {
|
|
22
|
+
description: 'Función que se ejecuta al hacer clic en "Iniciar Sesión"',
|
|
23
|
+
action: 'onBackToLogin',
|
|
24
|
+
},
|
|
25
|
+
isLoading: {
|
|
26
|
+
control: 'boolean',
|
|
27
|
+
description: 'Si el formulario está en estado de carga',
|
|
28
|
+
},
|
|
29
|
+
errorMessage: {
|
|
30
|
+
control: 'text',
|
|
31
|
+
description: 'Mensaje de error general a mostrar',
|
|
32
|
+
},
|
|
33
|
+
successMessage: {
|
|
34
|
+
control: 'text',
|
|
35
|
+
description: 'Mensaje de éxito a mostrar',
|
|
36
|
+
},
|
|
37
|
+
showBackground: {
|
|
38
|
+
control: 'boolean',
|
|
39
|
+
description: 'Si se muestra el fondo decorativo',
|
|
40
|
+
},
|
|
41
|
+
variant: {
|
|
42
|
+
control: 'select',
|
|
43
|
+
options: ['responsive', 'mobile', 'desktop'],
|
|
44
|
+
description: 'Variante de visualización',
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
} satisfies Meta<typeof RecoverPasswordView>;
|
|
48
|
+
|
|
49
|
+
export default meta;
|
|
50
|
+
type Story = StoryObj<typeof meta>;
|
|
51
|
+
|
|
52
|
+
// ============================================
|
|
53
|
+
// 1. DESKTOP (DEFAULT)
|
|
54
|
+
// ============================================
|
|
55
|
+
export const Desktop: Story = {
|
|
56
|
+
args: {
|
|
57
|
+
onSubmit: (email: string) => {
|
|
58
|
+
console.log('Recover password for:', email);
|
|
59
|
+
alert(`Se enviarán instrucciones a: ${email}`);
|
|
60
|
+
},
|
|
61
|
+
onBackToLogin: () => {
|
|
62
|
+
console.log('Back to login');
|
|
63
|
+
alert('Regresar al login');
|
|
64
|
+
},
|
|
65
|
+
showBackground: true,
|
|
66
|
+
},
|
|
67
|
+
render: (args) => (
|
|
68
|
+
<div className="min-h-screen w-full">
|
|
69
|
+
<RecoverPasswordView {...args} />
|
|
70
|
+
</div>
|
|
71
|
+
),
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
// ============================================
|
|
75
|
+
// 2. LOADING
|
|
76
|
+
// ============================================
|
|
77
|
+
export const Loading: Story = {
|
|
78
|
+
args: {
|
|
79
|
+
isLoading: true,
|
|
80
|
+
showBackground: true,
|
|
81
|
+
},
|
|
82
|
+
render: (args) => (
|
|
83
|
+
<div className="min-h-screen w-full">
|
|
84
|
+
<RecoverPasswordView {...args} />
|
|
85
|
+
</div>
|
|
86
|
+
),
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
// ============================================
|
|
90
|
+
// 3. WITH ERROR
|
|
91
|
+
// ============================================
|
|
92
|
+
export const WithError: Story = {
|
|
93
|
+
args: {
|
|
94
|
+
errorMessage: 'No se pudo enviar el correo. Por favor, intenta nuevamente.',
|
|
95
|
+
showBackground: true,
|
|
96
|
+
},
|
|
97
|
+
render: (args) => (
|
|
98
|
+
<div className="min-h-screen w-full">
|
|
99
|
+
<RecoverPasswordView {...args} />
|
|
100
|
+
</div>
|
|
101
|
+
),
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
// ============================================
|
|
105
|
+
// 4. WITH SUCCESS
|
|
106
|
+
// ============================================
|
|
107
|
+
export const WithSuccess: Story = {
|
|
108
|
+
args: {
|
|
109
|
+
successMessage: 'Se han enviado las instrucciones a tu correo electrónico.',
|
|
110
|
+
showBackground: true,
|
|
111
|
+
},
|
|
112
|
+
render: (args) => (
|
|
113
|
+
<div className="min-h-screen w-full">
|
|
114
|
+
<RecoverPasswordView {...args} />
|
|
115
|
+
</div>
|
|
116
|
+
),
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
// ============================================
|
|
120
|
+
// 5. WITHOUT BACKGROUND
|
|
121
|
+
// ============================================
|
|
122
|
+
export const WithoutBackground: Story = {
|
|
123
|
+
args: {
|
|
124
|
+
showBackground: false,
|
|
125
|
+
},
|
|
126
|
+
render: (args) => (
|
|
127
|
+
<div className="min-h-screen w-full">
|
|
128
|
+
<RecoverPasswordView {...args} />
|
|
129
|
+
</div>
|
|
130
|
+
),
|
|
131
|
+
};
|