From 5d3e8a4d0c2ce2ad8f22df857ab3ce54fcfc38ac Mon Sep 17 00:00:00 2001
From: Armand Philippot <git@armandphilippot.com>
Date: Fri, 3 Nov 2023 12:22:47 +0100
Subject: refactor(components): replace Toolbar with Navbar component

* remove SearchModal and SettingsModal components
* add a generic NavbarItem component (instead of the previous toolbar
items to avoid unreadable styles...)
* move FlippingLabel component logic into NavbarItem since it is only
used here
---
 .../navbar/navbar-item/navbar-item.stories.tsx     | 55 ++++++++++++++++++++++
 1 file changed, 55 insertions(+)
 create mode 100644 src/components/organisms/navbar/navbar-item/navbar-item.stories.tsx

(limited to 'src/components/organisms/navbar/navbar-item/navbar-item.stories.tsx')

diff --git a/src/components/organisms/navbar/navbar-item/navbar-item.stories.tsx b/src/components/organisms/navbar/navbar-item/navbar-item.stories.tsx
new file mode 100644
index 0000000..1c56768
--- /dev/null
+++ b/src/components/organisms/navbar/navbar-item/navbar-item.stories.tsx
@@ -0,0 +1,55 @@
+import type { ComponentMeta, ComponentStory } from '@storybook/react';
+import { useBoolean } from '../../../../utils/hooks';
+import { NavbarItem } from './navbar-item';
+
+/**
+ * NavbarItem - Storybook Meta
+ */
+export default {
+  title: 'Organisms/Navbar/Item',
+  component: NavbarItem,
+  argTypes: {},
+} as ComponentMeta<typeof NavbarItem>;
+
+const Template: ComponentStory<typeof NavbarItem> = ({
+  isActive,
+  onDeactivate,
+  onToggle,
+  ...args
+}) => {
+  const { deactivate, state, toggle } = useBoolean(isActive);
+
+  return (
+    <NavbarItem
+      {...args}
+      isActive={state}
+      onDeactivate={deactivate}
+      onToggle={toggle}
+    />
+  );
+};
+
+/**
+ * NavbarItem Stories - Default
+ */
+export const Default = Template.bind({});
+Default.args = {
+  children: 'The modal contents.',
+  icon: 'cog',
+  id: 'default',
+  isActive: false,
+  label: 'Open example',
+};
+
+/**
+ * NavbarItem Stories - ModalVisibleAfterBreakpoint
+ */
+export const ModalVisibleAfterBreakpoint = Template.bind({});
+ModalVisibleAfterBreakpoint.args = {
+  children: 'The modal contents.',
+  icon: 'cog',
+  id: 'modal-visible',
+  isActive: false,
+  label: 'Open example',
+  modalVisibleFrom: 'md',
+};
-- 
cgit v1.2.3

