From f9aadb20d3cdf493e226295feca863d947486080 Mon Sep 17 00:00:00 2001 From: Hazem Krimi Date: Mon, 31 Mar 2025 20:56:14 +0100 Subject: [PATCH] Setup library for publishing to npm --- .gitignore | 1 + .storybook/preview.ts | 7 +- package.json | 31 +- src/components/Alert/index.stories.ts | 2 +- src/components/Alert/index.tsx | 2 +- src/components/Avatar/index.stories.ts | 1 - src/components/Avatar/index.tsx | 2 +- src/components/Box/index.stories.ts | 1 - src/components/Button/index.stories.ts | 1 - src/components/Button/index.tsx | 2 +- src/components/Card/index.stories.ts | 1 - src/components/Card/index.tsx | 6 +- src/components/CheckBox/index.stories.ts | 2 +- src/components/CheckBox/index.tsx | 2 +- src/components/Chip/index.stories.ts | 1 - src/components/Chip/index.tsx | 2 +- src/components/ContextMenu/index.stories.tsx | 6 +- src/components/ContextMenu/index.tsx | 2 +- src/components/IconButton/index.stories.ts | 28 -- src/components/IconButton/index.stories.tsx | 30 ++ src/components/IconButton/index.tsx | 2 +- src/components/IconButton/styles.ts | 1 + src/components/ImagePreview/index.stories.ts | 25 - src/components/ImagePreview/index.stories.tsx | 39 ++ src/components/ImagePreview/index.tsx | 2 +- src/components/Input/index.stories.ts | 1 - src/components/Input/index.tsx | 2 +- src/components/Link/index.stories.ts | 2 +- src/components/Link/index.tsx | 2 +- src/components/Menu/index.stories.ts | 27 -- src/components/Menu/index.stories.tsx | 35 ++ src/components/Menu/index.tsx | 2 +- src/components/Modal/index.stories.ts | 1 - src/components/Modal/index.tsx | 8 +- src/components/Search/index.stories.ts | 1 - src/components/Search/index.tsx | 2 +- src/components/Select/index.stories.ts | 1 - src/components/Select/index.tsx | 2 +- src/components/Spinner/index.stories.ts | 2 +- src/components/Spinner/index.tsx | 8 +- src/components/Spinner/styles.ts | 8 +- src/components/Text/index.stories.ts | 2 +- src/components/Text/index.tsx | 2 +- src/components/TextArea/index.stories.ts | 1 - src/components/TextArea/index.tsx | 2 +- src/components/ThemeProvider/index.tsx | 19 + src/index.ts | 64 +++ src/index.tsx | 61 --- src/themes/index.ts | 2 +- tsconfig.json | 9 +- vite.config.ts | 22 +- yarn.lock | 444 +++++++++++++++++- 52 files changed, 702 insertions(+), 229 deletions(-) delete mode 100644 src/components/IconButton/index.stories.ts create mode 100644 src/components/IconButton/index.stories.tsx delete mode 100644 src/components/ImagePreview/index.stories.ts create mode 100644 src/components/ImagePreview/index.stories.tsx delete mode 100644 src/components/Menu/index.stories.ts create mode 100644 src/components/Menu/index.stories.tsx create mode 100644 src/components/ThemeProvider/index.tsx create mode 100644 src/index.ts delete mode 100644 src/index.tsx diff --git a/.gitignore b/.gitignore index 1023287..207a009 100644 --- a/.gitignore +++ b/.gitignore @@ -13,6 +13,7 @@ codegen-* # production /build +/dist # misc .DS_Store diff --git a/.storybook/preview.ts b/.storybook/preview.ts index 5b87664..ee65e80 100644 --- a/.storybook/preview.ts +++ b/.storybook/preview.ts @@ -3,7 +3,7 @@ import type { Preview } from '@storybook/react' import { ThemeProvider } from 'styled-components'; import { withThemeFromJSXProvider } from '@storybook/addon-themes'; -import { theme } from '../src/themes'; +import { defaultTheme } from '../src/themes'; import GlobalStyles from '../src/components/GlobalStyles'; @@ -16,15 +16,14 @@ const preview: Preview = { }, }, }, - decorators: [withThemeFromJSXProvider({ themes: { - theme, + theme: defaultTheme, }, defaultTheme: 'theme', Provider: ThemeProvider, GlobalStyles, - })] + })], }; export default preview; diff --git a/package.json b/package.json index 7dec51d..a8bfdc7 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,14 @@ { - "name": "astrobuild", + "name": "ugly-ui", "version": "1.0.0", - "private": false, "type": "module", + "main": "dist/ugly-ui.cjs.js", + "module": "dist/ugly-ui.es.js", + "default": "dist/ugly-ui.umd.js", + "types": "dist/index.d.ts", + "files": [ + "dist" + ], "scripts": { "build": "vite build", "lint": "eslint src", @@ -10,18 +16,6 @@ "storybook": "storybook dev -p 6006", "build-storybook": "storybook build" }, - "browserslist": { - "production": [ - ">0.2%", - "not dead", - "not op_mini all" - ], - "development": [ - "last 1 chrome version", - "last 1 firefox version", - "last 1 safari version" - ] - }, "devDependencies": { "@chromatic-com/storybook": "^3", "@eslint/js": "^9.22.0", @@ -55,11 +49,12 @@ "typescript": "^5.8.2", "typescript-eslint": "^8.26.1", "vite": "^6.2.2", + "vite-plugin-dts": "^4.5.3", "vite-plugin-svgr": "^4.3.0" }, - "peerDependencies": { - "react": "^19.0.0", + "peerDependencies": { + "react": "^19.0.0", "react-dom": "^19.0.0", - "styled-components": "^6.1.15" - } + "styled-components": "^6.1.15" + } } diff --git a/src/components/Alert/index.stories.ts b/src/components/Alert/index.stories.ts index d5cc358..dc9e0dd 100644 --- a/src/components/Alert/index.stories.ts +++ b/src/components/Alert/index.stories.ts @@ -8,7 +8,7 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], + tags: ['!autodocs'], argTypes: { text: { control: 'text' }, color: { options: ['client', 'productOwner', 'developer', 'admin'] }, diff --git a/src/components/Alert/index.tsx b/src/components/Alert/index.tsx index eb637c3..b696d30 100644 --- a/src/components/Alert/index.tsx +++ b/src/components/Alert/index.tsx @@ -1,6 +1,6 @@ import { Wrapper } from './styles'; -type AlertProps = { +export type AlertProps = { className?: string; color: | 'client' diff --git a/src/components/Avatar/index.stories.ts b/src/components/Avatar/index.stories.ts index bb4c3fd..2ccd591 100644 --- a/src/components/Avatar/index.stories.ts +++ b/src/components/Avatar/index.stories.ts @@ -8,7 +8,6 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], argTypes: { text: { control: 'text' }, color: { options: ['client', 'productOwner', 'developer', 'admin'] }, diff --git a/src/components/Avatar/index.tsx b/src/components/Avatar/index.tsx index 5f912fa..a294427 100644 --- a/src/components/Avatar/index.tsx +++ b/src/components/Avatar/index.tsx @@ -1,6 +1,6 @@ import { Wrapper } from './styles'; -type AvatarProps = { +export type AvatarProps = { className?: string; color?: 'client' | 'productOwner' | 'developer' | 'admin' | string; size?: 'small' | 'big'; diff --git a/src/components/Box/index.stories.ts b/src/components/Box/index.stories.ts index 8f4d86f..ddc5353 100644 --- a/src/components/Box/index.stories.ts +++ b/src/components/Box/index.stories.ts @@ -8,7 +8,6 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], argTypes: { color: { control: 'text' }, children: { control: 'text' }, diff --git a/src/components/Button/index.stories.ts b/src/components/Button/index.stories.ts index 5af62ae..2d97718 100644 --- a/src/components/Button/index.stories.ts +++ b/src/components/Button/index.stories.ts @@ -8,7 +8,6 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], argTypes: { color: { options: ['client', 'productOwner', 'developer', 'admin', 'error'] }, text: { control: 'text' }, diff --git a/src/components/Button/index.tsx b/src/components/Button/index.tsx index f6b0bea..74f6896 100644 --- a/src/components/Button/index.tsx +++ b/src/components/Button/index.tsx @@ -2,7 +2,7 @@ import Spinner from '../Spinner'; import { Wrapper } from './styles'; -type ButtonProps = { +export type ButtonProps = { color: 'client' | 'productOwner' | 'developer' | 'admin' | 'error'; size?: 'small' | 'big'; variant?: 'primary-action' | 'secondary-action' | 'outlined' | 'text'; diff --git a/src/components/Card/index.stories.ts b/src/components/Card/index.stories.ts index bf6196c..1e9a13c 100644 --- a/src/components/Card/index.stories.ts +++ b/src/components/Card/index.stories.ts @@ -8,7 +8,6 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], argTypes: { color: { options: ['client', 'productOwner', 'developer', 'admin', 'error'] }, }, diff --git a/src/components/Card/index.tsx b/src/components/Card/index.tsx index baaef73..c604233 100644 --- a/src/components/Card/index.tsx +++ b/src/components/Card/index.tsx @@ -1,9 +1,9 @@ import Box from '../Box'; import Text from '../Text'; -import { theme } from '../../themes'; +import { defaultTheme } from '../../themes'; -type CardProps = { +export type CardProps = { title: string; description: string; selectable?: boolean; @@ -25,7 +25,7 @@ const Card = ({ padding='10px' background='white' boxShadow='1px 1px 10px rgba(50, 59, 105, 0.25)' - border={selected ? `2px solid ${theme.colors[color].main}` : undefined} + border={selected ? `2px solid ${defaultTheme.colors[color].main}` : undefined} onClick={selectable ? toggleSelect : () => {}} display='grid' gridTemplateRows='auto' diff --git a/src/components/CheckBox/index.stories.ts b/src/components/CheckBox/index.stories.ts index d5f9448..d62a943 100644 --- a/src/components/CheckBox/index.stories.ts +++ b/src/components/CheckBox/index.stories.ts @@ -8,7 +8,7 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], + tags: ['!autodocs'], argTypes: { color: { options: ['client', 'productOwner', 'developer', 'admin'] }, label: { control: 'text' }, diff --git a/src/components/CheckBox/index.tsx b/src/components/CheckBox/index.tsx index 8a8aefe..510d883 100644 --- a/src/components/CheckBox/index.tsx +++ b/src/components/CheckBox/index.tsx @@ -4,7 +4,7 @@ import Text from '../Text'; import { Check } from '../../assets'; -type CheckBoxProps = { +export type CheckBoxProps = { className?: string; color?: 'client' | 'productOwner' | 'developer' | 'admin'; label: string; diff --git a/src/components/Chip/index.stories.ts b/src/components/Chip/index.stories.ts index 549db46..0269a64 100644 --- a/src/components/Chip/index.stories.ts +++ b/src/components/Chip/index.stories.ts @@ -8,7 +8,6 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], argTypes: { color: { options: ['client', 'productOwner', 'developer', 'admin'] }, text: { control: 'text' }, diff --git a/src/components/Chip/index.tsx b/src/components/Chip/index.tsx index b016019..625b4c6 100644 --- a/src/components/Chip/index.tsx +++ b/src/components/Chip/index.tsx @@ -2,7 +2,7 @@ import { Wrapper } from './styles'; import Text from '../Text'; -type ChipProps = { +export type ChipProps = { variant?: 'outlined' | 'filled'; color: | 'client' diff --git a/src/components/ContextMenu/index.stories.tsx b/src/components/ContextMenu/index.stories.tsx index 649d669..777c39f 100644 --- a/src/components/ContextMenu/index.stories.tsx +++ b/src/components/ContextMenu/index.stories.tsx @@ -6,7 +6,9 @@ import Box from '../Box'; const meta = { title: 'ContextMenu', component: ContextMenu, - tags: ['autodocs'], + parameters: { + layout: 'centered', + }, } satisfies Meta; export default meta; @@ -27,4 +29,4 @@ export const Example: Story = { ) }, -} +}; diff --git a/src/components/ContextMenu/index.tsx b/src/components/ContextMenu/index.tsx index 40550e3..eb480e8 100644 --- a/src/components/ContextMenu/index.tsx +++ b/src/components/ContextMenu/index.tsx @@ -4,7 +4,7 @@ import { Wrapper } from './styles'; import Text from '../Text'; -type ContextMenuProps = { +export type ContextMenuProps = { className?: string; items: Array<{ label: string; action?: () => void }>; component: string; diff --git a/src/components/IconButton/index.stories.ts b/src/components/IconButton/index.stories.ts deleted file mode 100644 index e18abab..0000000 --- a/src/components/IconButton/index.stories.ts +++ /dev/null @@ -1,28 +0,0 @@ -import type { Meta, StoryObj } from '@storybook/react'; - -import IconButton from '.'; - -const meta = { - title: 'IconButton', - component: IconButton, - parameters: { - layout: 'centered', - }, - tags: ['autodocs'], - argTypes: { - color: { options: ['client', 'productOwner', 'developer', 'admin'] }, - size: { options: ['small', 'medium', 'big'] }, - }, -} satisfies Meta; - -export default meta; - -type Story = StoryObj; - -export const Example: Story = { - args: { - color: 'admin', - size: 'medium', - onClick: () => window.alert('Hello, World!') - }, -}; diff --git a/src/components/IconButton/index.stories.tsx b/src/components/IconButton/index.stories.tsx new file mode 100644 index 0000000..748ab15 --- /dev/null +++ b/src/components/IconButton/index.stories.tsx @@ -0,0 +1,30 @@ +import type { Meta, StoryObj } from '@storybook/react'; + +import IconButton from '.'; +import Add from '../../assets/icons/add.svg?react'; + +const meta = { + title: 'IconButton', + component: IconButton, + parameters: { + layout: 'centered', + }, + tags: ['!autodocs'], +} satisfies Meta; + +export default meta; + +type Story = StoryObj; + +export const Example: Story = { + render: () => { + return ( + } + size='medium' + onClick={() => window.alert('Hello, World!')} + /> + ) + } +}; diff --git a/src/components/IconButton/index.tsx b/src/components/IconButton/index.tsx index ccd9d31..5bc3629 100644 --- a/src/components/IconButton/index.tsx +++ b/src/components/IconButton/index.tsx @@ -1,6 +1,6 @@ import { Wrapper } from './styles'; -type IconButtonProps = { +export type IconButtonProps = { color?: 'client' | 'productOwner' | 'developer' | 'admin'; size?: 'small' | 'medium' | 'big'; icon?: React.ReactNode; diff --git a/src/components/IconButton/styles.ts b/src/components/IconButton/styles.ts index 0e97323..dd549ef 100644 --- a/src/components/IconButton/styles.ts +++ b/src/components/IconButton/styles.ts @@ -22,6 +22,7 @@ export const Wrapper = styled.button` svg { display: flex; align-items: center; + justify-content: center; path { stroke: ${({ theme }) => theme.colors.white.main}; diff --git a/src/components/ImagePreview/index.stories.ts b/src/components/ImagePreview/index.stories.ts deleted file mode 100644 index 968eb5e..0000000 --- a/src/components/ImagePreview/index.stories.ts +++ /dev/null @@ -1,25 +0,0 @@ -import type { Meta, StoryObj } from '@storybook/react'; - -import ImagePreview from '.'; - -const meta = { - title: 'ImagePreview', - component: ImagePreview, - parameters: { - layout: 'centered', - }, - tags: ['autodocs'], - argTypes: { - color: { options: ['client', 'productOwner', 'developer', 'admin'] }, - }, -} satisfies Meta; - -export default meta; - -type Story = StoryObj; - -export const Example: Story = { - args: { - color: 'developer', - }, -}; diff --git a/src/components/ImagePreview/index.stories.tsx b/src/components/ImagePreview/index.stories.tsx new file mode 100644 index 0000000..da224d7 --- /dev/null +++ b/src/components/ImagePreview/index.stories.tsx @@ -0,0 +1,39 @@ +import type { Meta, StoryObj } from '@storybook/react'; +import { useState } from 'react'; + +import ImagePreview, {ImagePreviewProps} from '.'; + +const meta = { + title: 'ImagePreview', + component: ImagePreview, + parameters: { + layout: 'centered', + }, +} satisfies Meta; + +export default meta; + +type Story = StoryObj; + +export const Example: Story = { + render: (args) => { + const [image, setImage] = useState(undefined); + + return ( + <> + { + console.log(event) + setImage({ + name: 'image', + src: event.target.value + }) + }} + color={args.color} + /> +

{image?.src}

+ + ); + } +}; diff --git a/src/components/ImagePreview/index.tsx b/src/components/ImagePreview/index.tsx index f3bcc04..22630c2 100644 --- a/src/components/ImagePreview/index.tsx +++ b/src/components/ImagePreview/index.tsx @@ -1,7 +1,7 @@ import { Wrapper } from './styles'; import { Upload, Close } from '../../assets'; -type ImagePreviewProps = { +export type ImagePreviewProps = { className?: string; color?: | 'client' diff --git a/src/components/Input/index.stories.ts b/src/components/Input/index.stories.ts index 02a76f6..21eaa4b 100644 --- a/src/components/Input/index.stories.ts +++ b/src/components/Input/index.stories.ts @@ -8,7 +8,6 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], argTypes: { color: { options: ['client', 'productOwner', 'developer', 'admin'] }, }, diff --git a/src/components/Input/index.tsx b/src/components/Input/index.tsx index c2f57bd..c15312b 100644 --- a/src/components/Input/index.tsx +++ b/src/components/Input/index.tsx @@ -3,7 +3,7 @@ import Text from '../Text'; import { Upload } from '../../assets'; import { Wrapper } from './styles'; -type InputProps = { +export type InputProps = { className?: string; color?: | 'client' diff --git a/src/components/Link/index.stories.ts b/src/components/Link/index.stories.ts index 3725ae5..af77f90 100644 --- a/src/components/Link/index.stories.ts +++ b/src/components/Link/index.stories.ts @@ -8,7 +8,7 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], + tags: ['!autodocs'], argTypes: { color: { options: ['success', 'error', 'warning', 'black'] }, }, diff --git a/src/components/Link/index.tsx b/src/components/Link/index.tsx index 149492b..5fa7471 100644 --- a/src/components/Link/index.tsx +++ b/src/components/Link/index.tsx @@ -1,7 +1,7 @@ import { JSX } from 'react'; import { Wrapper } from './styles'; -type LinkProps = { +export type LinkProps = { href?: string; url?: boolean; children?: React.ReactNode | JSX.Element | string; diff --git a/src/components/Menu/index.stories.ts b/src/components/Menu/index.stories.ts deleted file mode 100644 index 7b736f4..0000000 --- a/src/components/Menu/index.stories.ts +++ /dev/null @@ -1,27 +0,0 @@ -import type { Meta, StoryObj } from '@storybook/react'; - -import Menu from '.'; - -const meta = { - title: 'Menu', - component: Menu, - parameters: { - layout: 'centered', - }, - tags: ['autodocs'], -} satisfies Meta; - -export default meta; - -type Story = StoryObj; - -export const Example: Story = { - args: { - items: [ - { - label: 'Hello, World!', - } - ], - component: 'component', - }, -}; diff --git a/src/components/Menu/index.stories.tsx b/src/components/Menu/index.stories.tsx new file mode 100644 index 0000000..616eb9c --- /dev/null +++ b/src/components/Menu/index.stories.tsx @@ -0,0 +1,35 @@ +import type { Meta, StoryObj } from '@storybook/react'; + +import Menu from '.'; +import Box from '../Box'; + +import Add from '../../assets/icons/add.svg?react'; + +const meta = { + title: 'Menu', + component: Menu, + parameters: { + layout: 'centered', + }, + tags: ['!autodocs'], +} satisfies Meta; + +export default meta; + +type Story = StoryObj; + +export const Example: Story = { + render: () => { + return ( + <> + , label: 'Item', action: () => window.alert('Adding item!') } + ]} + /> + Has a Menu! + + ) + }, +}; diff --git a/src/components/Menu/index.tsx b/src/components/Menu/index.tsx index 8c014fe..56fc198 100644 --- a/src/components/Menu/index.tsx +++ b/src/components/Menu/index.tsx @@ -3,7 +3,7 @@ import { Wrapper } from './styles'; import Text from '../Text'; -type MenuProps = { +export type MenuProps = { className?: string; items: Array<{ icon?: React.ReactNode; diff --git a/src/components/Modal/index.stories.ts b/src/components/Modal/index.stories.ts index 3295a19..b651e1e 100644 --- a/src/components/Modal/index.stories.ts +++ b/src/components/Modal/index.stories.ts @@ -8,7 +8,6 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], argTypes: { color: { options: ['client', 'productOwner', 'developer', 'admin', 'error'] }, title: { control: 'text' }, diff --git a/src/components/Modal/index.tsx b/src/components/Modal/index.tsx index 2fa4ebb..5046ed5 100644 --- a/src/components/Modal/index.tsx +++ b/src/components/Modal/index.tsx @@ -1,5 +1,5 @@ import { JSX } from 'react'; -import { theme } from '../../themes'; +import { defaultTheme } from '../../themes'; import Box from '../Box'; import Button from '../Button'; @@ -7,7 +7,7 @@ import Text from '../Text'; import { Wrapper } from './styles'; -type ModalProps = { +export type ModalProps = { color: 'client' | 'productOwner' | 'developer' | 'admin'; title: string; description: string; @@ -27,7 +27,7 @@ const Modal = ({ return ( {title} - + {description} {children} diff --git a/src/components/Search/index.stories.ts b/src/components/Search/index.stories.ts index 422b0ed..29abdf8 100644 --- a/src/components/Search/index.stories.ts +++ b/src/components/Search/index.stories.ts @@ -8,7 +8,6 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], argTypes: { color: { options: ['client', 'productOwner', 'developer', 'admin', 'error'] }, value: { control: 'text' }, diff --git a/src/components/Search/index.tsx b/src/components/Search/index.tsx index b1ca257..d0c85fb 100644 --- a/src/components/Search/index.tsx +++ b/src/components/Search/index.tsx @@ -2,7 +2,7 @@ import { Wrapper } from './styles'; import SearchIcon from '../../assets/icons/search.svg?react'; -type SearchProps = { +export type SearchProps = { className?: string; color?: | 'client' diff --git a/src/components/Select/index.stories.ts b/src/components/Select/index.stories.ts index 0a84352..0c4dbb8 100644 --- a/src/components/Select/index.stories.ts +++ b/src/components/Select/index.stories.ts @@ -8,7 +8,6 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], argTypes: { color: { options: ['client', 'productOwner', 'developer', 'admin', 'error'] }, value: { control: 'text' }, diff --git a/src/components/Select/index.tsx b/src/components/Select/index.tsx index bd0db45..0097d72 100644 --- a/src/components/Select/index.tsx +++ b/src/components/Select/index.tsx @@ -2,7 +2,7 @@ import { Wrapper } from './styles'; import Text from '../Text'; -type SelectProps = { +export type SelectProps = { className?: string; color?: | 'client' diff --git a/src/components/Spinner/index.stories.ts b/src/components/Spinner/index.stories.ts index 2c55ae4..047a107 100644 --- a/src/components/Spinner/index.stories.ts +++ b/src/components/Spinner/index.stories.ts @@ -8,7 +8,7 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], + tags: ['!autodocs'], argTypes: { color: { options: ['client', 'productOwner', 'developer', 'admin', 'error'] }, }, diff --git a/src/components/Spinner/index.tsx b/src/components/Spinner/index.tsx index d03b9b5..be180f3 100644 --- a/src/components/Spinner/index.tsx +++ b/src/components/Spinner/index.tsx @@ -1,6 +1,6 @@ import { Wrapper } from './styles'; -type SpinnerProps = { +export type SpinnerProps = { color?: | 'client' | 'productOwner' @@ -9,12 +9,12 @@ type SpinnerProps = { | 'white' | 'black' | 'gray'; - fullScreen?: boolean; + fullWidth?: boolean; }; -const Spinner = ({ fullScreen = false, color = 'client' }: SpinnerProps) => { +const Spinner = ({ fullWidth = false, color = 'client' }: SpinnerProps) => { return ( - +
); diff --git a/src/components/Spinner/styles.ts b/src/components/Spinner/styles.ts index 75b510e..c17bba5 100644 --- a/src/components/Spinner/styles.ts +++ b/src/components/Spinner/styles.ts @@ -9,12 +9,12 @@ type WrapperProps = { | 'white' | 'black' | 'gray'; - fullScreen?: boolean; + fullWidth?: boolean; }; export const Wrapper = styled.div` - ${({ fullScreen }) => - fullScreen && + ${({ fullWidth }) => + fullWidth && css` position: fixed; top: 50%; @@ -28,6 +28,7 @@ export const Wrapper = styled.div` width: 80px; height: 80px; } + .lds-dual-ring:after { content: ' '; display: block; @@ -46,6 +47,7 @@ export const Wrapper = styled.div` transparent; animation: lds-dual-ring 1.2s linear infinite; } + @keyframes lds-dual-ring { 0% { transform: rotate(0deg); diff --git a/src/components/Text/index.stories.ts b/src/components/Text/index.stories.ts index 6cdbb1b..47abe25 100644 --- a/src/components/Text/index.stories.ts +++ b/src/components/Text/index.stories.ts @@ -8,7 +8,7 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], + tags: ['!autodocs'], argTypes: { color: { options: ['client', 'productOwner', 'developer', 'admin', 'error'] }, variant: { options: ['display', 'headline', 'title', 'subheader', 'body', 'caption'] }, diff --git a/src/components/Text/index.tsx b/src/components/Text/index.tsx index e23e3b4..e6bdab4 100644 --- a/src/components/Text/index.tsx +++ b/src/components/Text/index.tsx @@ -1,6 +1,6 @@ import { Wrapper } from './styles'; -type TextProps = { +export type TextProps = { children?: string; className?: string; variant?: 'display' | 'headline' | 'title' | 'subheader' | 'body' | 'caption'; diff --git a/src/components/TextArea/index.stories.ts b/src/components/TextArea/index.stories.ts index d1b8ade..8d9a4d6 100644 --- a/src/components/TextArea/index.stories.ts +++ b/src/components/TextArea/index.stories.ts @@ -8,7 +8,6 @@ const meta = { parameters: { layout: 'centered', }, - tags: ['autodocs'], argTypes: { color: { options: ['client', 'productOwner', 'developer', 'admin', 'error'] }, }, diff --git a/src/components/TextArea/index.tsx b/src/components/TextArea/index.tsx index f4c5a41..2b654f6 100644 --- a/src/components/TextArea/index.tsx +++ b/src/components/TextArea/index.tsx @@ -2,7 +2,7 @@ import { Wrapper } from './styles'; import Text from '../Text'; -type TextAreaProps = { +export type TextAreaProps = { className?: string; color?: | 'client' diff --git a/src/components/ThemeProvider/index.tsx b/src/components/ThemeProvider/index.tsx new file mode 100644 index 0000000..565e6eb --- /dev/null +++ b/src/components/ThemeProvider/index.tsx @@ -0,0 +1,19 @@ +import { ThemeProvider as StyledThemeProvider } from 'styled-components'; +import { DefaultTheme } from 'styled-components'; + +import { defaultTheme } from '../../themes'; + +export type ThemeProviderProps = { + children: React.ReactNode; + theme?: DefaultTheme; +}; + +function ThemeProvider({ children, theme = defaultTheme }: ThemeProviderProps) { + return ( + + {children} + + ); +} + +export default ThemeProvider; diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..59d8469 --- /dev/null +++ b/src/index.ts @@ -0,0 +1,64 @@ +import Button, { ButtonProps } from './components/Button'; +import IconButton, { IconButtonProps } from './components/IconButton'; +import Box, { BoxProps } from './components/Box'; +import Text, { TextProps } from './components/Text'; +import Link, { LinkProps } from './components/Link'; +import Input, { InputProps } from './components/Input'; +import TextArea, { TextAreaProps } from './components/TextArea'; +import Select, { SelectProps } from './components/Select'; +import Search, { SearchProps } from './components/Search'; +import Avatar, { AvatarProps } from './components/Avatar'; +import ContextMenu, { ContextMenuProps } from './components/ContextMenu'; +import Spinner, { SpinnerProps } from './components/Spinner'; +import Alert, { AlertProps } from './components/Alert'; +import CheckBox, { CheckBoxProps } from './components/CheckBox'; +import Menu, { MenuProps } from './components/Menu'; +import Modal, { ModalProps } from './components/Modal'; +import ImagePreview, { ImagePreviewProps } from './components/ImagePreview'; +import Chip, { ChipProps } from './components/Chip'; +import ThemeProvider, { ThemeProviderProps } from './components/ThemeProvider'; +import GlobalStyles from './components/GlobalStyles'; + +export { + Button, + IconButton, + Box, + Text, + Link, + Input, + TextArea, + Select, + Search, + Avatar, + ContextMenu, + Menu, + Spinner, + Alert, + CheckBox, + Modal, + ImagePreview, + Chip, + GlobalStyles, + ThemeProvider, +}; +export type { + ButtonProps, + IconButtonProps, + BoxProps, + TextProps, + LinkProps, + InputProps, + TextAreaProps, + SelectProps, + SearchProps, + AvatarProps, + ContextMenuProps, + MenuProps, + SpinnerProps, + AlertProps, + CheckBoxProps, + ModalProps, + ImagePreviewProps, + ChipProps, + ThemeProviderProps, +}; diff --git a/src/index.tsx b/src/index.tsx deleted file mode 100644 index fda0db3..0000000 --- a/src/index.tsx +++ /dev/null @@ -1,61 +0,0 @@ -import Button from './components/Button'; -import IconButton from './components/IconButton'; -import Box from './components/Box'; -import Text from './components/Text'; -import Link from './components/Link'; -import Input from './components/Input'; -import TextArea from './components/TextArea'; -import Select from './components/Select'; -import Search from './components/Search'; -import Avatar from './components/Avatar'; -import ContextMenu from './components/ContextMenu'; -import Spinner from './components/Spinner'; -import Alert from './components/Alert'; -import CheckBox from './components/CheckBox'; -import Menu from './components/Menu'; -import Navbar from './components/Navbar'; -import Sidebar from './components/Sidebar'; -import SectionSelector from './components/SectionSelector'; -import Modal from './components/Modal'; -import SidebarItem from './components/SidebarItem'; -import ImagePreview from './components/ImagePreview'; -import FeatureCard from './components/FeatureCard'; -import FrontendFeatureCard from './components/FrontendFeatureCard'; -import BackendFeatureCard from './components/BackendFeatureCard'; -import Chip from './components/Chip'; -import CategoryCard from './components/CategoryCard'; -import TemplateCard from './components/TemplateCard'; -import SupportSidebar from './components/SupportSidebar'; -import GlobalStyles from './components/GlobalStyles'; - -export { - Button, - IconButton, - Box, - Text, - Link, - Input, - TextArea, - Select, - Search, - Avatar, - ContextMenu, - Menu, - Spinner, - Alert, - CheckBox, - Navbar, - Sidebar, - SectionSelector, - Modal, - SidebarItem, - ImagePreview, - FeatureCard, - FrontendFeatureCard, - BackendFeatureCard, - Chip, - CategoryCard, - TemplateCard, - SupportSidebar, - GlobalStyles, -}; diff --git a/src/themes/index.ts b/src/themes/index.ts index a4ce504..8187a6a 100644 --- a/src/themes/index.ts +++ b/src/themes/index.ts @@ -1,6 +1,6 @@ import { DefaultTheme } from 'styled-components'; -export const theme: DefaultTheme = { +export const defaultTheme: DefaultTheme = { colors: { black: { main: '#000000', diff --git a/tsconfig.json b/tsconfig.json index b945552..55b5b2a 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,15 +1,17 @@ { "compilerOptions": { - "target": "ES2020", + "target": "ESNext", "useDefineForClassFields": true, - "lib": ["ES2020", "DOM", "DOM.Iterable"], + "lib": ["ESNext", "DOM", "DOM.Iterable"], "module": "ESNext", "skipLibCheck": true, + "preserveModules": true, /* Bundler mode */ "baseUrl": "src", - "moduleResolution": "bundler", + "moduleResolution": "Node", "allowImportingTsExtensions": true, + "allowSyntheticDefaultImports": true, "resolveJsonModule": true, "isolatedModules": true, "noEmit": true, @@ -23,5 +25,6 @@ "noFallthroughCasesInSwitch": true }, "include": ["src"], + "exclude": ["node_modules", "dist"], "references": [{ "path": "./tsconfig.node.json" }] } diff --git a/vite.config.ts b/vite.config.ts index 41db260..6654e5a 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,13 +1,29 @@ import { defineConfig } from "vite"; +import path from 'node:path'; +import dts from "vite-plugin-dts"; import react from "@vitejs/plugin-react"; import svgr from "vite-plugin-svgr"; +import { peerDependencies } from "./package.json"; + export default defineConfig({ - plugins: [react(), svgr()], - resolve: { + plugins: [react(), svgr(), dts({ insertTypesEntry: true, exclude: ["**/*.stories.ts", "**/*.test.tsx"] })], + resolve: { alias: { - src: '/src', + src: path.resolve(__dirname, './src'), }, }, + build: { + lib: { + entry: path.resolve(__dirname, 'src/index.ts'), + name: 'ugly-ui', + fileName: (format) => `ugly-ui.${format}.js`, + formats: ['es', 'cjs', 'umd'], + }, + rollupOptions: { + external: Object.keys(peerDependencies), + output: { globals: { react: 'React', 'react-dom': 'ReactDOM', 'styled-components': 'styled-components' } }, + } + }, }) diff --git a/yarn.lock b/yarn.lock index b3511e3..894eb00 100644 --- a/yarn.lock +++ b/yarn.lock @@ -124,6 +124,13 @@ dependencies: "@babel/types" "^7.26.10" +"@babel/parser@^7.25.3": + version "7.27.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.27.0.tgz#3d7d6ee268e41d2600091cbd4e145ffee85a44ec" + integrity sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg== + dependencies: + "@babel/types" "^7.27.0" + "@babel/plugin-transform-react-jsx-self@^7.25.9": version "7.25.9" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.25.9.tgz#c0b6cae9c1b73967f7f9eb2fca9536ba2fad2858" @@ -175,6 +182,14 @@ "@babel/helper-string-parser" "^7.25.9" "@babel/helper-validator-identifier" "^7.25.9" +"@babel/types@^7.27.0": + version "7.27.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.27.0.tgz#ef9acb6b06c3173f6632d993ecb6d4ae470b4559" + integrity sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg== + dependencies: + "@babel/helper-string-parser" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@chromatic-com/storybook@^3": version "3.2.6" resolved "https://registry.yarnpkg.com/@chromatic-com/storybook/-/storybook-3.2.6.tgz#24fd1a2536311c7538145ccc4d971e90c202e43b" @@ -482,6 +497,49 @@ dependencies: "@types/mdx" "^2.0.0" +"@microsoft/api-extractor-model@7.30.5": + version "7.30.5" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.30.5.tgz#09b4412a3344ce8e6b58114bf350d6d0b8c86b63" + integrity sha512-0ic4rcbcDZHz833RaTZWTGu+NpNgrxVNjVaor0ZDUymfDFzjA/Uuk8hYziIUIOEOSTfmIQqyzVwlzxZxPe7tOA== + dependencies: + "@microsoft/tsdoc" "~0.15.1" + "@microsoft/tsdoc-config" "~0.17.1" + "@rushstack/node-core-library" "5.13.0" + +"@microsoft/api-extractor@^7.50.1": + version "7.52.2" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.52.2.tgz#0b3ac9ddedc643290319b376002f7432a5198b7e" + integrity sha512-RX37V5uhBBPUvrrcmIxuQ8TPsohvr6zxo7SsLPOzBYcH9nbjbvtdXrts4cxHCXGOin9JR5ar37qfxtCOuEBTHA== + dependencies: + "@microsoft/api-extractor-model" "7.30.5" + "@microsoft/tsdoc" "~0.15.1" + "@microsoft/tsdoc-config" "~0.17.1" + "@rushstack/node-core-library" "5.13.0" + "@rushstack/rig-package" "0.5.3" + "@rushstack/terminal" "0.15.2" + "@rushstack/ts-command-line" "4.23.7" + lodash "~4.17.15" + minimatch "~3.0.3" + resolve "~1.22.1" + semver "~7.5.4" + source-map "~0.6.1" + typescript "5.8.2" + +"@microsoft/tsdoc-config@~0.17.1": + version "0.17.1" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc-config/-/tsdoc-config-0.17.1.tgz#e0f0b50628f4ad7fe121ca616beacfe6a25b9335" + integrity sha512-UtjIFe0C6oYgTnad4q1QP4qXwLhe6tIpNTRStJ2RZEPIkqQPREAwE5spzVxsdn9UaEMUqhh0AqSx3X4nWAKXWw== + dependencies: + "@microsoft/tsdoc" "0.15.1" + ajv "~8.12.0" + jju "~1.4.0" + resolve "~1.22.2" + +"@microsoft/tsdoc@0.15.1", "@microsoft/tsdoc@~0.15.1": + version "0.15.1" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.15.1.tgz#d4f6937353bc4568292654efb0a0e0532adbcba2" + integrity sha512-4aErSrCR/On/e5G2hDP0wjooqDdauzEbIq8hIkIe5pXV0rtWJZvdCEKL0ykZxex+IxIwBp0eGeV48hQN07dXtw== + "@nodelib/fs.scandir@2.1.5": version "2.1.5" resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" @@ -513,7 +571,7 @@ resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.1.1.tgz#1ec17e2edbec25c8306d424ecfbf13c7de1aaa31" integrity sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA== -"@rollup/pluginutils@^5.0.2", "@rollup/pluginutils@^5.1.3": +"@rollup/pluginutils@^5.0.2", "@rollup/pluginutils@^5.1.3", "@rollup/pluginutils@^5.1.4": version "5.1.4" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-5.1.4.tgz#bb94f1f9eaaac944da237767cdfee6c5b2262d4a" integrity sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ== @@ -617,6 +675,46 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.36.0.tgz#88b23fe29d28fa647030b36e912c1b5b50831b1d" integrity sha512-aRXd7tRZkWLqGbChgcMMDEHjOKudo1kChb1Jt1IfR8cY/KIpgNviLeJy5FUb9IpSuQj8dU2fAYNMPW/hLKOSTw== +"@rushstack/node-core-library@5.13.0": + version "5.13.0" + resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-5.13.0.tgz#f79d6868b74be102eee75b93c37be45fb9b47ead" + integrity sha512-IGVhy+JgUacAdCGXKUrRhwHMTzqhWwZUI+qEPcdzsb80heOw0QPbhhoVsoiMF7Klp8eYsp7hzpScMXmOa3Uhfg== + dependencies: + ajv "~8.13.0" + ajv-draft-04 "~1.0.0" + ajv-formats "~3.0.1" + fs-extra "~11.3.0" + import-lazy "~4.0.0" + jju "~1.4.0" + resolve "~1.22.1" + semver "~7.5.4" + +"@rushstack/rig-package@0.5.3": + version "0.5.3" + resolved "https://registry.yarnpkg.com/@rushstack/rig-package/-/rig-package-0.5.3.tgz#ea4d8a3458540b1295500149c04e645f23134e5d" + integrity sha512-olzSSjYrvCNxUFZowevC3uz8gvKr3WTpHQ7BkpjtRpA3wK+T0ybep/SRUMfr195gBzJm5gaXw0ZMgjIyHqJUow== + dependencies: + resolve "~1.22.1" + strip-json-comments "~3.1.1" + +"@rushstack/terminal@0.15.2": + version "0.15.2" + resolved "https://registry.yarnpkg.com/@rushstack/terminal/-/terminal-0.15.2.tgz#8fa030409603a22db606ecb18709050e46517add" + integrity sha512-7Hmc0ysK5077R/IkLS9hYu0QuNafm+TbZbtYVzCMbeOdMjaRboLKrhryjwZSRJGJzu+TV1ON7qZHeqf58XfLpA== + dependencies: + "@rushstack/node-core-library" "5.13.0" + supports-color "~8.1.1" + +"@rushstack/ts-command-line@4.23.7": + version "4.23.7" + resolved "https://registry.yarnpkg.com/@rushstack/ts-command-line/-/ts-command-line-4.23.7.tgz#9c6f05a00f776c7b8ea3321e2b5a03acc5e9efa8" + integrity sha512-Gr9cB7DGe6uz5vq2wdr89WbVDKz0UeuFEn5H2CfWDe7JvjFFaiV15gi6mqDBTbHhHCWS7w8mF1h3BnIfUndqdA== + dependencies: + "@rushstack/terminal" "0.15.2" + "@types/argparse" "1.0.38" + argparse "~1.0.9" + string-argv "~0.3.1" + "@storybook/addon-actions@8.6.7": version "8.6.7" resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-8.6.7.tgz#d5d5712cee0c593c3e5d51546ff88a801f748c0b" @@ -979,6 +1077,11 @@ resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-14.5.2.tgz#db7257d727c891905947bd1c1a99da20e03c2ebd" integrity sha512-YAh82Wh4TIrxYLmfGcixwD18oIjyC1pFQC2Y01F2lzV2HTMiYrI0nze0FD0ocB//CKS/7jIUgae+adPqxK5yCQ== +"@types/argparse@1.0.38": + version "1.0.38" + resolved "https://registry.yarnpkg.com/@types/argparse/-/argparse-1.0.38.tgz#a81fd8606d481f873a3800c6ebae4f1d768a56a9" + integrity sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA== + "@types/aria-query@^5.0.1": version "5.0.4" resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.4.tgz#1a31c3d378850d2778dabb6374d036dcba4ba708" @@ -1230,6 +1333,73 @@ loupe "^3.1.2" tinyrainbow "^1.2.0" +"@volar/language-core@2.4.12", "@volar/language-core@~2.4.11": + version "2.4.12" + resolved "https://registry.yarnpkg.com/@volar/language-core/-/language-core-2.4.12.tgz#98c8424f8d81a9cad1760a587b1c6db27d05f0cc" + integrity sha512-RLrFdXEaQBWfSnYGVxvR2WrO6Bub0unkdHYIdC31HzIEqATIuuhRRzYu76iGPZ6OtA4Au1SnW0ZwIqPP217YhA== + dependencies: + "@volar/source-map" "2.4.12" + +"@volar/source-map@2.4.12": + version "2.4.12" + resolved "https://registry.yarnpkg.com/@volar/source-map/-/source-map-2.4.12.tgz#7cc8c6b1b134a2215f06c91ad011d94eef81b0ed" + integrity sha512-bUFIKvn2U0AWojOaqf63ER0N/iHIBYZPpNGogfLPQ68F5Eet6FnLlyho7BS0y2HJ1jFhSif7AcuTx1TqsCzRzw== + +"@volar/typescript@^2.4.11": + version "2.4.12" + resolved "https://registry.yarnpkg.com/@volar/typescript/-/typescript-2.4.12.tgz#8c638c23cab89ab131cdcd2d6f2a51768caaa015" + integrity sha512-HJB73OTJDgPc80K30wxi3if4fSsZZAOScbj2fcicMuOPoOkcf9NNAINb33o+DzhBdF9xTKC1gnPmIRDous5S0g== + dependencies: + "@volar/language-core" "2.4.12" + path-browserify "^1.0.1" + vscode-uri "^3.0.8" + +"@vue/compiler-core@3.5.13": + version "3.5.13" + resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.5.13.tgz#b0ae6c4347f60c03e849a05d34e5bf747c9bda05" + integrity sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q== + dependencies: + "@babel/parser" "^7.25.3" + "@vue/shared" "3.5.13" + entities "^4.5.0" + estree-walker "^2.0.2" + source-map-js "^1.2.0" + +"@vue/compiler-dom@^3.5.0": + version "3.5.13" + resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz#bb1b8758dbc542b3658dda973b98a1c9311a8a58" + integrity sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA== + dependencies: + "@vue/compiler-core" "3.5.13" + "@vue/shared" "3.5.13" + +"@vue/compiler-vue2@^2.7.16": + version "2.7.16" + resolved "https://registry.yarnpkg.com/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz#2ba837cbd3f1b33c2bc865fbe1a3b53fb611e249" + integrity sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A== + dependencies: + de-indent "^1.0.2" + he "^1.2.0" + +"@vue/language-core@2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@vue/language-core/-/language-core-2.2.0.tgz#e48c54584f889f78b120ce10a050dfb316c7fcdf" + integrity sha512-O1ZZFaaBGkKbsRfnVH1ifOK1/1BUkyK+3SQsfnh6PmMmD4qJcTU8godCeA96jjDRTL6zgnK7YzCHfaUlH2r0Mw== + dependencies: + "@volar/language-core" "~2.4.11" + "@vue/compiler-dom" "^3.5.0" + "@vue/compiler-vue2" "^2.7.16" + "@vue/shared" "^3.5.0" + alien-signals "^0.4.9" + minimatch "^9.0.3" + muggle-string "^0.4.1" + path-browserify "^1.0.1" + +"@vue/shared@3.5.13", "@vue/shared@^3.5.0": + version "3.5.13" + resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.5.13.tgz#87b309a6379c22b926e696893237826f64339b6f" + integrity sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ== + acorn-jsx@^5.3.2: version "5.3.2" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" @@ -1240,6 +1410,18 @@ acorn@^8.14.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.1.tgz#721d5dc10f7d5b5609a891773d47731796935dfb" integrity sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg== +ajv-draft-04@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ajv-draft-04/-/ajv-draft-04-1.0.0.tgz#3b64761b268ba0b9e668f0b41ba53fce0ad77fc8" + integrity sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw== + +ajv-formats@~3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-3.0.1.tgz#3d5dc762bca17679c3c2ea7e90ad6b7532309578" + integrity sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ== + dependencies: + ajv "^8.0.0" + ajv@^6.12.4: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" @@ -1250,6 +1432,41 @@ ajv@^6.12.4: json-schema-traverse "^0.4.1" uri-js "^4.2.2" +ajv@^8.0.0: + version "8.17.1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6" + integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== + dependencies: + fast-deep-equal "^3.1.3" + fast-uri "^3.0.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + +ajv@~8.12.0: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +ajv@~8.13.0: + version "8.13.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.13.0.tgz#a3939eaec9fb80d217ddf0c3376948c023f28c91" + integrity sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA== + dependencies: + fast-deep-equal "^3.1.3" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.4.1" + +alien-signals@^0.4.9: + version "0.4.14" + resolved "https://registry.yarnpkg.com/alien-signals/-/alien-signals-0.4.14.tgz#9ff8f72a272300a51692f54bd9bbbada78fbf539" + integrity sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q== + ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" @@ -1282,6 +1499,13 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== +argparse@~1.0.9: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + aria-query@5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.0.tgz#650c569e41ad90b51b3d7df5e5eed1c7549c103e" @@ -1538,11 +1762,26 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +compare-versions@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-6.1.1.tgz#7af3cc1099ba37d244b3145a9af5201b629148a9" + integrity sha512-4hm4VPpIecmlg59CHXnRDnqGplJFrbLG4aFEl5vl6cK1u76ws3LLvX7ikFnTDl5vo39sjWD6AaDPYodJp/NNHg== + concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== +confbox@^0.1.8: + version "0.1.8" + resolved "https://registry.yarnpkg.com/confbox/-/confbox-0.1.8.tgz#820d73d3b3c82d9bd910652c5d4d599ef8ff8b06" + integrity sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w== + +confbox@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/confbox/-/confbox-0.2.1.tgz#ae39f2c99699afa451d00206479f15f9a1208a8b" + integrity sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg== + convert-source-map@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" @@ -1618,7 +1857,12 @@ data-view-byte-offset@^1.0.1: es-errors "^1.3.0" is-data-view "^1.0.1" -debug@^4.1.0, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: +de-indent@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" + integrity sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg== + +debug@^4.1.0, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA== @@ -1724,7 +1968,7 @@ emoji-regex@^9.2.2: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== -entities@^4.4.0: +entities@^4.4.0, entities@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== @@ -2066,6 +2310,11 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== +exsolve@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/exsolve/-/exsolve-1.0.4.tgz#7de5c75af82ecd15998328fbf5f2295883be3a39" + integrity sha512-xsZH6PXaER4XoV+NiT7JHp1bJodJVT+cxeSH1G0f0tlT0lJqYuHUP3bUx2HtfTDvOagMINYp8rsqusxud3RXhw== + fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" @@ -2097,6 +2346,11 @@ fast-levenshtein@^2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== +fast-uri@^3.0.1: + version "3.0.6" + resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.6.tgz#88f130b77cfaea2378d56bf970dea21257a68748" + integrity sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw== + fastq@^1.6.0: version "1.19.1" resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.19.1.tgz#d50eaba803c8846a883c16492821ebcd2cda55f5" @@ -2159,6 +2413,15 @@ foreground-child@^3.1.0: cross-spawn "^7.0.6" signal-exit "^4.0.1" +fs-extra@~11.3.0: + version "11.3.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.3.0.tgz#0daced136bbaf65a555a326719af931adc7a314d" + integrity sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fsevents@~2.3.2, fsevents@~2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" @@ -2278,7 +2541,7 @@ gopd@^1.0.1, gopd@^1.2.0: resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== -graceful-fs@^4.1.6: +graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -2331,6 +2594,11 @@ hasown@^2.0.2: dependencies: function-bind "^1.1.2" +he@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + hoist-non-react-statics@^3.3.0: version "3.3.2" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" @@ -2351,6 +2619,11 @@ import-fresh@^3.2.1, import-fresh@^3.3.0: parent-module "^1.0.0" resolve-from "^4.0.0" +import-lazy@~4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz#e8eb627483a0a43da3c03f3e35548be5cb0cc153" + integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw== + imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" @@ -2613,6 +2886,11 @@ jackspeak@^3.1.2: optionalDependencies: "@pkgjs/parseargs" "^0.11.0" +jju@~1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/jju/-/jju-1.4.0.tgz#a3abe2718af241a2b2904f84a625970f389ae32a" + integrity sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA== + "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -2650,6 +2928,11 @@ json-schema-traverse@^0.4.1: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" @@ -2660,7 +2943,7 @@ json5@^2.2.2, json5@^2.2.3: resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== -jsonfile@^6.1.0: +jsonfile@^6.0.1, jsonfile@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== @@ -2686,6 +2969,11 @@ keyv@^4.5.4: dependencies: json-buffer "3.0.1" +kolorist@^1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/kolorist/-/kolorist-1.8.0.tgz#edddbbbc7894bc13302cdf740af6374d4a04743c" + integrity sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ== + levn@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" @@ -2699,6 +2987,15 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== +local-pkg@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-1.1.1.tgz#f5fe74a97a3bd3c165788ee08ca9fbe998dc58dd" + integrity sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg== + dependencies: + mlly "^1.7.4" + pkg-types "^2.0.1" + quansync "^0.2.8" + locate-path@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" @@ -2711,7 +3008,7 @@ lodash.merge@^4.6.2: resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash@^4.17.21: +lodash@^4.17.21, lodash@~4.17.15: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -2747,6 +3044,13 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + lz-string@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.5.0.tgz#c1ab50f77887b712621201ba9fd4e3a6ed099941" @@ -2759,7 +3063,7 @@ magic-string@^0.27.0: dependencies: "@jridgewell/sourcemap-codec" "^1.4.13" -magic-string@^0.30.0: +magic-string@^0.30.0, magic-string@^0.30.17: version "0.30.17" resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.17.tgz#450a449673d2460e5bbcfba9a61916a1714c7453" integrity sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA== @@ -2808,13 +3112,20 @@ minimatch@^3.1.2: dependencies: brace-expansion "^1.1.7" -minimatch@^9.0.4: +minimatch@^9.0.3, minimatch@^9.0.4: version "9.0.5" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== dependencies: brace-expansion "^2.0.1" +minimatch@~3.0.3: + version "3.0.8" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.8.tgz#5e6a59bd11e2ab0de1cfb843eb2d82e546c321c1" + integrity sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q== + dependencies: + brace-expansion "^1.1.7" + minimist@^1.2.6: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" @@ -2825,11 +3136,26 @@ minimist@^1.2.6: resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== +mlly@^1.7.4: + version "1.7.4" + resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.7.4.tgz#3d7295ea2358ec7a271eaa5d000a0f84febe100f" + integrity sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw== + dependencies: + acorn "^8.14.0" + pathe "^2.0.1" + pkg-types "^1.3.0" + ufo "^1.5.4" + ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +muggle-string@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/muggle-string/-/muggle-string-0.4.1.tgz#3b366bd43b32f809dc20659534dd30e7c8a0d328" + integrity sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ== + nanoid@^3.3.7, nanoid@^3.3.8: version "3.3.10" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.10.tgz#7bc882237698ef787d5cbba109e3b0168ba6e7b1" @@ -2976,6 +3302,11 @@ parse-json@^5.2.0: json-parse-even-better-errors "^2.3.0" lines-and-columns "^1.1.6" +path-browserify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" + integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== + path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -3004,6 +3335,11 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== +pathe@^2.0.1, pathe@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/pathe/-/pathe-2.0.3.tgz#3ecbec55421685b70a9da872b2cff3e1cbed1716" + integrity sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w== + pathval@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/pathval/-/pathval-2.0.0.tgz#7e2550b422601d4f6b8e26f1301bc8f15a741a25" @@ -3024,6 +3360,24 @@ picomatch@^4.0.2: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== +pkg-types@^1.3.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.3.1.tgz#bd7cc70881192777eef5326c19deb46e890917df" + integrity sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ== + dependencies: + confbox "^0.1.8" + mlly "^1.7.4" + pathe "^2.0.1" + +pkg-types@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-2.1.0.tgz#70c9e1b9c74b63fdde749876ee0aa007ea9edead" + integrity sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A== + dependencies: + confbox "^0.2.1" + exsolve "^1.0.1" + pathe "^2.0.3" + polished@^4.2.2: version "4.3.1" resolved "https://registry.yarnpkg.com/polished/-/polished-4.3.1.tgz#5a00ae32715609f83d89f6f31d0f0261c6170548" @@ -3104,6 +3458,11 @@ punycode@^2.1.0: resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== +quansync@^0.2.8: + version "0.2.10" + resolved "https://registry.yarnpkg.com/quansync/-/quansync-0.2.10.tgz#32053cf166fa36511aae95fc49796116f2dc20e1" + integrity sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A== + queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -3214,12 +3573,17 @@ regexp.prototype.flags@^1.5.3: gopd "^1.2.0" set-function-name "^2.0.2" +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + resolve-from@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== -resolve@^1.22.1, resolve@^1.22.8: +resolve@^1.22.1, resolve@^1.22.8, resolve@~1.22.1, resolve@~1.22.2: version "1.22.10" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== @@ -3320,6 +3684,13 @@ semver@^7.6.0, semver@^7.6.2: resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.1.tgz#abd5098d82b18c6c81f6074ff2647fd3e7220c9f" integrity sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA== +semver@~7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + set-function-length@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" @@ -3421,7 +3792,7 @@ snake-case@^3.0.4: dot-case "^3.0.4" tslib "^2.0.3" -source-map-js@^1.2.1: +source-map-js@^1.2.0, source-map-js@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== @@ -3431,6 +3802,11 @@ source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== + storybook@^8.6.7: version "8.6.7" resolved "https://registry.yarnpkg.com/storybook/-/storybook-8.6.7.tgz#733ee38873d969627c37393621462abb2d21649c" @@ -3438,6 +3814,11 @@ storybook@^8.6.7: dependencies: "@storybook/core" "8.6.7" +string-argv@~0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.2.tgz#2b6d0ef24b656274d957d54e0a4bbf6153dc02b6" + integrity sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q== + "string-width-cjs@npm:string-width@^4.2.0": version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" @@ -3564,7 +3945,7 @@ strip-indent@^4.0.0: dependencies: min-indent "^1.0.1" -strip-json-comments@^3.1.1: +strip-json-comments@^3.1.1, strip-json-comments@~3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== @@ -3596,6 +3977,13 @@ supports-color@^7.1.0: dependencies: has-flag "^4.0.0" +supports-color@~8.1.1: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" @@ -3736,11 +4124,16 @@ typescript-eslint@^8.26.1: "@typescript-eslint/parser" "8.26.1" "@typescript-eslint/utils" "8.26.1" -typescript@^5.8.2: +typescript@5.8.2, typescript@^5.8.2: version "5.8.2" resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.8.2.tgz#8170b3702f74b79db2e5a96207c15e65807999e4" integrity sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ== +ufo@^1.5.4: + version "1.5.4" + resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.5.4.tgz#16d6949674ca0c9e0fbbae1fa20a71d7b1ded754" + integrity sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ== + unbox-primitive@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz#8d9d2c9edeea8460c7f35033a88867944934d1e2" @@ -3777,7 +4170,7 @@ update-browserslist-db@^1.1.1: escalade "^3.2.0" picocolors "^1.1.1" -uri-js@^4.2.2: +uri-js@^4.2.2, uri-js@^4.4.1: version "4.4.1" resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== @@ -3800,6 +4193,21 @@ uuid@^9.0.0: resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30" integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA== +vite-plugin-dts@^4.5.3: + version "4.5.3" + resolved "https://registry.yarnpkg.com/vite-plugin-dts/-/vite-plugin-dts-4.5.3.tgz#9d9e64c12e21e9389efd9f999e034cd5864b0027" + integrity sha512-P64VnD00dR+e8S26ESoFELqc17+w7pKkwlBpgXteOljFyT0zDwD8hH4zXp49M/kciy//7ZbVXIwQCekBJjfWzA== + dependencies: + "@microsoft/api-extractor" "^7.50.1" + "@rollup/pluginutils" "^5.1.4" + "@volar/typescript" "^2.4.11" + "@vue/language-core" "2.2.0" + compare-versions "^6.1.1" + debug "^4.4.0" + kolorist "^1.8.0" + local-pkg "^1.0.0" + magic-string "^0.30.17" + vite-plugin-svgr@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/vite-plugin-svgr/-/vite-plugin-svgr-4.3.0.tgz#742f16f11375996306c696ec323e4d23f6005075" @@ -3820,6 +4228,11 @@ vite@^6.2.2: optionalDependencies: fsevents "~2.3.3" +vscode-uri@^3.0.8: + version "3.1.0" + resolved "https://registry.yarnpkg.com/vscode-uri/-/vscode-uri-3.1.0.tgz#dd09ec5a66a38b5c3fffc774015713496d14e09c" + integrity sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ== + webpack-virtual-modules@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz#057faa9065c8acf48f24cb57ac0e77739ab9a7e8" @@ -3918,6 +4331,11 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"