From 6e2a166905e41b07f26f0122a28f49c30ca1a1ec Mon Sep 17 00:00:00 2001 From: Timofey Boyko <55255132+TimofeyBoyko@users.noreply.github.com> Date: Thu, 8 Jun 2023 18:17:12 +0300 Subject: [PATCH] Web:Components:Selector: rewrite selector stories to typescript --- .../{Selector.stories.js => Selector.stories.tsx} | 9 +++++---- .../selector/sub-components/Item/Item.types.ts | 5 +++-- 2 files changed, 8 insertions(+), 6 deletions(-) rename packages/components/selector/{Selector.stories.js => Selector.stories.tsx} (95%) diff --git a/packages/components/selector/Selector.stories.js b/packages/components/selector/Selector.stories.tsx similarity index 95% rename from packages/components/selector/Selector.stories.js rename to packages/components/selector/Selector.stories.tsx index 37d0e92da0..5acc48875f 100644 --- a/packages/components/selector/Selector.stories.js +++ b/packages/components/selector/Selector.stories.tsx @@ -1,10 +1,11 @@ import React from "react"; import styled from "styled-components"; -import Selector from "./"; +import Selector from "."; import CustomSvgUrl from "PUBLIC_DIR/images/icons/32/room/custom.svg?url"; import ArchiveSvgUrl from "PUBLIC_DIR/images/room.archive.svg?url"; import EmptyScreenFilter from "PUBLIC_DIR/images/empty_screen_filter.png"; +import { Item } from "./sub-components/Item/Item.types"; const StyledRowLoader = styled.div` width: 100%; @@ -48,8 +49,8 @@ function makeName() { return result; } -const getItems = (count) => { - const items = []; +const getItems = (count: number) => { + const items: Item[] = []; for (let i = 0; i < count / 2; i++) { items.push({ @@ -123,7 +124,7 @@ const totalItems = items.length; const Template = (args) => { const [rendItems, setRendItems] = React.useState(renderedItems); - const loadNextPage = (index) => { + const loadNextPage = (index: number) => { setRendItems((val) => [...val, ...items.slice(index, index + 100)]); }; diff --git a/packages/components/selector/sub-components/Item/Item.types.ts b/packages/components/selector/sub-components/Item/Item.types.ts index 176cc4639a..7e8a7583d8 100644 --- a/packages/components/selector/sub-components/Item/Item.types.ts +++ b/packages/components/selector/sub-components/Item/Item.types.ts @@ -1,8 +1,9 @@ export type Item = { + key?: string; id?: number | string; label: string; - avatar: string; - icon: string; + avatar?: string; + icon?: string; role?: string; isSelected?: boolean; email?: string;