@pautena/react-design-system 0.4.3 → 0.4.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/dist/cjs/index.js +23 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/components/app-bars/index.d.ts +1 -0
- package/dist/cjs/types/components/containers/index.d.ts +2 -0
- package/dist/cjs/types/components/{header → data-display/header}/header.types.d.ts +19 -0
- package/dist/cjs/types/components/data-display/index.d.ts +3 -0
- package/dist/cjs/types/components/{drawer → drawers/drawer}/drawer.types.d.ts +10 -3
- package/dist/cjs/types/components/drawers/drawer-collapsable-item/drawer-collapsable-item.d.ts +26 -0
- package/dist/cjs/types/components/drawers/drawer-collapsable-item/index.d.ts +1 -0
- package/dist/cjs/types/components/{drawer-item → drawers/drawer-item}/drawer-item.d.ts +10 -1
- package/dist/{esm/types/components → cjs/types/components/drawers}/drawer-section/drawer-section.d.ts +5 -1
- package/dist/cjs/types/components/drawers/index.d.ts +4 -0
- package/dist/cjs/types/components/feedback/index.d.ts +2 -0
- package/dist/cjs/types/components/index.d.ts +9 -18
- package/dist/cjs/types/components/inputs/index.d.ts +2 -0
- package/dist/cjs/types/components/navigation/index.d.ts +1 -0
- package/dist/cjs/types/components/placeholders/content-placeholder/content-placeholder.d.ts +6 -0
- package/dist/cjs/types/components/placeholders/content-placeholder/index.d.ts +1 -0
- package/dist/cjs/types/components/placeholders/index.d.ts +5 -0
- package/dist/cjs/types/components/placeholders/lorem-ipsum-placeholder/index.d.ts +1 -0
- package/dist/cjs/types/components/placeholders/lorem-ipsum-placeholder/lorem-ipsum-placeholder.d.ts +8 -0
- package/dist/cjs/types/components/placeholders/skeleton-card/index.d.ts +1 -0
- package/dist/cjs/types/components/placeholders/skeleton-card/skeleton-card.d.ts +5 -0
- package/dist/cjs/types/components/placeholders/skeleton-grid/index.d.ts +1 -0
- package/dist/cjs/types/components/placeholders/skeleton-grid/skeleton-grid.d.ts +4 -0
- package/dist/cjs/types/generators/index.d.ts +1 -0
- package/dist/cjs/types/{components → generators}/table-list/table-list.d.ts +2 -2
- package/dist/cjs/types/layouts/app-bar-with-drawer-layout/app-bar-with-drawer-layout.d.ts +2 -2
- package/dist/esm/index.js +23 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/components/app-bars/index.d.ts +1 -0
- package/dist/esm/types/components/containers/index.d.ts +2 -0
- package/dist/esm/types/components/{header → data-display/header}/header.types.d.ts +19 -0
- package/dist/esm/types/components/data-display/index.d.ts +3 -0
- package/dist/esm/types/components/{drawer → drawers/drawer}/drawer.types.d.ts +10 -3
- package/dist/esm/types/components/drawers/drawer-collapsable-item/drawer-collapsable-item.d.ts +26 -0
- package/dist/esm/types/components/drawers/drawer-collapsable-item/index.d.ts +1 -0
- package/dist/esm/types/components/{drawer-item → drawers/drawer-item}/drawer-item.d.ts +10 -1
- package/dist/{cjs/types/components → esm/types/components/drawers}/drawer-section/drawer-section.d.ts +5 -1
- package/dist/esm/types/components/drawers/index.d.ts +4 -0
- package/dist/esm/types/components/feedback/index.d.ts +2 -0
- package/dist/esm/types/components/index.d.ts +9 -18
- package/dist/esm/types/components/inputs/index.d.ts +2 -0
- package/dist/esm/types/components/navigation/index.d.ts +1 -0
- package/dist/esm/types/components/placeholders/content-placeholder/content-placeholder.d.ts +6 -0
- package/dist/esm/types/components/placeholders/content-placeholder/index.d.ts +1 -0
- package/dist/esm/types/components/placeholders/index.d.ts +5 -0
- package/dist/esm/types/components/placeholders/lorem-ipsum-placeholder/index.d.ts +1 -0
- package/dist/esm/types/components/placeholders/lorem-ipsum-placeholder/lorem-ipsum-placeholder.d.ts +8 -0
- package/dist/esm/types/components/placeholders/skeleton-card/index.d.ts +1 -0
- package/dist/esm/types/components/placeholders/skeleton-card/skeleton-card.d.ts +5 -0
- package/dist/esm/types/components/placeholders/skeleton-grid/index.d.ts +1 -0
- package/dist/esm/types/components/placeholders/skeleton-grid/skeleton-grid.d.ts +4 -0
- package/dist/esm/types/generators/index.d.ts +1 -0
- package/dist/esm/types/{components → generators}/table-list/table-list.d.ts +2 -2
- package/dist/esm/types/layouts/app-bar-with-drawer-layout/app-bar-with-drawer-layout.d.ts +2 -2
- package/dist/index.d.ts +393 -329
- package/package.json +15 -14
- package/src/components/{app-bar → app-bars/app-bar}/app-bar.stories.tsx +3 -3
- package/src/components/{app-bar → app-bars/app-bar}/app-bar.test.tsx +1 -1
- package/src/components/{app-bar → app-bars/app-bar}/app-bar.tsx +1 -1
- package/src/components/{app-bar → app-bars/app-bar}/mini-app-bar/mini-app-bar.tsx +2 -2
- package/src/components/app-bars/app-bars.stories.mdx +10 -0
- package/src/components/app-bars/index.ts +1 -0
- package/src/components/components.stories.mdx +19 -0
- package/src/components/{center-container → containers/center-container}/center-container.stories.tsx +3 -3
- package/src/components/containers/containers.stories.mdx +11 -0
- package/src/components/{content → containers/content}/content.stories.tsx +3 -3
- package/src/components/containers/index.ts +2 -0
- package/src/components/{bullet → data-display/bullet}/bullet.stories.tsx +2 -2
- package/src/components/data-display/data-display.stories.mdx +12 -0
- package/src/components/{header → data-display/header}/header.stories.tsx +16 -2
- package/src/components/{header → data-display/header}/header.test.tsx +37 -12
- package/src/components/{header → data-display/header}/header.tsx +15 -2
- package/src/components/{header → data-display/header}/header.types.ts +20 -0
- package/src/components/data-display/index.ts +3 -0
- package/src/components/{label → data-display/label}/label.stories.tsx +2 -2
- package/src/components/{drawer → drawers/drawer}/drawer.mock.tsx +27 -0
- package/src/components/{drawer → drawers/drawer}/drawer.types.ts +12 -3
- package/src/components/{drawer → drawers/drawer}/mini-drawer/mini-drawer.stories.tsx +3 -3
- package/src/components/{drawer → drawers/drawer}/mini-drawer/mini-drawer.tsx +1 -2
- package/src/components/drawers/drawer-collapsable-item/drawer-collapsable-item.test.tsx +62 -0
- package/src/components/drawers/drawer-collapsable-item/drawer-collapsable-item.tsx +78 -0
- package/src/components/drawers/drawer-collapsable-item/index.ts +1 -0
- package/src/components/{drawer-content → drawers/drawer-content}/drawer-content.stories.tsx +3 -2
- package/src/components/{drawer-content → drawers/drawer-content}/drawer-content.test.tsx +25 -0
- package/src/components/{drawer-content → drawers/drawer-content}/drawer-content.tsx +5 -4
- package/src/components/{drawer-item → drawers/drawer-item}/drawer-item.stories.tsx +2 -3
- package/src/components/{drawer-item → drawers/drawer-item}/drawer-item.tsx +23 -5
- package/src/components/{drawer-section → drawers/drawer-section}/drawer-section.stories.tsx +3 -3
- package/src/components/drawers/drawer-section/drawer-section.tsx +65 -0
- package/src/components/drawers/drawers.stories.mdx +13 -0
- package/src/components/drawers/index.ts +4 -0
- package/src/components/feedback/feedback.stories.mdx +12 -0
- package/src/components/feedback/index.ts +2 -0
- package/src/components/{loading-area → feedback/loading-area}/loading-area.stories.tsx +2 -2
- package/src/components/{query-container → feedback/query-container}/query-container.stories.tsx +2 -2
- package/src/components/index.ts +9 -18
- package/src/components/{enhanced-select → inputs/enhanced-select}/enhanced-select.stories.tsx +2 -2
- package/src/components/{enhanced-select → inputs/enhanced-select}/enhanced-select.tsx +1 -1
- package/src/components/inputs/index.ts +2 -0
- package/src/components/inputs/inputs.stories.mdx +11 -0
- package/src/components/{sign-in → inputs/sign-in}/sign-in.stories.tsx +2 -2
- package/src/components/navigation/index.ts +1 -0
- package/src/components/navigation/navigation.stories.mdx +10 -0
- package/src/components/{tab → navigation/tab}/tab-card/tab-card.dummy.tsx +1 -1
- package/src/components/{tab → navigation/tab}/tab-card/tab-card.stories.tsx +2 -2
- package/src/components/{tab → navigation/tab}/tab-panel/tab-panel.test.tsx +1 -1
- package/src/{tests → components/placeholders/content-placeholder}/content-placeholder.stories.tsx +3 -4
- package/src/components/placeholders/content-placeholder/content-placeholder.tsx +17 -0
- package/src/components/placeholders/content-placeholder/index.ts +1 -0
- package/src/components/placeholders/index.ts +5 -0
- package/src/components/placeholders/lorem-ipsum-placeholder/index.ts +1 -0
- package/src/components/placeholders/lorem-ipsum-placeholder/lorem-ipsum-placeholder.stories.tsx +15 -0
- package/src/components/placeholders/lorem-ipsum-placeholder/lorem-ipsum-placeholder.tsx +26 -0
- package/src/components/{placeholder → placeholders/placeholder}/placeholder.stories.tsx +2 -2
- package/src/components/placeholders/placeholders.stories.mdx +14 -0
- package/src/components/placeholders/skeleton-card/index.ts +1 -0
- package/src/{tests → components/placeholders/skeleton-card}/skeleton-card.stories.tsx +3 -3
- package/src/components/placeholders/skeleton-card/skeleton-card.tsx +17 -0
- package/src/components/placeholders/skeleton-grid/index.ts +1 -0
- package/src/components/placeholders/skeleton-grid/skeleton-grid.stories.tsx +15 -0
- package/src/components/placeholders/skeleton-grid/skeleton-grid.tsx +20 -0
- package/src/components/{table → tables}/enhanced-remote-table/enhanced-remote-table.stories.tsx +1 -1
- package/src/components/{table → tables}/enhanced-table/enhanced-table.stories.tsx +1 -1
- package/src/components/tables/table.stories.mdx +11 -0
- package/src/components/value-displays/group-value-card/group-value-card.stories.tsx +2 -2
- package/src/components/value-displays/group-value-card/group-value-card.test.tsx +2 -2
- package/src/components/value-displays/value-boolean/value-boolean.stories.tsx +1 -1
- package/src/components/value-displays/value-boolean/value-boolean.tsx +1 -1
- package/src/components/value-displays/value-card/value-card.stories.tsx +1 -1
- package/src/components/value-displays/value-content/value-content.stories.tsx +1 -1
- package/src/components/value-displays/value-content/value-content.tsx +1 -2
- package/src/components/value-displays/value-datetime/value-datetime.stories.tsx +1 -1
- package/src/components/value-displays/value-datetime/value-datetime.tsx +1 -1
- package/src/components/value-displays/value-displays.stories.mdx +16 -0
- package/src/components/value-displays/value-image/value-image.stories.tsx +1 -1
- package/src/components/value-displays/value-image/value-image.test.tsx +1 -1
- package/src/components/value-displays/value-text/value-text.stories.tsx +1 -1
- package/src/generators/generators.stories.mdx +13 -0
- package/src/generators/index.ts +1 -0
- package/src/generators/model-router/screens/list-screen.tsx +2 -1
- package/src/generators/model-router/stories/model-router.stories.tsx +1 -1
- package/src/{components → generators}/table-list/table-list.stories.tsx +1 -1
- package/src/{components → generators}/table-list/table-list.test.tsx +2 -2
- package/src/{components → generators}/table-list/table-list.tsx +2 -2
- package/src/layouts/app-bar-with-drawer-layout/app-bar-with-drawer-layout.stories.tsx +3 -4
- package/src/layouts/app-bar-with-drawer-layout/app-bar-with-drawer-layout.tsx +3 -3
- package/src/layouts/header-layout/header-layout.stories.tsx +6 -5
- package/src/layouts/header-layout/header-layout.tsx +1 -1
- package/src/layouts/layouts.stories.mdx +11 -0
- package/src/providers/notification-center/notification-center.stories.tsx +2 -2
- package/src/stories/Introduction.stories.mdx +10 -185
- package/src/stories/getting-started.stories.mdx +23 -0
- package/src/tests/datatable-placeholder/datatable-placeholder.stories.tsx +15 -0
- package/src/tests/datatable-placeholder/datatable-placeholder.tsx +40 -0
- package/src/tests/datatable-placeholder/index.ts +1 -0
- package/src/types.d.ts +4 -0
- package/src/components/drawer-section/drawer-section.tsx +0 -40
- package/src/tests/components.tsx +0 -94
- /package/dist/cjs/types/components/{app-bar → app-bars/app-bar}/app-bar.d.ts +0 -0
- /package/dist/cjs/types/components/{app-bar → app-bars/app-bar}/app-bar.types.d.ts +0 -0
- /package/dist/cjs/types/components/{app-bar → app-bars/app-bar}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{app-bar → app-bars/app-bar}/mini-app-bar/index.d.ts +0 -0
- /package/dist/cjs/types/components/{app-bar → app-bars/app-bar}/mini-app-bar/mini-app-bar.d.ts +0 -0
- /package/dist/cjs/types/components/{center-container → containers/center-container}/center-container.d.ts +0 -0
- /package/dist/cjs/types/components/{center-container → containers/center-container}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{content → containers/content}/content.d.ts +0 -0
- /package/dist/cjs/types/components/{content → containers/content}/content.types.d.ts +0 -0
- /package/dist/cjs/types/components/{content → containers/content}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{bullet → data-display/bullet}/bullet.d.ts +0 -0
- /package/dist/cjs/types/components/{bullet → data-display/bullet}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{header → data-display/header}/header.d.ts +0 -0
- /package/dist/cjs/types/components/{header → data-display/header}/header.dummy.d.ts +0 -0
- /package/dist/cjs/types/components/{header → data-display/header}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{label → data-display/label}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{label → data-display/label}/label.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer → drawers/drawer}/drawer.context.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer → drawers/drawer}/drawer.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer → drawers/drawer}/drawer.mixins.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer → drawers/drawer}/drawer.mock.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer → drawers/drawer}/drawer.provider.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer → drawers/drawer}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer → drawers/drawer}/mini-drawer/index.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer → drawers/drawer}/mini-drawer/mini-drawer.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer-content → drawers/drawer-content}/drawer-content.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer-content → drawers/drawer-content}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer-item → drawers/drawer-item}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer-section → drawers/drawer-section}/drawer-section.mock.d.ts +0 -0
- /package/dist/cjs/types/components/{drawer-section → drawers/drawer-section}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{loading-area → feedback/loading-area}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{loading-area → feedback/loading-area}/loading-area.d.ts +0 -0
- /package/dist/cjs/types/components/{query-container → feedback/query-container}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{query-container → feedback/query-container}/query-container.d.ts +0 -0
- /package/dist/cjs/types/components/{enhanced-select → inputs/enhanced-select}/enhanced-select.d.ts +0 -0
- /package/dist/cjs/types/components/{enhanced-select → inputs/enhanced-select}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{sign-in → inputs/sign-in}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{sign-in → inputs/sign-in}/sign-in.d.ts +0 -0
- /package/dist/cjs/types/components/{link → navigation/link}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{link → navigation/link}/link.d.ts +0 -0
- /package/dist/cjs/types/components/{tab → navigation/tab}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{tab → navigation/tab}/tab-card/index.d.ts +0 -0
- /package/dist/cjs/types/components/{tab → navigation/tab}/tab-card/tab-card.d.ts +0 -0
- /package/dist/cjs/types/components/{tab → navigation/tab}/tab-card/tab-card.dummy.d.ts +0 -0
- /package/dist/cjs/types/components/{tab → navigation/tab}/tab-panel/index.d.ts +0 -0
- /package/dist/cjs/types/components/{tab → navigation/tab}/tab-panel/tab-panel.d.ts +0 -0
- /package/dist/cjs/types/components/{placeholder → placeholders/placeholder}/index.d.ts +0 -0
- /package/dist/cjs/types/components/{placeholder → placeholders/placeholder}/placeholder.d.ts +0 -0
- /package/dist/cjs/types/components/{placeholder → placeholders/placeholder}/placeholder.mock.d.ts +0 -0
- /package/dist/cjs/types/components/{table → tables}/enhanced-remote-table/enhanced-remote-table.d.ts +0 -0
- /package/dist/cjs/types/components/{table → tables}/enhanced-remote-table/enhanced-remote-table.mock.d.ts +0 -0
- /package/dist/cjs/types/components/{table → tables}/enhanced-remote-table/index.d.ts +0 -0
- /package/dist/cjs/types/components/{table → tables}/enhanced-table/enhanced-table-head.d.ts +0 -0
- /package/dist/cjs/types/components/{table → tables}/enhanced-table/enhanced-table.d.ts +0 -0
- /package/dist/cjs/types/components/{table → tables}/enhanced-table/enhanced-table.mock.d.ts +0 -0
- /package/dist/cjs/types/components/{table → tables}/enhanced-table/index.d.ts +0 -0
- /package/dist/cjs/types/components/{table → tables}/index.d.ts +0 -0
- /package/dist/cjs/types/{components → generators}/table-list/index.d.ts +0 -0
- /package/dist/esm/types/components/{app-bar → app-bars/app-bar}/app-bar.d.ts +0 -0
- /package/dist/esm/types/components/{app-bar → app-bars/app-bar}/app-bar.types.d.ts +0 -0
- /package/dist/esm/types/components/{app-bar → app-bars/app-bar}/index.d.ts +0 -0
- /package/dist/esm/types/components/{app-bar → app-bars/app-bar}/mini-app-bar/index.d.ts +0 -0
- /package/dist/esm/types/components/{app-bar → app-bars/app-bar}/mini-app-bar/mini-app-bar.d.ts +0 -0
- /package/dist/esm/types/components/{center-container → containers/center-container}/center-container.d.ts +0 -0
- /package/dist/esm/types/components/{center-container → containers/center-container}/index.d.ts +0 -0
- /package/dist/esm/types/components/{content → containers/content}/content.d.ts +0 -0
- /package/dist/esm/types/components/{content → containers/content}/content.types.d.ts +0 -0
- /package/dist/esm/types/components/{content → containers/content}/index.d.ts +0 -0
- /package/dist/esm/types/components/{bullet → data-display/bullet}/bullet.d.ts +0 -0
- /package/dist/esm/types/components/{bullet → data-display/bullet}/index.d.ts +0 -0
- /package/dist/esm/types/components/{header → data-display/header}/header.d.ts +0 -0
- /package/dist/esm/types/components/{header → data-display/header}/header.dummy.d.ts +0 -0
- /package/dist/esm/types/components/{header → data-display/header}/index.d.ts +0 -0
- /package/dist/esm/types/components/{label → data-display/label}/index.d.ts +0 -0
- /package/dist/esm/types/components/{label → data-display/label}/label.d.ts +0 -0
- /package/dist/esm/types/components/{drawer → drawers/drawer}/drawer.context.d.ts +0 -0
- /package/dist/esm/types/components/{drawer → drawers/drawer}/drawer.d.ts +0 -0
- /package/dist/esm/types/components/{drawer → drawers/drawer}/drawer.mixins.d.ts +0 -0
- /package/dist/esm/types/components/{drawer → drawers/drawer}/drawer.mock.d.ts +0 -0
- /package/dist/esm/types/components/{drawer → drawers/drawer}/drawer.provider.d.ts +0 -0
- /package/dist/esm/types/components/{drawer → drawers/drawer}/index.d.ts +0 -0
- /package/dist/esm/types/components/{drawer → drawers/drawer}/mini-drawer/index.d.ts +0 -0
- /package/dist/esm/types/components/{drawer → drawers/drawer}/mini-drawer/mini-drawer.d.ts +0 -0
- /package/dist/esm/types/components/{drawer-content → drawers/drawer-content}/drawer-content.d.ts +0 -0
- /package/dist/esm/types/components/{drawer-content → drawers/drawer-content}/index.d.ts +0 -0
- /package/dist/esm/types/components/{drawer-item → drawers/drawer-item}/index.d.ts +0 -0
- /package/dist/esm/types/components/{drawer-section → drawers/drawer-section}/drawer-section.mock.d.ts +0 -0
- /package/dist/esm/types/components/{drawer-section → drawers/drawer-section}/index.d.ts +0 -0
- /package/dist/esm/types/components/{loading-area → feedback/loading-area}/index.d.ts +0 -0
- /package/dist/esm/types/components/{loading-area → feedback/loading-area}/loading-area.d.ts +0 -0
- /package/dist/esm/types/components/{query-container → feedback/query-container}/index.d.ts +0 -0
- /package/dist/esm/types/components/{query-container → feedback/query-container}/query-container.d.ts +0 -0
- /package/dist/esm/types/components/{enhanced-select → inputs/enhanced-select}/enhanced-select.d.ts +0 -0
- /package/dist/esm/types/components/{enhanced-select → inputs/enhanced-select}/index.d.ts +0 -0
- /package/dist/esm/types/components/{sign-in → inputs/sign-in}/index.d.ts +0 -0
- /package/dist/esm/types/components/{sign-in → inputs/sign-in}/sign-in.d.ts +0 -0
- /package/dist/esm/types/components/{link → navigation/link}/index.d.ts +0 -0
- /package/dist/esm/types/components/{link → navigation/link}/link.d.ts +0 -0
- /package/dist/esm/types/components/{tab → navigation/tab}/index.d.ts +0 -0
- /package/dist/esm/types/components/{tab → navigation/tab}/tab-card/index.d.ts +0 -0
- /package/dist/esm/types/components/{tab → navigation/tab}/tab-card/tab-card.d.ts +0 -0
- /package/dist/esm/types/components/{tab → navigation/tab}/tab-card/tab-card.dummy.d.ts +0 -0
- /package/dist/esm/types/components/{tab → navigation/tab}/tab-panel/index.d.ts +0 -0
- /package/dist/esm/types/components/{tab → navigation/tab}/tab-panel/tab-panel.d.ts +0 -0
- /package/dist/esm/types/components/{placeholder → placeholders/placeholder}/index.d.ts +0 -0
- /package/dist/esm/types/components/{placeholder → placeholders/placeholder}/placeholder.d.ts +0 -0
- /package/dist/esm/types/components/{placeholder → placeholders/placeholder}/placeholder.mock.d.ts +0 -0
- /package/dist/esm/types/components/{table → tables}/enhanced-remote-table/enhanced-remote-table.d.ts +0 -0
- /package/dist/esm/types/components/{table → tables}/enhanced-remote-table/enhanced-remote-table.mock.d.ts +0 -0
- /package/dist/esm/types/components/{table → tables}/enhanced-remote-table/index.d.ts +0 -0
- /package/dist/esm/types/components/{table → tables}/enhanced-table/enhanced-table-head.d.ts +0 -0
- /package/dist/esm/types/components/{table → tables}/enhanced-table/enhanced-table.d.ts +0 -0
- /package/dist/esm/types/components/{table → tables}/enhanced-table/enhanced-table.mock.d.ts +0 -0
- /package/dist/esm/types/components/{table → tables}/enhanced-table/index.d.ts +0 -0
- /package/dist/esm/types/components/{table → tables}/index.d.ts +0 -0
- /package/dist/esm/types/{components → generators}/table-list/index.d.ts +0 -0
- /package/src/components/{app-bar → app-bars/app-bar}/app-bar.types.ts +0 -0
- /package/src/components/{app-bar → app-bars/app-bar}/index.ts +0 -0
- /package/src/components/{app-bar → app-bars/app-bar}/mini-app-bar/index.ts +0 -0
- /package/src/components/{center-container → containers/center-container}/center-container.test.tsx +0 -0
- /package/src/components/{center-container → containers/center-container}/center-container.tsx +0 -0
- /package/src/components/{center-container → containers/center-container}/index.ts +0 -0
- /package/src/components/{content → containers/content}/content.test.tsx +0 -0
- /package/src/components/{content → containers/content}/content.tsx +0 -0
- /package/src/components/{content → containers/content}/content.types.ts +0 -0
- /package/src/components/{content → containers/content}/index.ts +0 -0
- /package/src/components/{bullet → data-display/bullet}/bullet.test.tsx +0 -0
- /package/src/components/{bullet → data-display/bullet}/bullet.tsx +0 -0
- /package/src/components/{bullet → data-display/bullet}/index.ts +0 -0
- /package/src/components/{header → data-display/header}/header.dummy.ts +0 -0
- /package/src/components/{header → data-display/header}/index.ts +0 -0
- /package/src/components/{label → data-display/label}/index.ts +0 -0
- /package/src/components/{label → data-display/label}/label.test.tsx +0 -0
- /package/src/components/{label → data-display/label}/label.tsx +0 -0
- /package/src/components/{drawer → drawers/drawer}/__snapshots__/drawer.test.tsx.snap +0 -0
- /package/src/components/{drawer → drawers/drawer}/drawer.context.ts +0 -0
- /package/src/components/{drawer → drawers/drawer}/drawer.mixins.ts +0 -0
- /package/src/components/{drawer → drawers/drawer}/drawer.provider.tsx +0 -0
- /package/src/components/{drawer → drawers/drawer}/drawer.test.tsx +0 -0
- /package/src/components/{drawer → drawers/drawer}/drawer.tsx +0 -0
- /package/src/components/{drawer → drawers/drawer}/index.ts +0 -0
- /package/src/components/{drawer → drawers/drawer}/mini-drawer/index.ts +0 -0
- /package/src/components/{drawer-content → drawers/drawer-content}/index.ts +0 -0
- /package/src/components/{drawer-item → drawers/drawer-item}/drawer-item.test.tsx +0 -0
- /package/src/components/{drawer-item → drawers/drawer-item}/index.ts +0 -0
- /package/src/components/{drawer-section → drawers/drawer-section}/drawer-section.mock.tsx +0 -0
- /package/src/components/{drawer-section → drawers/drawer-section}/drawer-section.test.tsx +0 -0
- /package/src/components/{drawer-section → drawers/drawer-section}/index.ts +0 -0
- /package/src/components/{loading-area → feedback/loading-area}/index.ts +0 -0
- /package/src/components/{loading-area → feedback/loading-area}/loading-area.test.tsx +0 -0
- /package/src/components/{loading-area → feedback/loading-area}/loading-area.tsx +0 -0
- /package/src/components/{query-container → feedback/query-container}/index.ts +0 -0
- /package/src/components/{query-container → feedback/query-container}/query-container.test.tsx +0 -0
- /package/src/components/{query-container → feedback/query-container}/query-container.tsx +0 -0
- /package/src/components/{enhanced-select → inputs/enhanced-select}/enhanced-select.test.tsx +0 -0
- /package/src/components/{enhanced-select → inputs/enhanced-select}/index.ts +0 -0
- /package/src/components/{sign-in → inputs/sign-in}/index.ts +0 -0
- /package/src/components/{sign-in → inputs/sign-in}/sign-in.test.tsx +0 -0
- /package/src/components/{sign-in → inputs/sign-in}/sign-in.tsx +0 -0
- /package/src/components/{link → navigation/link}/index.ts +0 -0
- /package/src/components/{link → navigation/link}/link.tsx +0 -0
- /package/src/components/{tab → navigation/tab}/index.ts +0 -0
- /package/src/components/{tab → navigation/tab}/tab-card/index.ts +0 -0
- /package/src/components/{tab → navigation/tab}/tab-card/tab-card.test.tsx +0 -0
- /package/src/components/{tab → navigation/tab}/tab-card/tab-card.tsx +0 -0
- /package/src/components/{tab → navigation/tab}/tab-panel/index.ts +0 -0
- /package/src/components/{tab → navigation/tab}/tab-panel/tab-panel.tsx +0 -0
- /package/src/components/{placeholder → placeholders/placeholder}/index.ts +0 -0
- /package/src/components/{placeholder → placeholders/placeholder}/placeholder.mock.ts +0 -0
- /package/src/components/{placeholder → placeholders/placeholder}/placeholder.test.tsx +0 -0
- /package/src/components/{placeholder → placeholders/placeholder}/placeholder.tsx +0 -0
- /package/src/components/{table → tables}/enhanced-remote-table/enhanced-remote-table.mock.tsx +0 -0
- /package/src/components/{table → tables}/enhanced-remote-table/enhanced-remote-table.test.tsx +0 -0
- /package/src/components/{table → tables}/enhanced-remote-table/enhanced-remote-table.tsx +0 -0
- /package/src/components/{table → tables}/enhanced-remote-table/index.ts +0 -0
- /package/src/components/{table → tables}/enhanced-table/enhanced-table-head.tsx +0 -0
- /package/src/components/{table → tables}/enhanced-table/enhanced-table.mock.tsx +0 -0
- /package/src/components/{table → tables}/enhanced-table/enhanced-table.test.tsx +0 -0
- /package/src/components/{table → tables}/enhanced-table/enhanced-table.tsx +0 -0
- /package/src/components/{table → tables}/enhanced-table/index.ts +0 -0
- /package/src/components/{table → tables}/index.ts +0 -0
- /package/src/{components → generators}/table-list/index.ts +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pautena/react-design-system",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.5",
|
|
4
4
|
"description": "My custom design system on top of MUI",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -38,25 +38,26 @@
|
|
|
38
38
|
"@mui/x-data-grid": "^5.17.24",
|
|
39
39
|
"@mui/x-date-pickers": "^5.0.19",
|
|
40
40
|
"date-fns": "^2.29.3",
|
|
41
|
+
"lorem-ipsum": "^2.0.8",
|
|
41
42
|
"react": "^18.2.0",
|
|
42
43
|
"react-dom": "^18.2.0",
|
|
43
44
|
"react-router-dom": "^6.8.1"
|
|
44
45
|
},
|
|
45
46
|
"devDependencies": {
|
|
46
|
-
"@babel/core": "^7.
|
|
47
|
-
"@babel/preset-env": "^7.
|
|
47
|
+
"@babel/core": "^7.18.6",
|
|
48
|
+
"@babel/preset-env": "^7.18.6",
|
|
48
49
|
"@babel/preset-react": "^7.18.6",
|
|
49
50
|
"@babel/preset-typescript": "^7.21.0",
|
|
50
|
-
"@date-io/date-fns": "^2.
|
|
51
|
-
"@faker-js/faker": "^7.
|
|
52
|
-
"@mui/x-data-grid-generator": "^5.
|
|
53
|
-
"@rollup/plugin-alias": "^
|
|
54
|
-
"@rollup/plugin-commonjs": "^
|
|
55
|
-
"@rollup/plugin-node-resolve": "^
|
|
56
|
-
"@rollup/plugin-typescript": "
|
|
57
|
-
"@storybook/addon-actions": "^6.5.
|
|
58
|
-
"@storybook/addon-essentials": "^6.5.
|
|
59
|
-
"@storybook/addon-interactions": "^6.5.
|
|
51
|
+
"@date-io/date-fns": "^2.15.0",
|
|
52
|
+
"@faker-js/faker": "^7.3.0",
|
|
53
|
+
"@mui/x-data-grid-generator": "^5.13.0",
|
|
54
|
+
"@rollup/plugin-alias": "^3.1.9",
|
|
55
|
+
"@rollup/plugin-commonjs": "^22.0.1",
|
|
56
|
+
"@rollup/plugin-node-resolve": "^13.3.0",
|
|
57
|
+
"@rollup/plugin-typescript": "8.3.3",
|
|
58
|
+
"@storybook/addon-actions": "^6.5.9",
|
|
59
|
+
"@storybook/addon-essentials": "^6.5.9",
|
|
60
|
+
"@storybook/addon-interactions": "^6.5.9",
|
|
60
61
|
"@storybook/addon-knobs": "^6.4.0",
|
|
61
62
|
"@storybook/addon-links": "^6.5.16",
|
|
62
63
|
"@storybook/builder-webpack4": "^6.5.16",
|
|
@@ -83,7 +84,6 @@
|
|
|
83
84
|
"husky": "^8.0.3",
|
|
84
85
|
"jest": "^29.4.3",
|
|
85
86
|
"jest-environment-jsdom": "^29.4.3",
|
|
86
|
-
"lorem-ipsum": "^2.0.8",
|
|
87
87
|
"npm-run-all": "^4.1.5",
|
|
88
88
|
"prettier": "^2.8.4",
|
|
89
89
|
"ramda": "^0.28.0",
|
|
@@ -106,6 +106,7 @@
|
|
|
106
106
|
"@mui/x-date-pickers": "^5.0.0",
|
|
107
107
|
"@types/react": "^17.0.0 || ^18.0.0",
|
|
108
108
|
"date-fns": "^2.0.0",
|
|
109
|
+
"lorem-ipsum": "^2.0.0",
|
|
109
110
|
"react": "^17.0.0 || ^18.0.0",
|
|
110
111
|
"react-dom": "^17.0.0 || ^18.0.0",
|
|
111
112
|
"react-router-dom": "^6.0.0"
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { ComponentMeta } from "@storybook/react";
|
|
3
|
-
import { createTemplate } from "
|
|
3
|
+
import { createTemplate } from "../../../storybook";
|
|
4
4
|
import { AppBar } from "./app-bar";
|
|
5
|
-
import { DrawerProvider } from "
|
|
5
|
+
import { DrawerProvider } from "../../drawers/drawer";
|
|
6
6
|
import { AppBarProps } from "./app-bar.types";
|
|
7
7
|
|
|
8
8
|
export default {
|
|
9
|
-
title: "AppBars/AppBar",
|
|
9
|
+
title: "Components/AppBars/AppBar",
|
|
10
10
|
component: AppBar,
|
|
11
11
|
parameters: {
|
|
12
12
|
layout: "fullscreen",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { fireEvent, render, screen } from "~/tests/testing-library";
|
|
3
3
|
import { AppBar } from "./app-bar";
|
|
4
|
-
import { DrawerProvider } from "
|
|
4
|
+
import { DrawerProvider } from "../../drawers/drawer";
|
|
5
5
|
import { AppBarProfile } from "./app-bar.types";
|
|
6
6
|
import userEvent from "@testing-library/user-event";
|
|
7
7
|
|
|
@@ -12,7 +12,7 @@ import MenuIcon from "@mui/icons-material/Menu";
|
|
|
12
12
|
import SearchIcon from "@mui/icons-material/Search";
|
|
13
13
|
import AccountCircle from "@mui/icons-material/AccountCircle";
|
|
14
14
|
import { AppBarComponent, AppBarProps } from "./app-bar.types";
|
|
15
|
-
import { useDrawer } from "
|
|
15
|
+
import { useDrawer } from "../../drawers/drawer/drawer.context";
|
|
16
16
|
|
|
17
17
|
const Search = styled("div")(({ theme }) => ({
|
|
18
18
|
position: "relative",
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { styled } from "@mui/material/styles";
|
|
2
2
|
import { AppBar } from "../app-bar";
|
|
3
3
|
import { AppBarProps } from "@mui/material";
|
|
4
|
-
import { drawerWidth } from "
|
|
4
|
+
import { drawerWidth } from "../../../drawers/drawer/drawer.mixins";
|
|
5
5
|
import { AppBarComponent } from "../app-bar.types";
|
|
6
|
-
import { useDrawer } from "
|
|
6
|
+
import { useDrawer } from "../../../drawers/drawer/drawer.context";
|
|
7
7
|
|
|
8
8
|
export const MiniAppBar: AppBarComponent = styled(AppBar)<AppBarProps>(({ theme }) => {
|
|
9
9
|
const { isOpen } = useDrawer();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./app-bar";
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Meta } from '@storybook/addon-docs';
|
|
2
|
+
import LinkTo from '@storybook/addon-links/react';
|
|
3
|
+
|
|
4
|
+
<Meta title="Components/Introduction" />
|
|
5
|
+
|
|
6
|
+
# Components
|
|
7
|
+
|
|
8
|
+
<ul>
|
|
9
|
+
<li><LinkTo kind="Components/Value displays/Introduction">Value displays</LinkTo></li>
|
|
10
|
+
<li><LinkTo kind="Components/Feedback/Introduction">Feedback</LinkTo></li>
|
|
11
|
+
<li><LinkTo kind="Components/AppBars/Introduction">App bars</LinkTo></li>
|
|
12
|
+
<li><LinkTo kind="Components/Data Display/Introduction">Data Display</LinkTo></li>
|
|
13
|
+
<li><LinkTo kind="Components/Containers/Introduction">Containers</LinkTo></li>
|
|
14
|
+
<li><LinkTo kind="Components/Drawers/Introduction">Drawers</LinkTo></li>
|
|
15
|
+
<li><LinkTo kind="Components/Inputs/Introduction">Inputs</LinkTo></li>
|
|
16
|
+
<li><LinkTo kind="Components/Navigation/Introduction">Navigation</LinkTo></li>
|
|
17
|
+
<li><LinkTo kind="Components/Placeholders/Introduction">Placeholders</LinkTo></li>
|
|
18
|
+
<li><LinkTo kind="Components/Tables/Introduction">Tables</LinkTo></li>
|
|
19
|
+
</ul>
|
package/src/components/{center-container → containers/center-container}/center-container.stories.tsx
RENAMED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { ComponentMeta } from "@storybook/react";
|
|
3
3
|
import { CenterContainer, CenterContainerProps } from "./center-container";
|
|
4
|
-
import { Label } from "
|
|
5
|
-
import { createTemplate, withContainer } from "
|
|
4
|
+
import { Label } from "../../data-display/label";
|
|
5
|
+
import { createTemplate, withContainer } from "../../../storybook";
|
|
6
6
|
|
|
7
7
|
export default {
|
|
8
|
-
title: "Containers/CenterContainer",
|
|
8
|
+
title: "Components/Containers/CenterContainer",
|
|
9
9
|
component: CenterContainer,
|
|
10
10
|
decorators: [withContainer({ height: 500, bordered: true })],
|
|
11
11
|
parameters: {
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Meta } from '@storybook/addon-docs';
|
|
2
|
+
import LinkTo from '@storybook/addon-links/react';
|
|
3
|
+
|
|
4
|
+
<Meta title="Components/Containers/Introduction" />
|
|
5
|
+
|
|
6
|
+
# Containers
|
|
7
|
+
|
|
8
|
+
<ul>
|
|
9
|
+
<li><LinkTo kind="Components/Containers/CenterContainer">CenterContainer</LinkTo></li>
|
|
10
|
+
<li><LinkTo kind="Components/Containers/Content">Content</LinkTo></li>
|
|
11
|
+
</ul>
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { ComponentMeta } from "@storybook/react";
|
|
3
|
-
import { createTemplate } from "
|
|
3
|
+
import { createTemplate } from "../../../storybook";
|
|
4
4
|
import { Content } from "./content";
|
|
5
|
-
import { SkeletonGrid } from "~/
|
|
5
|
+
import { SkeletonGrid } from "~/components/placeholders";
|
|
6
6
|
|
|
7
7
|
export default {
|
|
8
|
-
title: "
|
|
8
|
+
title: "Components/Containers/Content",
|
|
9
9
|
component: Content,
|
|
10
10
|
parameters: {
|
|
11
11
|
layout: "fullscreen",
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ComponentMeta } from "@storybook/react";
|
|
2
|
-
import { createTemplate } from "
|
|
2
|
+
import { createTemplate } from "../../../storybook";
|
|
3
3
|
import { Bullet } from "./bullet";
|
|
4
4
|
|
|
5
5
|
export default {
|
|
6
|
-
title: "Data Display/Bullet",
|
|
6
|
+
title: "Components/Data Display/Bullet",
|
|
7
7
|
component: Bullet,
|
|
8
8
|
parameters: {
|
|
9
9
|
layout: "centered",
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Meta } from '@storybook/addon-docs';
|
|
2
|
+
import LinkTo from '@storybook/addon-links/react';
|
|
3
|
+
|
|
4
|
+
<Meta title="Components/Data Display/Introduction" />
|
|
5
|
+
|
|
6
|
+
# App Bars
|
|
7
|
+
|
|
8
|
+
<ul>
|
|
9
|
+
<li><LinkTo kind="Components/Data Display/Bullet">Bullet</LinkTo></li>
|
|
10
|
+
<li><LinkTo kind="Components/Data Display/Label">Label</LinkTo></li>
|
|
11
|
+
<li><LinkTo kind="Components/Data Display/Header">Header</LinkTo></li>
|
|
12
|
+
</ul>
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { ComponentMeta } from "@storybook/react";
|
|
2
|
-
import { createTemplate } from "
|
|
2
|
+
import { createTemplate } from "../../../storybook";
|
|
3
3
|
import { Header } from "./header";
|
|
4
4
|
import { withMemoryRouter } from "~/storybook";
|
|
5
5
|
import { breadcrumbs, tabs, actions } from "./header.dummy";
|
|
6
|
+
import ArrowBackIcon from "@mui/icons-material/ArrowBack";
|
|
7
|
+
import React from "react";
|
|
6
8
|
|
|
7
9
|
export default {
|
|
8
|
-
title: "
|
|
10
|
+
title: "Components/Data Display/Header",
|
|
9
11
|
component: Header,
|
|
10
12
|
decorators: [withMemoryRouter()],
|
|
11
13
|
parameters: {
|
|
@@ -108,3 +110,15 @@ WithTabs.args = {
|
|
|
108
110
|
breadcrumbs,
|
|
109
111
|
tabs,
|
|
110
112
|
};
|
|
113
|
+
|
|
114
|
+
export const NavigationButton = Template.bind({});
|
|
115
|
+
NavigationButton.args = {
|
|
116
|
+
title: "Lorem ipsum",
|
|
117
|
+
subtitle: "Dolor sit amet",
|
|
118
|
+
preset: "default",
|
|
119
|
+
navigationButton: {
|
|
120
|
+
text: "Go back",
|
|
121
|
+
href: "/back",
|
|
122
|
+
icon: <ArrowBackIcon />,
|
|
123
|
+
},
|
|
124
|
+
};
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
HeaderTab,
|
|
11
11
|
} from "./header.types";
|
|
12
12
|
import { breadcrumbs, actions as actionsData, tabs } from "./header.dummy";
|
|
13
|
-
import { TabProvider } from "
|
|
13
|
+
import { TabProvider } from "../../../providers";
|
|
14
14
|
|
|
15
15
|
const actions = actionsData.map((a) => ({ ...a, onClick: a.onClick && jest.fn() }));
|
|
16
16
|
|
|
@@ -23,6 +23,7 @@ function renderInstance({
|
|
|
23
23
|
actionsVariant,
|
|
24
24
|
tabs,
|
|
25
25
|
selectedTab,
|
|
26
|
+
navigationButton,
|
|
26
27
|
}: {
|
|
27
28
|
title?: string;
|
|
28
29
|
subtitle?: string | undefined;
|
|
@@ -32,6 +33,7 @@ function renderInstance({
|
|
|
32
33
|
actionsVariant?: HeaderActionVariant;
|
|
33
34
|
tabs?: HeaderTab[];
|
|
34
35
|
selectedTab?: number;
|
|
36
|
+
navigationButton?: boolean;
|
|
35
37
|
}) {
|
|
36
38
|
const instance = render(
|
|
37
39
|
<TabProvider initialValue={selectedTab}>
|
|
@@ -43,6 +45,7 @@ function renderInstance({
|
|
|
43
45
|
actions={actions}
|
|
44
46
|
actionsVariant={actionsVariant}
|
|
45
47
|
tabs={tabs}
|
|
48
|
+
navigationButton={navigationButton ? { text: "go back", href: "/back" } : undefined}
|
|
46
49
|
/>
|
|
47
50
|
</TabProvider>,
|
|
48
51
|
);
|
|
@@ -58,13 +61,13 @@ describe("Header", () => {
|
|
|
58
61
|
});
|
|
59
62
|
|
|
60
63
|
describe("subtitle", () => {
|
|
61
|
-
it("
|
|
64
|
+
it("should renders when is set", () => {
|
|
62
65
|
renderInstance({ subtitle: "sit amet" });
|
|
63
66
|
|
|
64
67
|
expect(screen.queryByRole("heading", { level: 2, name: /sit amet/i })).toBeInTheDocument();
|
|
65
68
|
});
|
|
66
69
|
|
|
67
|
-
it("
|
|
70
|
+
it("shouldn't render if it is not set", () => {
|
|
68
71
|
renderInstance({ subtitle: undefined });
|
|
69
72
|
|
|
70
73
|
expect(screen.queryByRole("heading", { level: 2 })).not.toBeInTheDocument();
|
|
@@ -72,14 +75,14 @@ describe("Header", () => {
|
|
|
72
75
|
});
|
|
73
76
|
|
|
74
77
|
describe("breadcrumbs", () => {
|
|
75
|
-
it("
|
|
78
|
+
it("should render a list of links", () => {
|
|
76
79
|
renderInstance({ breadcrumbs });
|
|
77
80
|
|
|
78
81
|
expect(screen.getByRole("link", { name: /items/i })).toBeInTheDocument();
|
|
79
82
|
expect(screen.getByRole("link", { name: /item 1/i })).toBeInTheDocument();
|
|
80
83
|
});
|
|
81
84
|
|
|
82
|
-
it("
|
|
85
|
+
it("should navigate to a breadcrumb when is", async () => {
|
|
83
86
|
const { history } = renderInstance({ breadcrumbs });
|
|
84
87
|
|
|
85
88
|
await userEvent.click(screen.getByRole("link", { name: /items/i }));
|
|
@@ -89,7 +92,7 @@ describe("Header", () => {
|
|
|
89
92
|
});
|
|
90
93
|
|
|
91
94
|
describe("actions", () => {
|
|
92
|
-
it("
|
|
95
|
+
it("should render a list of buttons", () => {
|
|
93
96
|
renderInstance({ actions });
|
|
94
97
|
|
|
95
98
|
expect(screen.getByRole("button", { name: /add/i })).toBeInTheDocument();
|
|
@@ -108,13 +111,13 @@ describe("Header", () => {
|
|
|
108
111
|
expect(button.onClick).toHaveBeenCalledTimes(1);
|
|
109
112
|
});
|
|
110
113
|
|
|
111
|
-
it("
|
|
114
|
+
it("shouldn't be possible to click a disabled action", async () => {
|
|
112
115
|
renderInstance({ actions });
|
|
113
116
|
|
|
114
117
|
expect(screen.getByRole("button", { name: /disabled/i })).toBeDisabled();
|
|
115
118
|
});
|
|
116
119
|
|
|
117
|
-
it("
|
|
120
|
+
it("should redirect to the expected url when click an action with an href", async () => {
|
|
118
121
|
const { history } = renderInstance({ actions });
|
|
119
122
|
|
|
120
123
|
await userEvent.click(screen.getByRole("button", { name: /add/i }));
|
|
@@ -124,7 +127,7 @@ describe("Header", () => {
|
|
|
124
127
|
});
|
|
125
128
|
|
|
126
129
|
describe("tabs", () => {
|
|
127
|
-
it("
|
|
130
|
+
it("should render a list of tabs", () => {
|
|
128
131
|
renderInstance({ tabs, selectedTab: 2 });
|
|
129
132
|
|
|
130
133
|
expect(screen.getByRole("tab", { name: /tab 1/i })).toBeInTheDocument();
|
|
@@ -132,7 +135,7 @@ describe("Header", () => {
|
|
|
132
135
|
expect(screen.getByRole("tab", { name: /tab 3/i })).toBeInTheDocument();
|
|
133
136
|
});
|
|
134
137
|
|
|
135
|
-
it("
|
|
138
|
+
it("should mark as active the selectedTab", () => {
|
|
136
139
|
renderInstance({ tabs, selectedTab: 2 });
|
|
137
140
|
|
|
138
141
|
expect(screen.getByRole("tab", { name: /tab 1/i, selected: false })).toBeInTheDocument();
|
|
@@ -140,13 +143,13 @@ describe("Header", () => {
|
|
|
140
143
|
expect(screen.getByRole("tab", { name: /tab 3/i, selected: true })).toBeInTheDocument();
|
|
141
144
|
});
|
|
142
145
|
|
|
143
|
-
it("
|
|
146
|
+
it("shouldn't be possible to click a disabled tab", () => {
|
|
144
147
|
renderInstance({ tabs, selectedTab: 2 });
|
|
145
148
|
|
|
146
149
|
expect(screen.getByRole("tab", { name: /tab 2/i })).toBeDisabled();
|
|
147
150
|
});
|
|
148
151
|
|
|
149
|
-
it("
|
|
152
|
+
it("should change the selected tab when a tab is clicked", async () => {
|
|
150
153
|
renderInstance({ tabs, selectedTab: 0 });
|
|
151
154
|
|
|
152
155
|
await userEvent.click(screen.getByRole("tab", { name: /tab 3/i }));
|
|
@@ -156,4 +159,26 @@ describe("Header", () => {
|
|
|
156
159
|
expect(screen.getByRole("tab", { name: /tab 3/i, selected: true })).toBeInTheDocument();
|
|
157
160
|
});
|
|
158
161
|
});
|
|
162
|
+
|
|
163
|
+
describe("navigationButton", () => {
|
|
164
|
+
it("should render a navigation button if is set", () => {
|
|
165
|
+
renderInstance({ navigationButton: true });
|
|
166
|
+
|
|
167
|
+
expect(screen.getByRole("link", { name: /go back/i })).toBeVisible();
|
|
168
|
+
});
|
|
169
|
+
|
|
170
|
+
it("shouldn't render a navigation button if is not set", () => {
|
|
171
|
+
renderInstance({ navigationButton: false });
|
|
172
|
+
|
|
173
|
+
expect(screen.queryByRole("link", { name: /go back/i })).not.toBeInTheDocument();
|
|
174
|
+
});
|
|
175
|
+
|
|
176
|
+
it("should navigate to the navigation path if is clicked", async () => {
|
|
177
|
+
const { history } = renderInstance({ navigationButton: true });
|
|
178
|
+
|
|
179
|
+
await userEvent.click(screen.getByRole("link", { name: /go back/i }));
|
|
180
|
+
|
|
181
|
+
expect(history.location.pathname).toBe("/back");
|
|
182
|
+
});
|
|
183
|
+
});
|
|
159
184
|
});
|
|
@@ -9,8 +9,8 @@ import {
|
|
|
9
9
|
Tab,
|
|
10
10
|
Button,
|
|
11
11
|
} from "@mui/material";
|
|
12
|
-
import { Link } from "
|
|
13
|
-
import { useGetDefaultThemeColor } from "
|
|
12
|
+
import { Link } from "../../navigation/link";
|
|
13
|
+
import { useGetDefaultThemeColor } from "../../../utils";
|
|
14
14
|
import { HeaderComponent, HeaderPreset, HeaderProps } from "./header.types";
|
|
15
15
|
import { useTab } from "~/providers";
|
|
16
16
|
|
|
@@ -26,6 +26,7 @@ export const Header: HeaderComponent = ({
|
|
|
26
26
|
breadcrumbs,
|
|
27
27
|
actions,
|
|
28
28
|
tabs,
|
|
29
|
+
navigationButton,
|
|
29
30
|
}: HeaderProps) => {
|
|
30
31
|
const { palette } = useTheme();
|
|
31
32
|
const defaultColor = useGetDefaultThemeColor();
|
|
@@ -53,6 +54,18 @@ export const Header: HeaderComponent = ({
|
|
|
53
54
|
<Container>
|
|
54
55
|
<Box sx={{ py: 3, display: "flex", flexDirection: "row", justifyContent: "space-between" }}>
|
|
55
56
|
<Box>
|
|
57
|
+
{navigationButton && (
|
|
58
|
+
<Button
|
|
59
|
+
href={navigationButton.href}
|
|
60
|
+
size="small"
|
|
61
|
+
color="inherit"
|
|
62
|
+
LinkComponent={Link}
|
|
63
|
+
startIcon={navigationButton.icon}
|
|
64
|
+
sx={{ mb: 1 }}
|
|
65
|
+
>
|
|
66
|
+
{navigationButton.text}
|
|
67
|
+
</Button>
|
|
68
|
+
)}
|
|
56
69
|
{breadcrumbs?.length && (
|
|
57
70
|
<Breadcrumbs
|
|
58
71
|
color="inherit"
|
|
@@ -24,6 +24,21 @@ export interface HeaderTab {
|
|
|
24
24
|
disabled?: boolean;
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
+
export interface HeaderNavigationButton {
|
|
28
|
+
/**
|
|
29
|
+
* Button text
|
|
30
|
+
*/
|
|
31
|
+
text: string;
|
|
32
|
+
/**
|
|
33
|
+
* Url where the user has to be redirected
|
|
34
|
+
*/
|
|
35
|
+
href: string;
|
|
36
|
+
/**
|
|
37
|
+
* Icon to be shown before the button
|
|
38
|
+
*/
|
|
39
|
+
icon?: ReactElement;
|
|
40
|
+
}
|
|
41
|
+
|
|
27
42
|
export type HeaderProps = {
|
|
28
43
|
/**
|
|
29
44
|
* Title of the header
|
|
@@ -55,6 +70,11 @@ export type HeaderProps = {
|
|
|
55
70
|
* If is set, a list of tabs is dispayed at the bottom
|
|
56
71
|
*/
|
|
57
72
|
tabs?: HeaderTab[];
|
|
73
|
+
/**
|
|
74
|
+
* A single button that helps the user to navigate to
|
|
75
|
+
* a screen related to the current screen
|
|
76
|
+
*/
|
|
77
|
+
navigationButton?: HeaderNavigationButton;
|
|
58
78
|
};
|
|
59
79
|
|
|
60
80
|
export type HeaderComponent = FunctionComponent<HeaderProps>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ComponentMeta } from "@storybook/react";
|
|
2
|
-
import { createTemplate } from "
|
|
2
|
+
import { createTemplate } from "../../../storybook";
|
|
3
3
|
import { Label } from "./label";
|
|
4
4
|
|
|
5
5
|
export default {
|
|
6
|
-
title: "Data Display/Label",
|
|
6
|
+
title: "Components/Data Display/Label",
|
|
7
7
|
component: Label,
|
|
8
8
|
parameters: {
|
|
9
9
|
layout: "centered",
|
|
@@ -2,6 +2,7 @@ import React from "react";
|
|
|
2
2
|
import { DrawerContentComponent, Nav } from "./drawer.types";
|
|
3
3
|
import DiamondIcon from "@mui/icons-material/Diamond";
|
|
4
4
|
import MenuBookIcon from "@mui/icons-material/MenuBook";
|
|
5
|
+
import AccountTreeIcon from "@mui/icons-material/AccountTree";
|
|
5
6
|
import { Box, Typography } from "@mui/material";
|
|
6
7
|
|
|
7
8
|
export const mockNav: Nav = {
|
|
@@ -63,6 +64,32 @@ export const mockNav: Nav = {
|
|
|
63
64
|
variant: "info",
|
|
64
65
|
},
|
|
65
66
|
},
|
|
67
|
+
{
|
|
68
|
+
id: "item2.3",
|
|
69
|
+
text: "Item 2.3",
|
|
70
|
+
href: "/items/2-3",
|
|
71
|
+
icon: <AccountTreeIcon />,
|
|
72
|
+
items: [
|
|
73
|
+
{
|
|
74
|
+
id: "item2.3.1",
|
|
75
|
+
text: "Item 2.3.1",
|
|
76
|
+
href: "/items/2-3-1",
|
|
77
|
+
icon: <DiamondIcon />,
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
id: "item2.3.2",
|
|
81
|
+
text: "Item 2.3.2",
|
|
82
|
+
href: "/items/2-3-2",
|
|
83
|
+
icon: <MenuBookIcon />,
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
id: "item2.3.3",
|
|
87
|
+
text: "Item 2.3.3",
|
|
88
|
+
href: "/items/2-3-3",
|
|
89
|
+
icon: <DiamondIcon />,
|
|
90
|
+
},
|
|
91
|
+
],
|
|
92
|
+
},
|
|
66
93
|
],
|
|
67
94
|
},
|
|
68
95
|
{
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { FunctionComponent, ReactElement } from "react";
|
|
2
|
-
import { BulletVariant } from "
|
|
3
|
-
import { LabelVariant } from "../label";
|
|
2
|
+
import { BulletVariant, LabelVariant } from "../../data-display";
|
|
4
3
|
import { DrawerProps as MuiDrawerProps } from "@mui/material";
|
|
5
4
|
|
|
6
5
|
export interface NavItemAvatar {
|
|
@@ -17,7 +16,7 @@ export interface NavItemBullet {
|
|
|
17
16
|
variant: BulletVariant;
|
|
18
17
|
}
|
|
19
18
|
|
|
20
|
-
export interface
|
|
19
|
+
export interface NavItemLink {
|
|
21
20
|
id: string;
|
|
22
21
|
text: string;
|
|
23
22
|
href: string;
|
|
@@ -27,6 +26,12 @@ export interface NavItem {
|
|
|
27
26
|
bullet?: NavItemBullet;
|
|
28
27
|
}
|
|
29
28
|
|
|
29
|
+
export type NavItemCollapsable = Pick<NavItemLink, "id" | "text" | "icon"> & {
|
|
30
|
+
items: NavItemLink[];
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export type NavItem = NavItemLink | NavItemCollapsable;
|
|
34
|
+
|
|
30
35
|
export interface NavSection {
|
|
31
36
|
title?: string;
|
|
32
37
|
items: NavItem[];
|
|
@@ -37,6 +42,10 @@ export interface Nav {
|
|
|
37
42
|
}
|
|
38
43
|
|
|
39
44
|
export interface DrawerContentProps {
|
|
45
|
+
/**
|
|
46
|
+
* Item currently selected in the navigation
|
|
47
|
+
*/
|
|
48
|
+
selectedItem?: string;
|
|
40
49
|
/**
|
|
41
50
|
* Object with the content that has to be rendered
|
|
42
51
|
*/
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { ComponentMeta } from "@storybook/react";
|
|
3
|
-
import { MiniDrawer } from "
|
|
3
|
+
import { MiniDrawer } from ".";
|
|
4
4
|
import { mockNav } from "../drawer.mock";
|
|
5
5
|
import { DrawerContent } from "../../drawer-content";
|
|
6
6
|
import { DrawerProvider } from "../drawer.provider";
|
|
7
7
|
import { Nav } from "../drawer.types";
|
|
8
|
-
import { withMemoryRouter } from "
|
|
8
|
+
import { withMemoryRouter } from "../../../../storybook";
|
|
9
9
|
|
|
10
10
|
export default {
|
|
11
|
-
title: "Drawers/MiniDrawer",
|
|
11
|
+
title: "Components/Drawers/MiniDrawer",
|
|
12
12
|
component: MiniDrawer,
|
|
13
13
|
decorators: [withMemoryRouter()],
|
|
14
14
|
parameters: {
|
|
@@ -8,8 +8,7 @@ import {
|
|
|
8
8
|
listItemTextClasses,
|
|
9
9
|
listSubheaderClasses,
|
|
10
10
|
} from "@mui/material";
|
|
11
|
-
import { labelClasses } from "
|
|
12
|
-
import { bulletClasses } from "../../bullet";
|
|
11
|
+
import { labelClasses, bulletClasses } from "../../../data-display";
|
|
13
12
|
|
|
14
13
|
export const MiniDrawer = styled(Drawer)(({ theme }) => {
|
|
15
14
|
const { isOpen } = useDrawer();
|