8 |
(open = false) }} />
9 |
10 |
--------------------------------------------------------------------------------
/packages/svelteui-composables/test/actions/components/use-clipboard.svelte:
--------------------------------------------------------------------------------
1 |
8 |
9 |
17 |
--------------------------------------------------------------------------------
/packages/svelteui-composables/test/actions/components/use-css-variable.svelte:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/packages/svelteui-composables/test/actions/components/use-focus.svelte:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/packages/svelteui-composables/test/actions/components/use-page-leave.svelte:
--------------------------------------------------------------------------------
1 |
6 |
7 |
callback()}>Leave
8 |
--------------------------------------------------------------------------------
/packages/svelteui-composables/test/actions/components/use-tab-leave.svelte:
--------------------------------------------------------------------------------
1 |
6 |
7 |
callback()}>Leave
8 |
--------------------------------------------------------------------------------
/packages/svelteui-composables/test/actions/example.test.ts:
--------------------------------------------------------------------------------
1 | import { expect, test } from 'vitest';
2 |
3 | test('example test', async () => {
4 | expect(1 + 1).eq(2);
5 | });
6 |
--------------------------------------------------------------------------------
/packages/svelteui-composables/test/shared/random-id.test.ts:
--------------------------------------------------------------------------------
1 | import { describe, expect, test } from 'vitest';
2 |
3 | import { randomID } from '$clib';
4 |
5 | describe('random-id', () => {
6 | test('returns a random string ID', () => {
7 | const id = randomID();
8 | expect(id.startsWith('svelteui-')).toBeTruthy();
9 | expect(id.length).eq(17);
10 | });
11 | });
12 |
--------------------------------------------------------------------------------
/packages/svelteui-composables/test/utilities/example.test.ts:
--------------------------------------------------------------------------------
1 | import { expect, test } from 'vitest';
2 |
3 | test('example test', async () => {
4 | expect(1 + 1).eq(2);
5 | });
6 |
--------------------------------------------------------------------------------
/packages/svelteui-composables/vite.config.js:
--------------------------------------------------------------------------------
1 | import { sveltekit } from '@sveltejs/kit/vite';
2 |
3 | /** @type {import('vite').UserConfig} */
4 | const config = {
5 | plugins: [sveltekit()],
6 | server: process.env.VITEST
7 | ? {}
8 | : {
9 | fs: {
10 | allow: ['./package']
11 | }
12 | },
13 | resolve: {
14 | alias: {
15 | $clib: './src'
16 | }
17 | }
18 | };
19 |
20 | export default config;
21 |
--------------------------------------------------------------------------------
/packages/svelteui-core/.eslintignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 | # Ignore files for PNPM, NPM and YARN
12 | pnpm-lock.yaml
13 | package-lock.json
14 | yarn.lock
15 |
--------------------------------------------------------------------------------
/packages/svelteui-core/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | extends: ['../../configuration/eslint-preset-svelteui'],
3 | rules: {}
4 | };
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/.npmignore:
--------------------------------------------------------------------------------
1 | *.test.*
2 | *.stories.svelte
--------------------------------------------------------------------------------
/packages/svelteui-core/.npmrc:
--------------------------------------------------------------------------------
1 | engine-strict=true
2 |
--------------------------------------------------------------------------------
/packages/svelteui-core/.prettierignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 |
12 | # Ignore files for PNPM, NPM and YARN
13 | pnpm-lock.yaml
14 | package-lock.json
15 | yarn.lock
16 |
--------------------------------------------------------------------------------
/packages/svelteui-core/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": true,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "printWidth": 100
6 | }
7 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Accordion/Accordion.styles.ts:
--------------------------------------------------------------------------------
1 | import { createStyles } from '$lib/styles';
2 | import type { SvelteUINumberSize } from '$lib/styles';
3 | import type { AccordionVariant } from './Accordion';
4 |
5 | export interface AccordionStylesParams {
6 | radius: SvelteUINumberSize;
7 | variant: AccordionVariant;
8 | }
9 |
10 | export default createStyles((theme, { radius, variant }: AccordionStylesParams) => {
11 | return {
12 | root: {}
13 | };
14 | });
15 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Accordion/Accordion.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { Accordion } from './index';
5 |
6 | describe('Accordion', () => {
7 | itSupportsClassName(Accordion);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Accordion/AccordionItem/AccordionItem.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import type { DefaultProps } from '$lib/styles';
3 | import { Component } from '$lib/internal';
4 | import { SvelteUINumberSize } from '$lib/styles';
5 | import { ButtonProps } from '../../Button';
6 |
7 | export interface AccordionItemProps extends ButtonProps {
8 | value?: string;
9 | chevron?: Component | HTMLOrSVGElement;
10 | disabled?: boolean;
11 | }
12 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Accordion/combinator.ts:
--------------------------------------------------------------------------------
1 | /* eslint-disable @typescript-eslint/ban-ts-comment */
2 | import _Accordion from './Accordion.svelte';
3 | import AccordionItem from './AccordionItem/AccordionItem.svelte';
4 |
5 | // @ts-ignore
6 | _Accordion.Item = AccordionItem;
7 | const Accordion = _Accordion as typeof _Accordion & {
8 | Item: typeof AccordionItem;
9 | };
10 |
11 | export { Accordion };
12 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Accordion/index.ts:
--------------------------------------------------------------------------------
1 | export { Accordion } from './combinator';
2 | export type { AccordionProps, AccordionVariant } from './Accordion';
3 | export type { AccordionStylesParams } from './Accordion.styles';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Accordion/key.ts:
--------------------------------------------------------------------------------
1 | export const key = Symbol();
2 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/ActionIcon/ActionIcon.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { ActionIcon } from './index';
5 |
6 | describe('ActionIcon', () => {
7 | itSupportsClassName(ActionIcon);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/ActionIcon/CloseButton/CloseButton.d.ts:
--------------------------------------------------------------------------------
1 | import type { SvelteUINumberSize } from '$lib/styles';
2 | import type { ActionIconProps } from '../ActionIcon';
3 |
4 | export interface CloseButtonProps extends ActionIconProps {
5 | iconSize?: SvelteUINumberSize;
6 | }
7 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/ActionIcon/CloseButton/CloseButton.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as CloseButton } from './CloseButton.svelte';
5 |
6 | describe('CloseButton', () => {
7 | itSupportsClassName(CloseButton);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/ActionIcon/index.ts:
--------------------------------------------------------------------------------
1 | export { default as ActionIcon } from './ActionIcon.svelte';
2 | export type { ActionIconProps, ActionIconVariant } from './ActionIcon';
3 | export type { ActionIconStylesParams } from './ActionIcon.styles';
4 | export * as ActionIconErrors from './ActionIcon.errors';
5 |
6 | export { default as CloseButton } from './CloseButton/CloseButton.svelte';
7 | export { default as CloseIcon } from './CloseButton/CloseIcon.svelte';
8 | export type { CloseButtonProps } from './CloseButton/CloseButton';
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Affix/Affix.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import type { DefaultProps } from '$lib/styles';
3 |
4 | export interface AffixProps extends DefaultProps, HTMLAttributes
{
5 | target?: HTMLElement | string;
6 | zIndex?: number;
7 | position?: {
8 | top?: string | number;
9 | left?: string | number;
10 | bottom?: string | number;
11 | right?: string | number;
12 | };
13 | }
14 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Affix/Affix.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Affix } from './Affix.svelte';
5 |
6 | describe('Affix', () => {
7 | itSupportsClassName(Affix, {}, true);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Affix/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Affix } from './Affix.svelte';
2 | export type { AffixProps } from './Affix';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Alert/Alert.stories.svelte:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 | This is an alert!
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Alert/Alert.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Alert } from './Alert.svelte';
5 |
6 | describe('Alert', () => {
7 | itSupportsClassName(Alert);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Alert/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Alert } from './Alert.svelte';
2 | export type { AlertStylesParams } from './Alert.styles';
3 | export type { AlertProps, AlertVariant } from './Alert';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Anchor/Anchor.d.ts:
--------------------------------------------------------------------------------
1 | import { DefaultProps } from '$lib/styles';
2 | import { TextProps } from '../Text/Text';
3 |
4 | export type AnchorVariant = 'filled' | 'outline' | 'light';
5 |
6 | export interface AnchorProps extends DefaultProps, TextProps {
7 | root?: TextProps['root'];
8 | external?: boolean;
9 | }
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Anchor/Anchor.styles.ts:
--------------------------------------------------------------------------------
1 | import { createStyles } from '$lib/styles';
2 |
3 | export default createStyles(() => {
4 | return {
5 | root: {
6 | backgroundColor: 'transparent',
7 | cursor: 'pointer',
8 | padding: 0,
9 | border: 0
10 | }
11 | };
12 | });
13 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Anchor/Anchor.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Anchor } from './Anchor.svelte';
5 |
6 | describe('Anchor', () => {
7 | itSupportsClassName(Anchor);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Anchor/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Anchor } from './Anchor.svelte';
2 | export type { AnchorProps } from './Anchor';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AppShell/AppShell.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps, SvelteUINumberSize } from '$lib/styles';
3 |
4 | export interface AppShellProps extends DefaultProps, HTMLAttributes {
5 | zIndex?: number;
6 | fixed?: boolean;
7 | padding?: SvelteUINumberSize;
8 | navbarOffsetBreakpoint?: SvelteUINumberSize;
9 | asideOffsetBreakpoint?: SvelteUINumberSize;
10 | }
11 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AppShell/AppShell.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as AppShell } from './AppShell.svelte';
5 |
6 | describe('AppShell', () => {
7 | itSupportsClassName(AppShell);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AppShell/Aside/Aside.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Aside } from './Aside.svelte';
5 |
6 | describe('Aside', () => {
7 | itSupportsClassName(Aside);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AppShell/Footer/Footer.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Footer } from './Footer.svelte';
5 |
6 | describe('Footer', () => {
7 | itSupportsClassName(Footer);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AppShell/Header/Header.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Header } from './Header.svelte';
5 |
6 | describe('Header', () => {
7 | itSupportsClassName(Header);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AppShell/HorizontalSection/HorizontalSection.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as HorizontalSection } from './HorizontalSection.svelte';
5 |
6 | describe('HorizontalSection', () => {
7 | itSupportsClassName(HorizontalSection, { section: 'navbar' });
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AppShell/HorizontalSection/Section/Section.styles.ts:
--------------------------------------------------------------------------------
1 | import type { DefaultProps } from '$lib/styles';
2 |
3 | export interface SectionProps extends DefaultProps {
4 | grow: boolean;
5 | }
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AppShell/HorizontalSection/index.ts:
--------------------------------------------------------------------------------
1 | export { default as HorizontalSection } from './HorizontalSection.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AppShell/Navbar/Navbar.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Navbar } from './Navbar.svelte';
5 |
6 | describe('Navbar', () => {
7 | itSupportsClassName(Navbar);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AppShell/VerticalSection/VerticalSection.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as VerticalSection } from './VerticalSection.svelte';
5 |
6 | describe('VerticalSection', () => {
7 | itSupportsClassName(VerticalSection, { section: 'navbar' });
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AppShell/VerticalSection/index.ts:
--------------------------------------------------------------------------------
1 | export { default as VerticalSection } from './VerticalSection.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AspectRatio/AspectRatio.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps } from '$lib/styles';
3 |
4 | export interface AspectRatioProps extends DefaultProps, HTMLAttributes {
5 | ratio: number;
6 | }
7 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AspectRatio/AspectRatio.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as AspectRatio } from './AspectRatio.svelte';
5 | import type { AspectRatioProps } from './AspectRatio';
6 |
7 | const defaultProps: AspectRatioProps = {
8 | ratio: 16 / 9
9 | };
10 |
11 | describe('AspectRatio', () => {
12 | itSupportsClassName(AspectRatio, defaultProps);
13 | });
14 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/AspectRatio/index.ts:
--------------------------------------------------------------------------------
1 | export { default as AspectRatio } from './AspectRatio.svelte';
2 | export type { AspectRatioStylesParams } from './AspectRatio.styles';
3 | export type { AspectRatioProps } from './AspectRatio';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Badge/Badge.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Badge } from './Badge.svelte';
5 |
6 | describe('Badge', () => {
7 | itSupportsClassName(Badge);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Badge/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Badge } from './Badge.svelte';
2 | export type { BadgeStyleParams } from './Badge.styles';
3 | export type { BadgeProps, BadgeVariant } from './Badge';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Blockquote/Blockquote.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Blockquote } from './Blockquote.svelte';
5 |
6 | describe('Blockquote', () => {
7 | itSupportsClassName(Blockquote);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Blockquote/QuoteIcon.svelte:
--------------------------------------------------------------------------------
1 |
11 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Blockquote/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Blockquote } from './Blockquote.svelte';
2 | export type { BlockquoteProps } from './Blockquote';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Box/Box.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Box } from './Box.svelte';
5 |
6 | describe('Box', () => {
7 | itSupportsClassName(Box);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Box/context/index.ts:
--------------------------------------------------------------------------------
1 | export { getSystemStyles } from './get-system-styles/get-system-styles';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Box/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Box } from './Box.svelte';
2 | export type { BoxProps } from './Box';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Breadcrumbs/Breadcrumbs.styles.ts:
--------------------------------------------------------------------------------
1 | import { createStyles } from '$lib/styles';
2 |
3 | export default createStyles(() => ({
4 | root: {
5 | position: 'relative',
6 | display: 'flex'
7 | }
8 | }));
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Breadcrumbs/Breadcrumbs.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Breadcrumbs } from './Breadcrumbs.svelte';
5 |
6 | describe('Breadcrumbs', () => {
7 | itSupportsClassName(Breadcrumbs, { mounted: true });
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Breadcrumbs/BreadcrumbsItem/BreadcrumbsItem.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps, SvelteUIColor, SvelteUINumberSize } from '$lib/styles';
3 |
4 | export interface BreadcrumbItemProps
5 | extends DefaultProps,
6 | HTMLAttributes {
7 | value?: number;
8 | color?: SvelteUIColor;
9 | size?: SvelteUINumberSize;
10 | label?: string;
11 | active?: boolean;
12 | href?: string;
13 | }
14 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Breadcrumbs/BreadcrumbsItem/index.ts:
--------------------------------------------------------------------------------
1 | export { default as BreadcrumbsItem } from './BreadcrumbsItem.svelte';
2 | export type { BreadcrumbItemStylesParams } from './BreadcrumbsItem.styles';
3 | export type { BreadcrumbItemProps } from './BreadcrumbsItem';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Breadcrumbs/combinator.ts:
--------------------------------------------------------------------------------
1 | /* eslint-disable @typescript-eslint/ban-ts-comment */
2 | import _Breadcrumb from './Breadcrumbs.svelte';
3 | import Item from './BreadcrumbsItem/BreadcrumbsItem.svelte';
4 |
5 | // @ts-ignore
6 | _Breadcrumb.Item = Item;
7 | const Breadcrumbs = _Breadcrumb as typeof _Breadcrumb & { Item: typeof Item };
8 |
9 | export { Breadcrumbs };
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Breadcrumbs/index.ts:
--------------------------------------------------------------------------------
1 | export { Breadcrumbs } from './combinator';
2 | export type { BreadcrumbProps } from './Breadcrumbs';
3 | export type { BreadcrumbItemProps, BreadcrumbItemStylesParams } from './BreadcrumbsItem';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Burger/Burger.d.ts:
--------------------------------------------------------------------------------
1 | import { SvelteUIColor, SvelteUINumberSize } from '$lib/styles';
2 | import { UnstyledButtonProps } from '../Button/UnstyledButton/UnstyledButton';
3 |
4 | export interface BurgerProps extends UnstyledButtonProps {
5 | opened?: boolean;
6 | color?: SvelteUIColor;
7 | size?: SvelteUINumberSize;
8 | }
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Burger/Burger.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Burger } from './Burger.svelte';
5 |
6 | describe('Burger', () => {
7 | itSupportsClassName(Burger);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Burger/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Burger } from './Burger.svelte';
2 | export type { BurgerStyleParams } from './Burger.styles';
3 | export type { BurgerProps } from './Burger';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Button/Button.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Button } from './Button.svelte';
5 |
6 | describe('Button', () => {
7 | itSupportsClassName(Button);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Button/UnstyledButton/UnstyledButton.d.ts:
--------------------------------------------------------------------------------
1 | import { ButtonProps } from '../Button';
2 |
3 | export interface UnstyledButtonProps extends ButtonProps {
4 | root?: keyof HTMLElementTagNameMap;
5 | }
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Button/UnstyledButton/UnstyledButton.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as UnstyledButton } from './UnstyledButton.svelte';
5 |
6 | describe('UnstyledButton', () => {
7 | itSupportsClassName(UnstyledButton);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Button/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Button } from './Button.svelte';
2 | export * as ButtonErrors from './Button.errors';
3 | export type { ButtonStylesParams } from './Button.styles';
4 | export type { ButtonProps, ButtonVariant } from './Button';
5 |
6 | export { default as UnstyledButton } from './UnstyledButton/UnstyledButton.svelte';
7 | export type { UnstyledButtonProps } from './UnstyledButton/UnstyledButton';
8 |
9 | export { default as Ripple } from './Ripple.svelte';
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Card/Card.d.ts:
--------------------------------------------------------------------------------
1 | import { PaperProps } from '../Paper/Paper';
2 |
3 | export interface CardProps extends PaperProps {}
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Card/Card.styles.ts:
--------------------------------------------------------------------------------
1 | import { createStyles } from '$lib/styles';
2 |
3 | export default createStyles((theme) => {
4 | return {
5 | root: {
6 | position: 'relative',
7 | overflow: 'hidden',
8 | backgroundColor: theme.colors.white.value
9 | }
10 | };
11 | });
12 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Card/Card.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Card } from './Card.svelte';
5 |
6 | describe('Card', () => {
7 | itSupportsClassName(Card);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Card/CardSection/CardSection.d.ts:
--------------------------------------------------------------------------------
1 | import { CardProps } from '../Card';
2 |
3 | export interface CardSectionProps extends CardProps {}
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Card/CardSection/CardSection.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as CardSection } from './CardSection.svelte';
5 |
6 | describe('CardSection', () => {
7 | itSupportsClassName(CardSection);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Card/combinator.ts:
--------------------------------------------------------------------------------
1 | import _Card from './Card.svelte';
2 | import Section from './CardSection/CardSection.svelte';
3 |
4 | // Combine Card and Section
5 | // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6 | // @ts-ignore
7 | _Card.Section = Section;
8 | const Card = _Card as typeof _Card & { Section: typeof Section };
9 |
10 | export { Card };
11 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Card/index.ts:
--------------------------------------------------------------------------------
1 | export { Card } from './combinator';
2 | export type { CardProps } from './Card';
3 |
4 | export type { CardSectionStyleParams } from './CardSection/CardSection.styles';
5 | export type { CardSectionProps } from './CardSection/CardSection';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Center/Center.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps } from '$lib/styles';
3 |
4 | export interface CenterProps extends DefaultProps, HTMLAttributes {
5 | inline?: boolean;
6 | }
7 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Center/Center.styles.ts:
--------------------------------------------------------------------------------
1 | import { createStyles } from '$lib/styles';
2 |
3 | export interface CenterStyleParams {
4 | inline: boolean;
5 | }
6 |
7 | export default createStyles((_, { inline }: CenterStyleParams) => {
8 | return {
9 | root: {
10 | display: inline ? 'inline-flex' : 'flex',
11 | alignItems: 'center',
12 | justifyContent: 'center'
13 | }
14 | };
15 | });
16 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Center/Center.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Center } from './Center.svelte';
5 |
6 | describe('Center', () => {
7 | itSupportsClassName(Center);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Center/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Center } from './Center.svelte';
2 | export type { CenterStyleParams } from './Center.styles';
3 | export type { CenterProps } from './Center';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Checkbox/Checkbox.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Checkbox } from './Checkbox.svelte';
5 |
6 | describe('Checkbox', () => {
7 | itSupportsClassName(Checkbox);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Checkbox/CheckboxGroup/CheckboxGroup.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as CheckboxGroup } from './CheckboxGroup.svelte';
5 |
6 | describe('CheckboxGroup', () => {
7 | itSupportsClassName(CheckboxGroup);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Checkbox/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Checkbox } from './Checkbox.svelte';
2 | export type { CheckboxStyleParams } from './Checkbox.styles';
3 | export type { CheckboxProps } from './Checkbox';
4 |
5 | export { default as CheckboxGroup } from './CheckboxGroup/CheckboxGroup.svelte';
6 | export type { CheckboxGroupProps } from './CheckboxGroup/CheckboxGroup';
7 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Chip/Chip.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Chip } from './Chip.svelte';
5 |
6 | describe('Chip', () => {
7 | itSupportsClassName(Chip);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Chip/ChipGroup/ChipGroup.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as ChipGroup } from './ChipGroup.svelte';
5 |
6 | describe('ChipGroup', () => {
7 | itSupportsClassName(ChipGroup);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Chip/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Chip } from './Chip.svelte';
2 | export type { ChipStyleParams } from './Chip.styles';
3 | export type { ChipProps } from './Chip';
4 |
5 | export { default as ChipGroup } from './ChipGroup/ChipGroup.svelte';
6 | export type { ChipGroupProps } from './ChipGroup/ChipGroup';
7 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Code/Code.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps, SvelteUIColor } from '$lib/styles';
3 |
4 | export interface CodeProps
5 | extends DefaultProps,
6 | HTMLAttributes {
7 | color?: SvelteUIColor;
8 | block?: boolean;
9 | width?: number;
10 | copy?: boolean;
11 | message?: string;
12 | noMono?: boolean;
13 | }
14 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Code/Code.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Code } from './Code.svelte';
5 |
6 | describe('Code', () => {
7 | itSupportsClassName(Code);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Code/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Code } from './Code.svelte';
2 | export { default as CopyIcon } from './CopyIcon.svelte';
3 | export * as CodeErrors from './Code.errors';
4 | export type { CodeStyleParams } from './Code.styles';
5 | export type { CodeProps } from './Code';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Collapse/Collapse.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { SlideParams } from 'svelte/transition';
3 | import { DefaultProps } from '$lib/styles';
4 |
5 | export interface CollapseProps extends DefaultProps, HTMLAttributes {
6 | open: boolean;
7 | animateOpacity?: boolean;
8 | transitionDuration?: number;
9 | slideTransitionOptions?: SlideParams;
10 | }
11 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Collapse/Collapse.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Collapse } from './Collapse.svelte';
5 |
6 | describe('Collapse', () => {
7 | itSupportsClassName(Collapse);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Collapse/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Collapse } from './Collapse.svelte';
2 | export type { CollapseProps } from './Collapse';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Container/Container.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps, SvelteUINumberSize, SvelteUISize } from '$lib/styles';
3 |
4 | export interface ContainerProps extends DefaultProps, HTMLAttributes {
5 | size?: SvelteUINumberSize;
6 | fluid?: boolean;
7 | sizes?: Record;
8 | }
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Container/Container.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Container } from './Container.svelte';
5 |
6 | describe('Container', () => {
7 | itSupportsClassName(Container);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Container/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Container } from './Container.svelte';
2 | export type { ContainerStyleParams } from './Container.styles';
3 | export type { ContainerProps } from './Container';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Divider/Divider.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Divider } from './Divider.svelte';
5 |
6 | describe('Divider', () => {
7 | itSupportsClassName(Divider);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Divider/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Divider } from './Divider.svelte';
2 | export * as DividerErrors from './Divider.errors';
3 | export type { DividerStyleParams } from './Divider.styles';
4 | export type { DividerProps, DividerVariant } from './Divider';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/FileUpload/index.ts:
--------------------------------------------------------------------------------
1 | export { default as FileUpload } from './FileUpload.svelte';
2 | export type { FileUploadStylesParams } from './FileUpload.styles';
3 | export type { FileUploadProps } from './FileUpload';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Flex/Flex.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { CSS, DefaultProps } from '$lib/styles';
3 |
4 | export interface FlexProps extends DefaultProps, HTMLAttributes {
5 | gap?: CSS['gap'];
6 | rowGap?: CSS['rowGap'];
7 | columnGap?: CSS['columnGap'];
8 | align?: CSS['alignItems'];
9 | justify?: CSS['justifyContent'];
10 | wrap?: CSS['flexWrap'];
11 | direction?: CSS['flexDirection'];
12 | }
13 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Flex/Flex.stories.svelte:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Flex/Flex.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Flex } from './Flex.svelte';
5 |
6 | describe('Flex', () => {
7 | itSupportsClassName(Flex);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Flex/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Flex } from './Flex.svelte';
2 | export type { FlexStylesParams } from './Flex.styles';
3 | export type { FlexProps } from './Flex';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Grid/Col/Col.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps } from '$lib/styles';
3 |
4 | export interface ColProps extends DefaultProps, HTMLAttributes {
5 | span?: number;
6 | offset?: number;
7 | offsetXs?: number;
8 | offsetSm?: number;
9 | offsetMd?: number;
10 | offsetLg?: number;
11 | offsetXl?: number;
12 | xs?: number;
13 | sm?: number;
14 | md?: number;
15 | lg?: number;
16 | xl?: number;
17 | }
18 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Grid/Grid.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Grid } from './Grid.svelte';
5 |
6 | describe('Grid', () => {
7 | itSupportsClassName(Grid);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Grid/combinator.ts:
--------------------------------------------------------------------------------
1 | import _Grid from './Grid.svelte';
2 | import Col from './Col/Col.svelte';
3 |
4 | // Combine Grid and Col
5 | // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6 | // @ts-ignore
7 | _Grid.Col = Col;
8 | const Grid = _Grid as typeof _Grid & { Col: typeof Col };
9 |
10 | export { Grid };
11 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Grid/index.ts:
--------------------------------------------------------------------------------
1 | export { Grid } from './combinator';
2 | export type { GridStyleParams } from './Grid.styles';
3 | export type { GridProps, GridContext } from './Grid';
4 | export type { ColStyleParams } from './Col/Col.styles';
5 | export type { ColProps } from './Col/Col';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Group/Group.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { CSS, DefaultProps, SvelteUINumberSize } from '$lib/styles';
3 |
4 | export type GroupPosition = 'right' | 'center' | 'left' | 'apart';
5 |
6 | export interface GroupProps extends DefaultProps, HTMLAttributes {
7 | position?: GroupPosition;
8 | noWrap?: boolean;
9 | grow?: boolean;
10 | spacing?: SvelteUINumberSize;
11 | direction?: 'row' | 'column';
12 | align?: CSS['alignItems'];
13 | children?: number;
14 | }
15 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Group/Group.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Group } from './Group.svelte';
5 |
6 | describe('Group', () => {
7 | itSupportsClassName(Group);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Group/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Group } from './Group.svelte';
2 | export type { GroupStylesParams } from './Group.styles';
3 | export type { GroupProps, GroupPosition } from './Group';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/IconRenderer/IconRenderer.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { Component } from '$lib/internal';
3 | import { DefaultProps, SvelteUINumberSize } from '$lib/styles';
4 |
5 | export interface IconRendererProps extends DefaultProps, HTMLAttributes {
6 | icon?: Component | HTMLOrSVGElement;
7 | iconSize?: SvelteUINumberSize;
8 | iconProps?: Record;
9 | }
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/IconRenderer/index.ts:
--------------------------------------------------------------------------------
1 | export { default as IconRenderer } from './IconRenderer.svelte';
2 | export type { IconRendererProps } from './IconRenderer';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Image/BackgroundImage/BackgroundImage.d.ts:
--------------------------------------------------------------------------------
1 | import { ImageProps } from '../Image';
2 |
3 | export interface BackgroundImageProps extends ImageProps {}
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Image/BackgroundImage/BackgroundImage.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as BackgroundImage } from './BackgroundImage.svelte';
5 |
6 | describe('BackgroundImage', () => {
7 | itSupportsClassName(BackgroundImage);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Image/Image.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Image } from './Image.svelte';
5 |
6 | describe('Image', () => {
7 | itSupportsClassName(Image);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Image/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Image } from './Image.svelte';
2 | export { default as ImageIcon } from './ImageIcon.svelte';
3 | export type { ImageStylesParams } from './Image.styles';
4 | export type { ImageProps } from './Image';
5 |
6 | export { default as BackgroundImage } from './BackgroundImage/BackgroundImage.svelte';
7 | export type { BackgroundImageStyleParams } from './BackgroundImage/BackgroundImage.styles';
8 | export type { BackgroundImageProps } from './BackgroundImage/BackgroundImage';
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Input/Input.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Input } from './Input.svelte';
5 |
6 | describe('Input', () => {
7 | itSupportsClassName(Input, {}, true);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Input/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Input } from './Input.svelte';
2 | export * as InputErrors from './Input.errors';
3 | export type { InputStylesParams } from './Input.styles';
4 | export type { InputProps, InputBaseProps, InputVariant } from './Input';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/InputWrapper/InputWrapper.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as InputWrapper } from './InputWrapper.svelte';
5 |
6 | describe('InputWrapper', () => {
7 | itSupportsClassName(InputWrapper);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/InputWrapper/LabelElement.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as LabelElement } from './LabelElement.svelte';
5 |
6 | describe('LabelElement', () => {
7 | itSupportsClassName(LabelElement);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/InputWrapper/index.ts:
--------------------------------------------------------------------------------
1 | export { default as InputWrapper } from './InputWrapper.svelte';
2 | export type { InputWrapperStyleParams } from './InputWrapper.styles';
3 | export type { InputWrapperProps, InputWrapperBaseProps } from './InputWrapper';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/JsonInput/JsonInput.d.ts:
--------------------------------------------------------------------------------
1 | import { TextareaProps } from '../Textarea/Textarea';
2 |
3 | export interface JsonInputProps extends TextareaProps {
4 | validationError?: string;
5 | serialize?: typeof JSON.stringify;
6 | deserialize?: typeof JSON.parse;
7 | formatOnBlur?: boolean;
8 | }
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/JsonInput/index.ts:
--------------------------------------------------------------------------------
1 | export { default as JsonInput } from './JsonInput.svelte';
2 | export type { JsonInputProps } from './JsonInput';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/JsonInput/validate-json/validate-json.ts:
--------------------------------------------------------------------------------
1 | export function validateJson(value: string, deserialize: typeof JSON.parse) {
2 | if (!value || (typeof value === 'string' && value.trim().length === 0)) {
3 | return true;
4 | }
5 |
6 | try {
7 | deserialize(value);
8 | return true;
9 | } catch (e) {
10 | return false;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Kbd/Kbd.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps } from '$lib/styles';
3 |
4 | export type KbdPosition = 'right' | 'center' | 'left' | 'apart';
5 |
6 | export interface KbdProps extends DefaultProps, HTMLAttributes {}
7 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Kbd/Kbd.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Kbd } from './Kbd.svelte';
5 |
6 | describe('Kbd', () => {
7 | itSupportsClassName(Kbd);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Kbd/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Kbd } from './Kbd.svelte';
2 | export type { KbdProps } from './Kbd';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Loader/Loader.d.ts:
--------------------------------------------------------------------------------
1 | import { SVGAttributes } from 'svelte/elements';
2 | import { Component } from '$lib/internal/types';
3 | import { DefaultProps, SvelteUIColor, SvelteUINumberSize, LoaderType } from '$lib/styles';
4 |
5 | export interface LoaderProps
6 | extends DefaultProps>,
7 | Omit, 'className'> {
8 | size?: SvelteUINumberSize;
9 | color?: SvelteUIColor | 'white';
10 | variant?: LoaderType;
11 | }
12 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Loader/Loader.styles.ts:
--------------------------------------------------------------------------------
1 | import { theme } from '$lib/styles';
2 | import type { SvelteUIColor } from '$lib/styles';
3 |
4 | export const LOADER_SIZES = {
5 | xs: 18,
6 | sm: 22,
7 | md: 36,
8 | lg: 44,
9 | xl: 58
10 | };
11 |
12 | export const getCorrectShade = (color: SvelteUIColor | string, dark: boolean = false) => {
13 | return theme.colors[dark ? `${color}400` : `${color}600`].value;
14 | };
15 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Loader/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Loader } from './Loader.svelte';
2 | export { default as Bars } from './loaders/Bars.svelte';
3 | export { default as Circle } from './loaders/Circle.svelte';
4 | export { default as Dots } from './loaders/Dots.svelte';
5 | export type { LoaderProps } from './Loader';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Mark/Mark.d.ts:
--------------------------------------------------------------------------------
1 | import { TextProps } from '../Text/Text';
2 |
3 | export interface MarkProps extends TextProps {}
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Mark/Mark.stories.svelte:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 | Here's some random text with a
12 | highlight in it.
13 |
14 |
15 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Mark/Mark.styles.ts:
--------------------------------------------------------------------------------
1 | import { createStyles, type SvelteUIColor } from '$lib/styles';
2 |
3 | export interface MarkStyleParams {
4 | color: SvelteUIColor;
5 | }
6 |
7 | export default createStyles((theme, { color }: MarkStyleParams) => {
8 | return {
9 | root: {
10 | backgroundColor: theme.fn.themeColor(color, 2),
11 | darkMode: {
12 | backgroundColor: theme.fn.themeColor(color, 5),
13 | color: theme.colors.dark900.value
14 | }
15 | }
16 | };
17 | });
18 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Mark/Mark.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Mark } from './Mark.svelte';
5 |
6 | describe('Mark', () => {
7 | itSupportsClassName(Mark);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Mark/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Mark } from './Mark.svelte';
2 | export type { MarkProps } from './Mark';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/MediaQuery/MediaQuery.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { CSS, DefaultProps, SvelteUINumberSize } from '$lib/styles';
3 |
4 | export interface MediaQueryProps extends DefaultProps, HTMLAttributes {
5 | smallerThan?: SvelteUINumberSize;
6 | largerThan?: SvelteUINumberSize;
7 | styles?: CSS;
8 | query?: string;
9 | }
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/MediaQuery/index.ts:
--------------------------------------------------------------------------------
1 | export { default as MediaQuery } from './MediaQuery.svelte';
2 | export type { MediaQueryStylesParams } from './MediaQuery.styles';
3 | export type { MediaQueryProps } from './MediaQuery';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Menu/Menu.context.ts:
--------------------------------------------------------------------------------
1 | import type { SvelteUINumberSize } from '$lib/styles';
2 |
3 | export interface MenuContextValue {
4 | hovered: number;
5 | radius: SvelteUINumberSize;
6 | onItemHover(index: number);
7 | onItemKeyDown(event: KeyboardEvent): void;
8 | onItemClick(event: MouseEvent): void;
9 | }
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Menu/combinator.ts:
--------------------------------------------------------------------------------
1 | /* eslint-disable @typescript-eslint/ban-ts-comment */
2 | import _Menu from './Menu.svelte';
3 | import Item from './MenuItem/MenuItem.svelte';
4 | import Label from './MenuLabel/MenuLabel.svelte';
5 |
6 | // combine Menu, MenuItem, and MenuLabel
7 |
8 | // @ts-ignore
9 | _Menu.Item = Item;
10 | // @ts-ignore
11 | _Menu.Label = Label;
12 | const Menu = _Menu as typeof _Menu & { Item: typeof Item; Label: typeof Label };
13 |
14 | export { Menu };
15 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Menu/index.ts:
--------------------------------------------------------------------------------
1 | export { Menu } from './combinator';
2 | export type { MenuStyleParams } from './Menu.styles';
3 | export type { MenuProps, MenuEvents } from './Menu';
4 |
5 | import type MenuComponent from './Menu.svelte';
6 | export type { MenuComponent };
7 |
8 | export { default as MenuIcon } from './MenuIcon.svelte';
9 | export type { MenuItemStylesParams } from './MenuItem/MenuItem.styles';
10 | export type { MenuItemProps, SharedMenuItemProps } from './MenuItem/MenuItem';
11 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Modal/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Modal } from './Modal.svelte';
2 | export type { ModalStylesParams } from './Modal.styles';
3 | export type { ModalProps, ModalEvents } from './Modal';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/NativeSelect/NativeSelect.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as NativeSelect } from './NativeSelect.svelte';
5 |
6 | describe('NativeSelect', () => {
7 | itSupportsClassName(NativeSelect);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/NativeSelect/index.ts:
--------------------------------------------------------------------------------
1 | export { default as NativeSelect } from './NativeSelect.svelte';
2 | export type { NativeSelectProps, SelectItem } from './NativeSelect';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Notification/Notification.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Notification } from './Notification.svelte';
5 |
6 | describe('Notification', () => {
7 | itSupportsClassName(Notification, {});
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Notification/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Notification } from './Notification.svelte';
2 | export type { NotificationStylesParams } from './Notification.styles';
3 | export type { NotificationProps } from './Notification';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/NumberInput/NumberInput.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as NumberInput } from './NumberInput.svelte';
5 |
6 | describe('NumberInput', () => {
7 | itSupportsClassName(NumberInput);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/NumberInput/index.ts:
--------------------------------------------------------------------------------
1 | export { default as NumberInput } from './NumberInput.svelte';
2 | export type { NumberInputStyleParams } from './NumberInput.styles';
3 | export type { NumberInputProps, Formatter, Parser } from './NumberInput';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/NumberInput/utils.ts:
--------------------------------------------------------------------------------
1 | import type { Formatter, Parser } from '../NumberInput';
2 |
3 | export const defaultFormatter: Formatter = (value) => value || '';
4 | export const defaultParser: Parser = (num) => {
5 | if (num === '-') return num;
6 |
7 | const parsedNum = parseFloat(num);
8 | return Number.isNaN(parsedNum) ? undefined : num;
9 | };
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/ObserverRender/ObserverRender.d.ts:
--------------------------------------------------------------------------------
1 | import { IoConfig } from '@svelteuidev/composables';
2 | import { TextInputProps } from '../TextInput/TextInput';
3 |
4 | export type Formatter = (value: string | undefined) => string;
5 | export type Parser = (value: string | undefined) => string | undefined;
6 |
7 | export interface ObserverRenderProps extends Omit {
8 | options?: IoConfig.Options;
9 | }
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/ObserverRender/ObserverRender.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as ObserverRender } from './ObserverRender.svelte';
5 |
6 | describe('ObserverRender', () => {
7 | itSupportsClassName(ObserverRender);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/ObserverRender/index.ts:
--------------------------------------------------------------------------------
1 | export { default as ObserverRender } from './ObserverRender.svelte';
2 | export type { ObserverRenderProps } from './ObserverRender';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Overlay/Overlay.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { CSS, DefaultProps, SvelteUINumberSize } from '$lib/styles';
3 |
4 | export interface OverlayProps extends DefaultProps, Omit, 'color'> {
5 | blur?: number;
6 | gradient?: string;
7 | center?: boolean;
8 | opacity?: CSS['opacity'];
9 | color?: CSS['backgroundColor'];
10 | zIndex?: CSS['zIndex'];
11 | radius?: SvelteUINumberSize;
12 | }
13 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Overlay/Overlay.styles.ts:
--------------------------------------------------------------------------------
1 | const elevations = {
2 | app: 100,
3 | modal: 200,
4 | popover: 300,
5 | overlay: 400
6 | } as const;
7 |
8 | export function getDefaultZIndex(level: keyof typeof elevations) {
9 | return elevations[level];
10 | }
11 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Overlay/Overlay.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Overlay } from './Overlay.svelte';
5 |
6 | describe('Overlay', () => {
7 | itSupportsClassName(Overlay);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Overlay/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Overlay } from './Overlay.svelte';
2 | export type { OverlayProps } from './Overlay';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Paper/Paper.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps, SvelteUINumberSize, SvelteUIShadow } from '$lib/styles';
3 |
4 | export interface PaperProps extends DefaultProps, HTMLAttributes {
5 | shadow?: SvelteUIShadow;
6 | radius?: SvelteUINumberSize;
7 | withBorder?: boolean;
8 | padding?: SvelteUINumberSize;
9 | }
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Paper/Paper.stories.svelte:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
10 | Paper is the most basic UI component. Use it to create cards, dropdowns, modals and other
11 | components that require background with shadow
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Paper/Paper.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Paper } from './Paper.svelte';
5 |
6 | describe('Paper', () => {
7 | itSupportsClassName(Paper);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Paper/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Paper } from './Paper.svelte';
2 | export type { PaperStyleParams } from './Paper.styles';
3 | export type { PaperProps } from './Paper';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/PasswordInput/PasswordInput.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as PasswordInput } from './PasswordInput.svelte';
5 |
6 | describe('PasswordInput', () => {
7 | itSupportsClassName(PasswordInput);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/PasswordInput/index.ts:
--------------------------------------------------------------------------------
1 | export { default as PasswordInput } from './PasswordInput.svelte';
2 | export type { PasswordInputProps } from './PasswordInput';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Popper/Popper.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Popper } from './Popper.svelte';
5 |
6 | describe('Popper', () => {
7 | itSupportsClassName(Popper, { mounted: true });
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Popper/PopperContainer/PopperContainer.svelte:
--------------------------------------------------------------------------------
1 |
7 |
8 | {#if withinPortal}
9 |
10 |
11 |
12 | {:else}
13 |
14 | {/if}
15 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Popper/PopperContainer/index.ts:
--------------------------------------------------------------------------------
1 | export { default as PopperContainer } from './PopperContainer.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Popper/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Popper } from './Popper.svelte';
2 | export { calculateArrowPlacement } from './Popper.styles';
3 | export type { PopperStyleParams } from './Popper.styles';
4 | export type { PopperProps } from './Popper';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Portal/OptionalPortal.d.ts:
--------------------------------------------------------------------------------
1 | import { PortalProps } from './Portal';
2 |
3 | export interface OptionalPortalProps extends PortalProps {
4 | withinPortal?: boolean;
5 | }
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Portal/OptionalPortal.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Portal } from './Portal.svelte';
5 |
6 | describe('Portal', () => {
7 | itSupportsClassName(Portal);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Portal/Portal.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps } from '$lib/styles';
3 |
4 | export interface PortalProps extends DefaultProps, HTMLAttributes {
5 | target?: HTMLElement | string;
6 | position?: string;
7 | zIndex?: number;
8 | }
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Portal/Portal.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Portal } from './Portal.svelte';
5 |
6 | describe('Portal', () => {
7 | itSupportsClassName(Portal);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Portal/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Portal } from './Portal.svelte';
2 | export type { PortalProps } from './Portal';
3 |
4 | export { default as OptionalPortal } from './OptionalPortal.svelte';
5 | export type { OptionalPortalProps } from './OptionalPortal';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Progress/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Progress } from './Progress.svelte';
2 | export type { ProgressStylesParams } from './Progress.styles';
3 | export type { ProgressProps, Sections } from './Progress';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Radio/Radio.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Radio } from './Radio.svelte';
5 |
6 | describe('Radio', () => {
7 | itSupportsClassName(Radio);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Radio/RadioGroup/RadioGroup.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as RadioGroup } from './RadioGroup.svelte';
5 |
6 | describe('RadioGroup', () => {
7 | itSupportsClassName(RadioGroup);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Radio/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Radio } from './Radio.svelte';
2 | export type { RadioStyleParams } from './Radio.styles';
3 | export type { RadioProps } from './Radio';
4 |
5 | export { default as RadioGroup } from './RadioGroup/RadioGroup.svelte';
6 | export type { RadioGroupProps } from './RadioGroup/RadioGroup';
7 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/SegmentedControl/index.ts:
--------------------------------------------------------------------------------
1 | export { default as SegmentedControl } from './SegmentedControl.svelte';
2 | export type { SegmentedControlStylesParams } from './SegmentedControl.styles';
3 | export type { SegmentedControlProps, SegmentedControlItem } from './SegmentedControl';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Seo/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Seo } from './Seo.svelte';
2 | export type {
3 | SeoProps,
4 | MobileAlternate,
5 | LanguageAlternate,
6 | AdditionalRobotsProps,
7 | Twitter,
8 | Facebook,
9 | OpenGraph
10 | } from './Seo';
11 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/SimpleGrid/SimpleGrid.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as SimpleGrid } from './SimpleGrid.svelte';
5 |
6 | describe('SimpleGrid', () => {
7 | itSupportsClassName(SimpleGrid);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/SimpleGrid/index.ts:
--------------------------------------------------------------------------------
1 | export { default as SimpleGrid } from './SimpleGrid.svelte';
2 | export type { SimpleGridStyleParams } from './SimpleGrid.styles';
3 | export type { SimpleGridProps, SimpleGridBreakpoint } from './SimpleGrid';
4 | export { getSortedBreakpoints, size } from './get-sorted-breakpoints';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Skeleton/Skeleton.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps, SvelteUINumberSize } from '$lib/styles';
3 |
4 | export interface SkeletonProps extends DefaultProps, HTMLAttributes {
5 | visible?: boolean;
6 | height?: number | string;
7 | width?: number | string;
8 | circle?: boolean;
9 | radius?: SvelteUINumberSize;
10 | animate?: boolean;
11 | }
12 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Skeleton/Skeleton.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Skeleton } from './Skeleton.svelte';
5 |
6 | describe('Skeleton', () => {
7 | itSupportsClassName(Skeleton);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Skeleton/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Skeleton } from './Skeleton.svelte';
2 | export type { SkeletonStyleParams } from './Skeleton.styles';
3 | export type { SkeletonProps } from './Skeleton';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Space/Space.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps, SvelteUINumberSize } from '$lib/styles';
3 |
4 | export interface SpaceProps extends DefaultProps, HTMLAttributes {
5 | w?: SvelteUINumberSize;
6 | h?: SvelteUINumberSize;
7 | }
8 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Space/Space.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Space } from './Space.svelte';
5 |
6 | describe('Space', () => {
7 | itSupportsClassName(Space);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Space/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Space } from './Space.svelte';
2 | export type { SpaceStyleParams } from './Space.styles';
3 | export type { SpaceProps } from './Space';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Stack/Stack.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { CSS, DefaultProps, SvelteUINumberSize } from '$lib/styles';
3 |
4 | export interface StackProps extends DefaultProps, HTMLAttributes {
5 | spacing?: SvelteUINumberSize;
6 | align?: CSS['alignItems'];
7 | justify?: CSS['justifyContent'];
8 | }
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Stack/Stack.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Stack } from './Stack.svelte';
5 |
6 | describe('Stack', () => {
7 | itSupportsClassName(Stack);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Stack/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Stack } from './Stack.svelte';
2 | export * as StackErrors from './Stack.errors';
3 | export type { StackStyleParam } from './Stack.styles';
4 | export type { StackProps } from './Stack';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Switch/Switch.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Switch } from './Switch.svelte';
5 |
6 | describe('Switch', () => {
7 | itSupportsClassName(Switch);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Switch/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Switch } from './Switch.svelte';
2 | export type { SwitchStyleParams } from './Switch.styles';
3 | export type { SwitchProps, SwitchTimingFunction } from './Switch';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Tabs/Tabs.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Tabs } from './Tabs.svelte';
5 |
6 | describe('Tabs', () => {
7 | itSupportsClassName(Tabs);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Tabs/combinator.ts:
--------------------------------------------------------------------------------
1 | /* eslint-disable @typescript-eslint/ban-ts-comment */
2 | import _Tabs from './Tabs.svelte';
3 | import Tab from './Tab/Tab.svelte';
4 |
5 | // @ts-ignore
6 | _Tabs.Tab = Tab;
7 | const Tabs = _Tabs as typeof _Tabs & { Tab: typeof Tab };
8 |
9 | export { Tabs };
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Tabs/index.ts:
--------------------------------------------------------------------------------
1 | export { Tabs } from './combinator';
2 | export type { TabsStyleParams } from './Tabs.styles';
3 | export type { TabsProps } from './Tabs';
4 |
5 | export type { TabStyleParams } from './Tab/Tab.styles';
6 | export type { TabProps } from './Tab/Tab';
7 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Text/Text.stories.svelte:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 | This is a nice text
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Text/Text.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Text } from './Text.svelte';
5 |
6 | describe('Text', () => {
7 | itSupportsClassName(Text);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Text/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Text } from './Text.svelte';
2 | export * as TextErrors from './Text.errors';
3 | export type { TextStyleParams } from './Text.styles';
4 | export type { TextProps, TextVariant, TextColors, Tracking } from './Text';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/TextInput/TextInput.d.ts:
--------------------------------------------------------------------------------
1 | import { InputProps } from '../Input/Input';
2 | import { InputWrapperProps } from '../InputWrapper/InputWrapper';
3 |
4 | export type TextInputProps = InputProps & InputWrapperProps;
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/TextInput/TextInput.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as TextInput } from './TextInput.svelte';
5 |
6 | describe('TextInput', () => {
7 | itSupportsClassName(TextInput);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/TextInput/index.ts:
--------------------------------------------------------------------------------
1 | export { default as TextInput } from './TextInput.svelte';
2 | export type { TextInputProps } from './TextInput';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Textarea/Textarea.d.ts:
--------------------------------------------------------------------------------
1 | import type { DefaultProps } from '$lib/styles';
2 | import { InputProps } from '../Input/Input';
3 | import { InputWrapperProps } from '../InputWrapper/InputWrapper';
4 |
5 | export type TextareaProps = Omit &
6 | Omit &
7 | DefaultProps;
8 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Textarea/Textarea.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Textarea } from './Textarea.svelte';
5 |
6 | describe('Textarea', () => {
7 | itSupportsClassName(Textarea);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Textarea/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Textarea } from './Textarea.svelte';
2 | export type { TextareaProps } from './Textarea';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/ThemeIcon/ThemeIcon.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as ThemeIcon } from './ThemeIcon.svelte';
5 |
6 | describe('ThemeIcon', () => {
7 | itSupportsClassName(ThemeIcon);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/ThemeIcon/index.ts:
--------------------------------------------------------------------------------
1 | export { default as ThemeIcon } from './ThemeIcon.svelte';
2 | export type { ThemeIconStyleParams } from './ThemeIcon.styles';
3 | export type { ThemeIconProps, ThemeIconVariant } from './ThemeIcon';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Timeline/Timeline.styles.ts:
--------------------------------------------------------------------------------
1 | import { createStyles } from '$lib/styles';
2 |
3 | export interface TimelineStyleParams {
4 | align?: 'left' | 'right';
5 | bulletSize?: number;
6 | lineWidth?: number;
7 | }
8 |
9 | export default createStyles((_, { align, bulletSize, lineWidth }: TimelineStyleParams) => {
10 | return {
11 | root: {
12 | paddingLeft: align === 'left' ? bulletSize / 2 + lineWidth / 2 : 0,
13 | paddingRight: align === 'left' ? 0 : bulletSize / 2 + lineWidth / 2
14 | }
15 | };
16 | });
17 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Timeline/Timeline.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Timeline } from './Timeline.svelte';
5 |
6 | describe('Timeline', () => {
7 | itSupportsClassName(Timeline);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Timeline/combinator.ts:
--------------------------------------------------------------------------------
1 | import _Timeline from './Timeline.svelte';
2 | import TimelineItem from './TimelineItem/TimelineItem.svelte';
3 |
4 | // Combine Timeline and TimelineItem
5 | // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6 | // @ts-ignore
7 | _Timeline.Item = TimelineItem;
8 | const Timeline = _Timeline as typeof _Timeline & { Item: typeof TimelineItem };
9 |
10 | export { Timeline };
11 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Timeline/index.ts:
--------------------------------------------------------------------------------
1 | export { Timeline } from './combinator';
2 | export type { TimelineStyleParams } from './Timeline.styles';
3 | export type { TimelineProps } from './Timeline';
4 |
5 | export type { TimelineItemStyleParams } from './TimelineItem/TimelineItem.styles';
6 | export type { TimelineItemProps } from './TimelineItem/TimelineItem';
7 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Title/Title.d.ts:
--------------------------------------------------------------------------------
1 | import { TextProps } from '../Text/Text';
2 |
3 | export type TitleOrder = 1 | 2 | 3 | 4 | 5 | 6;
4 |
5 | export type HTMLHeadingElements = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
6 |
7 | export interface TitleProps extends TextProps {
8 | order?: TitleOrder;
9 | }
10 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Title/Title.stories.svelte:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 | Title Storybook
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Title/Title.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Title } from './Title.svelte';
5 |
6 | describe('Title', () => {
7 | itSupportsClassName(Title);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Title/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Title } from './Title.svelte';
2 | export type { TitleProps, TitleOrder, HTMLHeadingElements } from './Title';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Tooltip/Tooltip.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as Tooltip } from './Tooltip.svelte';
5 |
6 | describe('Tooltip', () => {
7 | itSupportsClassName(Tooltip);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/Tooltip/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Tooltip } from './Tooltip.svelte';
2 | export type { TooltipStyleParams } from './Tooltip.styles';
3 | export type { TooltipProps } from './Tooltip';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/TypographyProvider/TypographyProvider.d.ts:
--------------------------------------------------------------------------------
1 | import { HTMLAttributes } from 'svelte/elements';
2 | import { DefaultProps, SvelteUIColor } from '$lib/styles';
3 |
4 | export interface TypographyProviderProps extends DefaultProps, HTMLAttributes {
5 | underline?: boolean;
6 | primaryColor?: SvelteUIColor;
7 | }
8 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/TypographyProvider/TypographyProvider.test.ts:
--------------------------------------------------------------------------------
1 | import { describe } from 'vitest';
2 | import { itSupportsClassName } from '@svelteuidev/tests';
3 |
4 | import { default as TypographyProvider } from './TypographyProvider.svelte';
5 |
6 | describe('TypographyProvider', () => {
7 | itSupportsClassName(TypographyProvider);
8 | });
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/components/TypographyProvider/index.ts:
--------------------------------------------------------------------------------
1 | export { default as TypographyProvider } from './TypographyProvider.svelte';
2 | export type { TypographyProviderStyleParams } from './TypographyProvider.styles';
3 | export type { TypographyProviderProps } from './TypographyProvider';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from './internal/index.js';
2 | export * from './styles/index.js';
3 | export * from './components/index.js';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/errors/Error.svelte:
--------------------------------------------------------------------------------
1 |
9 |
10 | {#if observable}
11 |
12 | {@html exception(component, code)}
13 | {/if}
14 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/errors/error-context.ts:
--------------------------------------------------------------------------------
1 | import type { ErrorCtx } from './types';
2 |
3 | export const errorCtx: ErrorCtx = {
4 | error: false,
5 | message: '',
6 | solution: ''
7 | };
8 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/errors/exception.ts:
--------------------------------------------------------------------------------
1 | import { UserException } from './user-exception.js';
2 | import type { ErrorCtx, CurrentComponents } from './types';
3 |
4 | export function exception(component: CurrentComponents, code: ErrorCtx): string {
5 | const { message, solution } = code;
6 |
7 | if (solution) {
8 | return UserException(component, message, solution);
9 | }
10 | return UserException(component, message);
11 | }
12 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/errors/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Error } from './Error.svelte';
2 | export { UserException } from './user-exception.js';
3 | export { errorCtx } from './error-context.js';
4 | export { exception } from './exception.js';
5 |
6 | /** types exporting */
7 | import type { CurrentComponents, ErrorCtx, UserException } from './types';
8 | export type { CurrentComponents, ErrorCtx, UserException as UserExceptionType };
9 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/errors/modules/browser.ts:
--------------------------------------------------------------------------------
1 | const isBrowser = () => typeof window !== 'undefined';
2 |
3 | /** Determines whether the app is running in the browser or on the server. */
4 | export const browser = isBrowser();
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/errors/types/error-context.d.ts:
--------------------------------------------------------------------------------
1 | export interface ErrorCtx {
2 | error: boolean;
3 | message: string;
4 | solution: string;
5 | }
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/errors/types/index.d.ts:
--------------------------------------------------------------------------------
1 | export type { UserException } from './user-exception';
2 | export type { CurrentComponents } from './CurrentComponents';
3 | export type { ErrorCtx } from './error-context';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/index.ts:
--------------------------------------------------------------------------------
1 | export * from './temp/index.js';
2 | export * from './errors/index.js';
3 | export * from './utils/index.js';
4 | export * from './types/index.js';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/temp/index.ts:
--------------------------------------------------------------------------------
1 | export { clipboard } from './actions/use-clipboard/use-clipboard.js';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/types/Component.d.ts:
--------------------------------------------------------------------------------
1 | import type { SvelteComponent } from 'svelte';
2 |
3 | export type Component = typeof SvelteComponent;
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/types/helpers.d.ts:
--------------------------------------------------------------------------------
1 | export type Func = (...args: any[]) => any;
2 | export type FunctionNoArgs = () => void;
3 | export type FunctionType = (args: T) => R;
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/types/index.d.ts:
--------------------------------------------------------------------------------
1 | export type { Primitive } from './primitive';
2 | export type { LiteralUnion } from './literal-union';
3 | export type { Component } from './Component';
4 | export type { Func, FunctionNoArgs, FunctionType } from './helpers';
5 | export type { Transition, TransitionName, TransitionOptions, TransitionParams } from './Transition';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/types/index.ts:
--------------------------------------------------------------------------------
1 | export type { Primitive } from './primitive';
2 | export type { LiteralUnion } from './literal-union';
3 | export type { Component } from './Component';
4 | export type { Func, FunctionNoArgs, FunctionType } from './helpers';
5 | export type { Transition, TransitionName, TransitionOptions, TransitionParams } from './Transition';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/types/literal-union.d.ts:
--------------------------------------------------------------------------------
1 | import type { Primitive } from './primitive';
2 |
3 | export type LiteralUnion =
4 | | LiteralType
5 | | (BaseType & Record);
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/types/primitive.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Matches any [primitive value](https://developer.mozilla.org/en-US/docs/Glossary/Primitive).
3 | @category Type
4 | */
5 | export type Primitive = null | undefined | string | number | boolean | symbol | bigint;
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/utils/forwarding/forward-transitions.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * This will be the Action to forward transitions from components.
3 | */
4 |
5 | export {};
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/internal/utils/index.ts:
--------------------------------------------------------------------------------
1 | export { useActions } from './forwarding/forward-actions.js';
2 | export { createEventForwarder } from './forwarding/forward-events.js';
3 | export { ENVIRONMENT } from './environment.js';
4 | export { getTransition } from './get-transition/get-transition.js';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/engine/index.ts:
--------------------------------------------------------------------------------
1 | export * from './types/index.js';
2 |
3 | export { createStyles } from './create-styles.js';
4 | export { cssFactory } from './css.js';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/engine/types/Selectors.d.ts:
--------------------------------------------------------------------------------
1 | /** Extracts class names from useStyles hook */
2 | export type Selectors<
3 | T extends (...args: any) => { classes: Record; cx: (...cx: any) => string }
4 | > = keyof ReturnType['classes'];
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/engine/types/index.d.ts:
--------------------------------------------------------------------------------
1 | export type { Selectors } from './Selectors';
2 | export type { AriaRole, AriaAttributes } from './ARIA';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/engine/types/index.ts:
--------------------------------------------------------------------------------
1 | export type { Selectors } from './Selectors';
2 | export type { AriaRole, AriaAttributes } from './ARIA';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/engine/utils/from-entries/from-entries.ts:
--------------------------------------------------------------------------------
1 | export function fromEntries(entries: any[]) {
2 | const o: any = {};
3 |
4 | Object.keys(entries).forEach((key) => {
5 | const [k, v] = entries[key];
6 | o[k] = v;
7 | });
8 |
9 | return o;
10 | }
11 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/index.ts:
--------------------------------------------------------------------------------
1 | export * from './theme/index.js';
2 | export * from './engine/index.js';
3 | export * from './ssr.js';
4 |
5 | export {
6 | css,
7 | dark,
8 | reset,
9 | theme,
10 | config,
11 | globalCss,
12 | keyframes,
13 | getCssText,
14 | createTheme,
15 | NormalizeCSS,
16 | SvelteUIGlobalCSS
17 | } from './stitches.config.js';
18 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/SvelteUIProvider/index.ts:
--------------------------------------------------------------------------------
1 | export { default as SvelteUIProvider } from './SvelteUIProvider.svelte';
2 | export { useSvelteUITheme } from './default-theme';
3 | export { colorScheme } from './svelteui.stores';
4 | export {
5 | key,
6 | globalStyles,
7 | useSvelteUIDefaultProps,
8 | useSvelteUIThemeContext
9 | } from './svelteui.provider';
10 | export type {
11 | ProviderStyles,
12 | SvelteUIDefaultProps,
13 | SvelteUIProviderContextType,
14 | SvelteUIProviderProps
15 | } from './svelteui.provider';
16 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/SvelteUIProvider/svelteui.stores.ts:
--------------------------------------------------------------------------------
1 | import { writable } from 'svelte/store';
2 | import type { Writable } from 'svelte/store';
3 | import type { ColorScheme } from '../types';
4 |
5 | export const colorScheme: Writable = writable('light');
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/functions/attach-functions.ts:
--------------------------------------------------------------------------------
1 | export {};
2 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/functions/fns/cover/cover.ts:
--------------------------------------------------------------------------------
1 | import { rem } from '../../../utils/rem/rem';
2 |
3 | export function cover(offset: number | string = 0) {
4 | return {
5 | position: 'absolute',
6 | top: rem(offset),
7 | right: rem(offset),
8 | left: rem(offset),
9 | bottom: rem(offset)
10 | };
11 | }
12 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/functions/fns/index.ts:
--------------------------------------------------------------------------------
1 | import { themeColor } from './theme-color/theme-color.js';
2 | import { cover } from './cover/cover.js';
3 | import { size } from './size/size.js';
4 | import { radius } from './radius/radius.js';
5 | import { variant } from './variant/variant.js';
6 | import { rgba } from './rgba/rgba.js';
7 |
8 | export type { GetSize } from './size/size';
9 |
10 | export const fns = {
11 | cover,
12 | size,
13 | radius,
14 | themeColor,
15 | variant,
16 | rgba
17 | } as const;
18 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/functions/fns/radius/radius.ts:
--------------------------------------------------------------------------------
1 | import { useSvelteUITheme, useSvelteUIThemeContext } from '../../../SvelteUIProvider';
2 | import type { SvelteUINumberSize } from '../../../types';
3 |
4 | export function radius(radii?: SvelteUINumberSize): number | string {
5 | const theme = useSvelteUIThemeContext()?.theme || useSvelteUITheme();
6 |
7 | if (typeof radii === 'number') {
8 | return radii;
9 | }
10 |
11 | return theme.radii[radii].value;
12 | }
13 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/functions/fns/rgba/rgba.ts:
--------------------------------------------------------------------------------
1 | import { toRgba } from '../../../utils/to-rgba/to-rgba';
2 |
3 | export function rgba(color: string, alpha: number = 1) {
4 | if (typeof color !== 'string' || alpha > 1 || alpha < 0) {
5 | return 'rgba(0, 0, 0, 1)';
6 | }
7 |
8 | const { r, g, b } = toRgba(color);
9 | return `rgba(${r}, ${g}, ${b}, ${alpha})`;
10 | }
11 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/functions/fns/size/size.ts:
--------------------------------------------------------------------------------
1 | export interface GetSize {
2 | size: string | number;
3 | sizes: Record;
4 | }
5 |
6 | export function size(props: GetSize): number {
7 | if (typeof props.size === 'number') {
8 | return props.size;
9 | }
10 |
11 | if (typeof props.sizes[props.size] === 'number') {
12 | return props.sizes[props.size];
13 | }
14 |
15 | return +props.sizes[props.size]?.value || +props.sizes.md?.value;
16 | }
17 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/functions/index.ts:
--------------------------------------------------------------------------------
1 | export * from './fns/index.js';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/types/ColorScheme.d.ts:
--------------------------------------------------------------------------------
1 | export type ColorScheme = 'light' | 'dark';
2 |
3 | export type DefaultBackground = 'white' | '#1A1B1E';
4 |
5 | export type DefaultColor = 'black' | '#C1C2C5';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/types/DeepPartial.d.ts:
--------------------------------------------------------------------------------
1 | export type DeepPartial = {
2 | [P in keyof T]?: DeepPartial;
3 | };
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/types/SvelteUIColor.d.ts:
--------------------------------------------------------------------------------
1 | import type { LiteralUnion } from '$lib/internal';
2 |
3 | export type SvelteUIColor = LiteralUnion<
4 | | 'dark'
5 | | 'gray'
6 | | 'red'
7 | | 'pink'
8 | | 'grape'
9 | | 'violet'
10 | | 'indigo'
11 | | 'blue'
12 | | 'cyan'
13 | | 'teal'
14 | | 'green'
15 | | 'lime'
16 | | 'yellow'
17 | | 'orange',
18 | string
19 | >;
20 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/types/SvelteUIGradient.d.ts:
--------------------------------------------------------------------------------
1 | import type { SvelteUIColor } from './SvelteUIColor';
2 |
3 | export interface SvelteUIGradient {
4 | from: SvelteUIColor;
5 | to: SvelteUIColor;
6 | deg?: number;
7 | }
8 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/types/SvelteUIMargin.d.ts:
--------------------------------------------------------------------------------
1 | import type { SvelteUINumberSize } from './SvelteUISize';
2 |
3 | export type SvelteUIMargin = 'm' | 'my' | 'mx' | 'mt' | 'mb' | 'ml' | 'mr';
4 | type MarginValue = SvelteUINumberSize | (string & Record);
5 |
6 | export interface SvelteUIMargins {
7 | m?: MarginValue;
8 | my?: MarginValue;
9 | mx?: MarginValue;
10 | mt?: MarginValue;
11 | mb?: MarginValue;
12 | ml?: MarginValue;
13 | mr?: MarginValue;
14 | }
15 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/types/SvelteUIShadow.d.ts:
--------------------------------------------------------------------------------
1 | /* eslint-disable @typescript-eslint/ban-types */
2 | import type { SvelteUISize } from './SvelteUISize';
3 |
4 | export type SvelteUIShadow = SvelteUISize | (string & {});
5 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/types/SvelteUISize.d.ts:
--------------------------------------------------------------------------------
1 | import type { LiteralUnion } from '$lib/internal';
2 |
3 | export type SvelteUISize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
4 | export type SvelteUINumberSize = LiteralUnion;
5 | export type SvelteUISizes = Record;
6 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/types/SvelteUITypography.d.ts:
--------------------------------------------------------------------------------
1 | export type SvelteUIFontSizes =
2 | | 'thin'
3 | | 'extralight'
4 | | 'light'
5 | | 'normal'
6 | | 'medium'
7 | | 'semibold'
8 | | 'bold'
9 | | 'extrabold';
10 |
11 | export type SvelteUINumberFontSize = SvelteUIFontSizes | number;
12 |
13 | export type SvelteUITextAlignment = 'left' | 'right' | 'center' | 'justify';
14 |
15 | export type SvelteUITextTransform = 'none' | 'capitalize' | 'uppercase' | 'lowercase';
16 |
--------------------------------------------------------------------------------
/packages/svelteui-core/src/styles/theme/utils/random-id/random-id.ts:
--------------------------------------------------------------------------------
1 | export function randomID(prefix: string = 'svelteui'): string {
2 | return `${prefix}-${Math.random().toString(36).substring(2, 10)}`;
3 | }
4 |
--------------------------------------------------------------------------------
/packages/svelteui-core/svelte.config.js:
--------------------------------------------------------------------------------
1 | import preprocess from 'svelte-preprocess';
2 | import fs from 'fs';
3 | export const pkg = JSON.parse(fs.readFileSync(new URL('package.json', import.meta.url), 'utf8'));
4 |
5 | /** @type {import('@sveltejs/kit').Config} */
6 | const config = {
7 | // Consult https://github.com/sveltejs/svelte-preprocess
8 | // for more information about preprocessors
9 | preprocess: preprocess(),
10 | kit: {
11 | files: {
12 | lib: 'src'
13 | }
14 | }
15 | };
16 |
17 | export default config;
18 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/.eslintignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 | # Ignore files for PNPM, NPM and YARN
12 | pnpm-lock.yaml
13 | package-lock.json
14 | yarn.lock
15 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | extends: ['../../configuration/eslint-preset-svelteui'],
3 | rules: {}
4 | };
5 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/.npmignore:
--------------------------------------------------------------------------------
1 | *.test.*
2 | *.stories.svelte
--------------------------------------------------------------------------------
/packages/svelteui-dates/.npmrc:
--------------------------------------------------------------------------------
1 | engine-strict=true
2 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/.prettierignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 |
12 | # Ignore files for PNPM, NPM and YARN
13 | pnpm-lock.yaml
14 | package-lock.json
15 | yarn.lock
16 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": true,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "printWidth": 100
6 | }
7 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/components/CalendarBase/CalendarBase.svelte:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/svelteuidev/svelteui/1538d71a11a969b0c827722fc1e65afc206dc2c8/packages/svelteui-dates/src/components/CalendarBase/CalendarBase.svelte
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/components/Month/Day/get-day-autofocus/get-day-autofocus.ts:
--------------------------------------------------------------------------------
1 | interface GetDayAutofocus {
2 | hasValue: boolean;
3 | selected: boolean;
4 | firstInMonth: boolean;
5 | }
6 |
7 | export function getDayAutofocus({ hasValue, selected, firstInMonth }: GetDayAutofocus) {
8 | if (hasValue) {
9 | return selected ? true : undefined;
10 | }
11 |
12 | return firstInMonth ? true : undefined;
13 | }
14 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/components/Month/Day/get-day-tab-index/get-day-tab-index.ts:
--------------------------------------------------------------------------------
1 | interface GetDayTabIndex {
2 | focusable: boolean;
3 | hasValue: boolean;
4 | selected: boolean;
5 | firstInMonth: boolean;
6 | }
7 |
8 | export function getDayTabIndex({ focusable, hasValue, selected, firstInMonth }: GetDayTabIndex) {
9 | if (!focusable) {
10 | return -1;
11 | }
12 |
13 | if (hasValue) {
14 | return selected ? 0 : -1;
15 | }
16 |
17 | return firstInMonth ? 0 : -1;
18 | }
19 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/components/Month/Day/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Day } from './Day.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/components/Month/Month.stories.svelte:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/components/Month/get-day-props/is-outside/is-outside.ts:
--------------------------------------------------------------------------------
1 | import { isSameMonth } from '../../../../utils';
2 |
3 | export function isOutside(date: Date, month: Date) {
4 | return !isSameMonth(date, month);
5 | }
6 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/components/Month/get-day-props/is-weekend/is-weekend.ts:
--------------------------------------------------------------------------------
1 | export function isWeekend(date: Date) {
2 | const weekday = date.getDay();
3 | return weekday === 6 || weekday === 0;
4 | }
5 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/components/Month/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Month } from './Month.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from './utils';
2 | export * from './components/Month';
3 |
4 | /** Type Exports */
5 | import type { FirstDayOfWeek } from './types';
6 | export type { FirstDayOfWeek };
7 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/types.ts:
--------------------------------------------------------------------------------
1 | export type FirstDayOfWeek = 'sunday' | 'monday';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/utils/get-end-of-week/get-end-of-week.ts:
--------------------------------------------------------------------------------
1 | import type { FirstDayOfWeek } from '../../types';
2 |
3 | export function getEndOfWeek(date: Date, firstDayOfWeek: FirstDayOfWeek = 'monday') {
4 | const value = new Date(date);
5 | const day = value.getDay();
6 | const isSunday = firstDayOfWeek === 'sunday';
7 |
8 | const clampToLastDay = 7 - (isSunday ? day + 1 : day);
9 |
10 | if ((isSunday && day !== 6) || day !== 0) {
11 | value.setDate(value.getDate() + clampToLastDay);
12 | }
13 |
14 | return value;
15 | }
16 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/utils/get-months-names/get-months-names.ts:
--------------------------------------------------------------------------------
1 | import dayjs from 'dayjs';
2 |
3 | export function getMonthsNames(locale: string, format: string = 'MMM') {
4 | const names: string[] = [];
5 | const date = new Date(2021, 0, 1);
6 |
7 | for (let i = 0; i < 12; i += 1) {
8 | names.push(dayjs(date).locale(locale).format(format));
9 | date.setMonth(date.getMonth() + 1);
10 | }
11 |
12 | return names;
13 | }
14 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/utils/get-start-of-week/get-start-of-week.ts:
--------------------------------------------------------------------------------
1 | import type { FirstDayOfWeek } from '../../types';
2 |
3 | export function getStartOfWeek(date: Date, firstDayOfWeek: FirstDayOfWeek = 'monday') {
4 | const value = new Date(date);
5 | const day = value.getDay() || 7;
6 | const isSunday = firstDayOfWeek === 'sunday';
7 |
8 | const clampToFirstDay = isSunday ? day : day - 1;
9 |
10 | if ((isSunday && day !== 0) || day !== 1) {
11 | value.setHours(-24 * clampToFirstDay);
12 | }
13 |
14 | return value;
15 | }
16 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/utils/get-years-range/get-years-range.test.ts:
--------------------------------------------------------------------------------
1 | import { getYearsRange } from './get-years-range';
2 | import { describe, test, expect } from 'vitest';
3 |
4 | describe('@svelteuidev/dates/get-years-range', () => {
5 | test('returns correct years range', () => {
6 | expect(getYearsRange({ from: 2000, to: 2010 })).toStrictEqual([
7 | 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
8 | ]);
9 | });
10 | });
11 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/utils/get-years-range/get-years-range.ts:
--------------------------------------------------------------------------------
1 | export interface YearsRange {
2 | from: number;
3 | to: number;
4 | }
5 |
6 | export function getYearsRange(range: YearsRange) {
7 | const years: number[] = [];
8 |
9 | for (let year = range.from; year <= range.to; year += 1) {
10 | years.push(year);
11 | }
12 |
13 | return years;
14 | }
15 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/utils/is-same-date/is-same-date.ts:
--------------------------------------------------------------------------------
1 | import { isSameMonth } from '../is-same-month/is-same-month';
2 |
3 | export function isSameDate(date: Date, comparison: Date) {
4 | return isSameMonth(date, comparison) && date.getDate() === comparison.getDate();
5 | }
6 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/utils/is-same-month/is-same-month.test.ts:
--------------------------------------------------------------------------------
1 | import { isSameMonth } from './is-same-month';
2 | import { describe, test, expect } from 'vitest';
3 |
4 | describe('@svelteuidev/dates/is-same-month', () => {
5 | test('detects same month', () => {
6 | expect(isSameMonth(new Date(2021, 2, 1), new Date(2021, 2, 2))).toBe(true);
7 | expect(isSameMonth(new Date(2021, 3, 1), new Date(2021, 2, 2))).toBe(false);
8 | expect(isSameMonth(new Date(2022, 2, 2), new Date(2021, 2, 2))).toBe(false);
9 | });
10 | });
11 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/src/utils/is-same-month/is-same-month.ts:
--------------------------------------------------------------------------------
1 | export function isSameMonth(date: Date, comparison: Date) {
2 | return (
3 | date.getFullYear() === comparison.getFullYear() && date.getMonth() === comparison.getMonth()
4 | );
5 | }
6 |
--------------------------------------------------------------------------------
/packages/svelteui-dates/vite.config.js:
--------------------------------------------------------------------------------
1 | import { sveltekit } from '@sveltejs/kit/vite';
2 |
3 | /** @type {import('vite').UserConfig} */
4 | const config = {
5 | plugins: [sveltekit()],
6 | optimizeDeps: {
7 | exclude: ['radix-icons-svelte']
8 | },
9 | resolve: {
10 | alias: {
11 | $dlib: './src'
12 | }
13 | }
14 | };
15 |
16 | export default config;
17 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/.eslintignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 | # Ignore files for PNPM, NPM and YARN
12 | pnpm-lock.yaml
13 | package-lock.json
14 | yarn.lock
15 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | extends: ['../../configuration/eslint-preset-svelteui'],
3 | rules: {
4 | 'no-useless-escape': 'off'
5 | }
6 | };
7 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/.npmignore:
--------------------------------------------------------------------------------
1 | *.test.*
2 | *.stories.svelte
--------------------------------------------------------------------------------
/packages/svelteui-demos/.npmrc:
--------------------------------------------------------------------------------
1 | engine-strict=true
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/.prettierignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 |
12 | # Ignore files for PNPM, NPM and YARN
13 | pnpm-lock.yaml
14 | package-lock.json
15 | yarn.lock
16 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": true,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "printWidth": 100
6 | }
7 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/components/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Demo } from './Demo.svelte';
2 | export { default as CodeDemo } from './CodeDemo/CodeDemo.svelte';
3 | export { default as Configurator } from './Configurator/Configurator.svelte';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-click-outside/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-clipboard/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-css-variable/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-download/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-focus/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-hot-key/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 | export * as target from './target.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-io/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-lazy/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-lock-scroll/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-long-press/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-move/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-page-leave/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-persistent-tab/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-portal/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/actions/use-tab-leave/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/index.ts:
--------------------------------------------------------------------------------
1 | export * from './actions';
2 | export * from './utilities';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-browser-context/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-debounce/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-element-size/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-eye-dropper/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-focus-within/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-hash/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 | export * as persist from './persist.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-id/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-mouse-position/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 | export * as document from './document.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-os/index.ts:
--------------------------------------------------------------------------------
1 | export * as useOsDemo from './usage.svelte';
2 | export * as usage from './usage.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-raf-fn/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 | export * as options from './options.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-throttle/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-viewport-size/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/composables/utilities/use-web-worker/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/ActionIcon/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './ActionIcon.demo.configurator.svelte';
2 | export * as variants from './ActionIcon.demo.variants.svelte';
3 | export * as colors from './ActionIcon.demo.colors.svelte';
4 | export * as close from './ActionIcon.demo.close.svelte';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Affix/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Affix.demo.usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Alert/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Alert.demo.configurator.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Anchor/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Anchor.demo.usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/AppShell/_NavContent.svelte:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 | Navbar
10 |
11 | Home Page
12 | Test Page
13 |
14 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/AppShell/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './AppShell.demo.usage.svelte';
2 | export * as responsive from './AppShell.demo.responsive.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/AspectRatio/index.ts:
--------------------------------------------------------------------------------
1 | export * as image from './AspectRatio.demo.image.svelte';
2 | export * as usage from './AspectRatio.demo.usage.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Badge/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Badge.demo.configurator.svelte';
2 | export * as gradient from './Badge.demo.gradient.svelte';
3 | export * as width from './Badge.demo.width.svelte';
4 | export * as sections from './Badge.demo.sections.svelte';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Blockquote/index.ts:
--------------------------------------------------------------------------------
1 | export * as noicon from './Blockquote.demo.noicon.svelte';
2 | export * as usage from './Blockquote.demo.usage.svelte';
3 | export * as icon from './Blockquote.demo.icon.svelte';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Box/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Box.demo.usage.svelte';
2 | export * as custom from './Box.demo.custom.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Breadcrumbs/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Breadcrumbs.demo.usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Burger/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Burger.demo.usage.svelte';
2 | export * as color from './Burger.demo.color.svelte';
3 | export * as size from './Burger.demo.size.svelte';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Card/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Card.demo.usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Center/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Center.demo.usage.svelte';
2 | export * as inline from './Center.demo.inline.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Checkbox/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Checkbox.demo.configurator.svelte';
2 | export * as states from './Checkbox.demo.states.svelte';
3 | export * as icon from './Checkbox.demo.icon.svelte';
4 | export * as sizes from './Checkbox.demo.sizes.svelte';
5 | export * as indeterminate from './Checkbox.demo.indeterminate.svelte';
6 | export * as groupConfigurator from './CheckboxGroup.demo.configurator.svelte';
7 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Chip/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Chip.demo.configurator.svelte';
2 | export * as states from './Chip.demo.states.svelte';
3 | export * as group from './ChipGroup.demo.configurator.svelte';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Code/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Code.demo.usage.svelte';
2 | export * as block from './Code.demo.block.svelte';
3 | export * as color from './Code.demo.color.svelte';
4 | export * as prism from './Code.demo.prism.svelte';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Collapse/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Collapse.demo.usage.svelte';
2 | export * as transition from './Collapse.demo.transition.svelte';
3 | export * as nested from './Collapse.demo.nested.svelte';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Container/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Container.demo.usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Divider/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Divider.demo.usage.svelte';
2 | export * as label from './Divider.demo.label.svelte';
3 | export * as size from './Divider.demo.size.svelte';
4 | export * as vertical from './Divider.demo.vertical.svelte';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Flex/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Flex.demo.configurator.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Grid/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Grid.demo.usage.svelte';
2 | export * as grow from './Grid.demo.grow.svelte';
3 | export * as offset from './Grid.demo.offset.svelte';
4 | export * as rows from './Grid.demo.rows.svelte';
5 | export * as justify from './Grid.demo.justify.svelte';
6 | export * as responsive from './Grid.demo.responsive.svelte';
7 | export * as columns from './Grid.demo.columns.svelte';
8 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Group/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Group.demo.configurator.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Image/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Image.demo.usage.svelte';
2 | export * as width from './Image.demo.width.svelte';
3 | export * as placeholder from './Image.demo.placeholder.svelte';
4 | export * as caption from './Image.demo.caption.svelte';
5 | export * as radius from './Image.demo.radius.svelte';
6 | export * as background from './Image.demo.background.svelte';
7 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Input/Input.demo.sizes.svelte:
--------------------------------------------------------------------------------
1 |
7 |
8 |
11 |
12 | {#each ['xs', 'sm', 'md', 'lg', 'xl'] as size}
13 |
14 | {/each}
15 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Input/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Input.demo.configurator.svelte';
2 | export * as variants from './Input.demo.variants.svelte';
3 | export * as sections from './Input.demo.sections.svelte';
4 | export * as sizes from './Input.demo.sizes.svelte';
5 | export * as custom from './Input.demo.custom.svelte';
6 | export * as headless from './Input.demo.headless.svelte';
7 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/InputWrapper/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './InputWrapper.demo.configurator.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/JsonInput/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './JsonInput.demo.configurator.svelte';
2 | export * as validation from './JsonInput.demo.validation.svelte';
3 | export * as disabled from './JsonInput.demo.disabled.svelte';
4 | export * as icon from './JsonInput.demo.icon.svelte';
5 | export * as format from './JsonInput.demo.format.svelte';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Kbd/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Kbd.demo.usage.svelte';
2 | export * as example from './Kbd.demo.example.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Loader/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Loader.demo.usage.svelte';
2 | export * as variants from './Loader.demo.variants.svelte';
3 | export * as colors from './Loader.demo.colors.svelte';
4 | export * as size from './Loader.demo.size.svelte';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Mark/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Mark.demo.usage.svelte';
2 | export * as color from './Mark.demo.color.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/MediaQuery/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './MediaQuery.demo.usage.svelte';
2 | export * as query from './MediaQuery.demo.query.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Modal/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Modal.demo.usage.svelte';
2 | export * as header from './Modal.demo.header.svelte';
3 | export * as centered from './Modal.demo.centered.svelte';
4 | export * as sizes from './Modal.demo.sizes.svelte';
5 | export * as overlay from './Modal.demo.overlay.svelte';
6 | export * as overflow from './Modal.demo.overflow.svelte';
7 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/NativeSelect/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './NativeSelect.demo.configurator.svelte';
2 | export * as binding from './NativeSelect.demo.binding.svelte';
3 | export * as error from './NativeSelect.demo.error.svelte';
4 | export * as disabled from './NativeSelect.demo.disabled.svelte';
5 | export * as icon from './NativeSelect.demo.icon.svelte';
6 | export * as section from './NativeSelect.demo.section.svelte';
7 | export * as objects from './NativeSelect.demo.objects.svelte';
8 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Notification/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Notification.demo.usage.svelte';
2 | export * as configurator from './Notification.demo.configurator.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/ObserverRender/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './ObserverRender.demo.usage.svelte';
2 | export * as slots from './ObserverRender.demo.slots.svelte';
3 | export * as options from './ObserverRender.demo.options.svelte';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Overlay/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Overlay.demo.usage.svelte';
2 | export * as content from './Overlay.demo.content.svelte';
3 | export * as gradient from './Overlay.demo.gradient.svelte';
4 | export * as blur from './Overlay.demo.blur.svelte';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Paper/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Paper.demo.configurator.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Popper/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Popper.demo.configurator.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Progress/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Progress.demo.configurator.svelte';
2 | export * as sections from './Progress.demo.sections.svelte';
3 | export * as colors from './Progress.demo.colors.svelte';
4 | export * as label from './Progress.demo.label.svelte';
5 | export * as tween from './Progress.demo.tween.svelte';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Radio/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Radio.demo.configurator.svelte';
2 | export * as groupConfigurator from './RadioGroup.demo.configurator.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Seo/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Seo.demo.usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/SimpleGrid/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './SimpleGrid.demo.configurator.svelte';
2 | export * as breakpoints from './SimpleGrid.demo.breakpoints.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Skeleton/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Skeleton.demo.configurator.svelte';
2 | export * as content from './Skeleton.demo.content.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Space/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Space.demo.configurator.svelte';
2 | export * as configuratorW from './Space.demo.configuratorW.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Stack/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Stack.demo.configurator.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Switch/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Switch.demo.configurator.svelte';
2 | export * as inner from './Switch.demo.inner.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Tabs/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Tabs.demo.configurator.svelte';
2 | export * as icons from './Tabs.demo.icons.svelte';
3 | export * as colors from './Tabs.demo.colors.svelte';
4 | export * as position from './Tabs.demo.position.svelte';
5 | export * as component from './Tabs.demo.component.svelte';
6 | export * as override from './Tabs.demo.override.svelte';
7 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Text/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Text.demo.usage.svelte';
2 | export * as dimmed from './Text.demo.dimmed.svelte';
3 | export * as gradient from './Text.demo.gradient.svelte';
4 | export * as clamp from './Text.demo.clamp.svelte';
5 | export * as inherit from './Text.demo.inherit.svelte';
6 | export * as custom from './Text.demo.custom.svelte';
7 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/TextInput/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './TextInput.demo.configurator.svelte';
2 | export * as invalid from './TextInput.demo.invalid.svelte';
3 | export * as disabled from './TextInput.demo.disabled.svelte';
4 | export * as icon from './TextInput.demo.icon.svelte';
5 | export * as rightsection from './TextInput.demo.rightsection.svelte';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Textarea/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Textarea.demo.configurator.svelte';
2 | export * as invalid from './Textarea.demo.invalid.svelte';
3 | export * as disabled from './Textarea.demo.disabled.svelte';
4 | export * as icon from './Textarea.demo.icon.svelte';
5 | export * as rightsection from './Textarea.demo.rightsection.svelte';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/ThemeIcon/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './ThemeIcon.demo.configurator.svelte';
2 | export * as colors from './ThemeIcon.demo.colors.svelte';
3 | export * as gradient from './ThemeIcon.demo.gradient.svelte';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Timeline/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Timeline.demo.usage.svelte';
2 | export * as bullet from './Timeline.demo.bullet.svelte';
3 | export * as component from './Timeline.demo.component.svelte';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Title/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Title.demo.usage.svelte';
2 | export * as shared from './Title.demo.shared.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/Tooltip/index.ts:
--------------------------------------------------------------------------------
1 | export * as configurator from './Tooltip.demo.configurator.svelte';
2 | export * as positions from './Tooltip.demo.positions.svelte';
3 | export * as arrow from './Tooltip.demo.arrow.svelte';
4 | export * as controlled from './Tooltip.demo.controlled.svelte';
5 | export * as multiline from './Tooltip.demo.multiline.svelte';
6 | export * as delay from './Tooltip.demo.delay.svelte';
7 | export * as pointer from './Tooltip.demo.pointer.svelte';
8 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/TypographyProvider/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './TypographyProvider.demo.usage.svelte';
2 | export * as all from './TypographyProvider.demo.all.svelte';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/core/UnstyledButton/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './UnstyledButton.demo.usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/createStyles/index.ts:
--------------------------------------------------------------------------------
1 | export * as basic from './CreateStyles.demo.basic.svelte';
2 | export * as cx from './CreateStyles.demo.cx.svelte';
3 | export * as params from './CreateStyles.demo.params.svelte';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/dates/Month/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Month.demo.usage.svelte';
2 | export * as localization from './Month.demo.localization.svelte';
3 | export * as firstDaySunday from './Month.demo.firstDaySunday.svelte';
4 | export * as boundaries from './Month.demo.boundaries.svelte';
5 | export * as exclude from './Month.demo.exclude.svelte';
6 | export * as range from './Month.demo.range.svelte';
7 | export * as weekdays from './Month.demo.weekdays.svelte';
8 | export * as weekendDays from './Month.demo.weekendDays.svelte';
9 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/dates/placeholder.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/svelteuidev/svelteui/1538d71a11a969b0c827722fc1e65afc206dc2c8/packages/svelteui-demos/src/demos/dates/placeholder.txt
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/misc/contributing/index.ts:
--------------------------------------------------------------------------------
1 | export * as tree from './tree.demo.example.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/misc/index.ts:
--------------------------------------------------------------------------------
1 | export * as contributing from './contributing';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/motion/flipboard/index.ts:
--------------------------------------------------------------------------------
1 | export * as flipboardDemo from './usage.configurator.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/motion/index.ts:
--------------------------------------------------------------------------------
1 | export * from './typewriter';
2 | export * from './flipboard';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/motion/typewriter/index.ts:
--------------------------------------------------------------------------------
1 | export * as typewriterDemo from './usage.configurator.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/preprocessors/placeholder.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/svelteuidev/svelteui/1538d71a11a969b0c827722fc1e65afc206dc2c8/packages/svelteui-demos/src/demos/preprocessors/placeholder.txt
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/preprocessors/view-source/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './usage.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/preprocessors/view-source/usage.svelte:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/svelteuidev/svelteui/1538d71a11a969b0c827722fc1e65afc206dc2c8/packages/svelteui-demos/src/demos/preprocessors/view-source/usage.svelte
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/prism/index.ts:
--------------------------------------------------------------------------------
1 | export * as usage from './Prism.demo.usage.svelte';
2 | export * as lineNumbers from './Prism.demo.lineNumbers.svelte';
3 | export * as lineHighlight from './Prism.demo.lineHighlight.svelte';
4 | export * as copy from './Prism.demo.copy.svelte';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/demos/theme/index.ts:
--------------------------------------------------------------------------------
1 | export * as defaultTheme from './DefaultTheme.demo.basic.svelte';
2 | export * as darkTheme from './DarkTheme.demo.basic.svelte';
3 | export * as override from './Override.demo.basic.svelte';
4 | export * as utilities from './ThemeUtilities.demo.basic.svelte';
5 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/utils/index.ts:
--------------------------------------------------------------------------------
1 | export * from './upper-first';
2 | export * from './props-to-string';
3 | export * from './is-enabled';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/src/utils/upper-first.ts:
--------------------------------------------------------------------------------
1 | export function upperFirst(value: string): string {
2 | return typeof value !== 'string' ? '' : value.charAt(0).toUpperCase() + value.slice(1);
3 | }
4 |
--------------------------------------------------------------------------------
/packages/svelteui-demos/vite.config.js:
--------------------------------------------------------------------------------
1 | import { sveltekit } from '@sveltejs/kit/vite';
2 |
3 | /** @type {import('vite').UserConfig} */
4 | const config = {
5 | plugins: [sveltekit()],
6 | optimizeDeps: {
7 | exclude: ['radix-icons-svelte']
8 | }
9 | };
10 |
11 | export default config;
12 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/.eslintignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 | # Ignore files for PNPM, NPM and YARN
12 | pnpm-lock.yaml
13 | package-lock.json
14 | yarn.lock
15 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | extends: ['../../configuration/eslint-preset-svelteui'],
3 | rules: {}
4 | };
5 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/.npmignore:
--------------------------------------------------------------------------------
1 | *.test.*
2 | *.stories.svelte
--------------------------------------------------------------------------------
/packages/svelteui-motion/.npmrc:
--------------------------------------------------------------------------------
1 | engine-strict=true
2 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/.prettierignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 |
12 | # Ignore files for PNPM, NPM and YARN
13 | pnpm-lock.yaml
14 | package-lock.json
15 | yarn.lock
16 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": true,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "printWidth": 100
6 | }
7 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/animations/Animation/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Animation } from './Animation.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/animations/Motion/index.ts:
--------------------------------------------------------------------------------
1 | export {};
2 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/animations/TextAnimation/index.ts:
--------------------------------------------------------------------------------
1 | export { default as TextAnimation } from './TextAnimation.svelte';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/animations/index.ts:
--------------------------------------------------------------------------------
1 | export * from './Animation/index.js';
2 | export * from './TextAnimation/index.js';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/animations/types/index.ts:
--------------------------------------------------------------------------------
1 | export type { Animations, EasingOptions, TextAnimations, Iterations, Gradient } from './Animations';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from './animations/index.js';
2 | export * from './transitions/index.js';
3 |
4 | import type {} from './animations/types';
5 | import type { DefaultParams } from './transitions/types';
6 | export type { DefaultParams };
7 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/transitions/flipboard/flipboard.config.ts:
--------------------------------------------------------------------------------
1 | import type { EasingFunction } from 'svelte/types/runtime/transition';
2 |
3 | export interface FlipboardParams {
4 | delay?: number;
5 | duration?: number;
6 | easing?: EasingFunction;
7 | css?: (t: number, u: number) => string;
8 | tick?: (t: number, u: number) => void;
9 | }
10 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/transitions/flipboard/index.ts:
--------------------------------------------------------------------------------
1 | export { flipboard } from './flipboard.js';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/transitions/index.ts:
--------------------------------------------------------------------------------
1 | export * from './flipboard/index.js';
2 | export * from './typewriter/index.js';
3 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/transitions/types/DefaultParams.ts:
--------------------------------------------------------------------------------
1 | export interface DefaultParams {
2 | temp: never;
3 | }
4 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/transitions/types/index.ts:
--------------------------------------------------------------------------------
1 | import type { DefaultParams } from './DefaultParams';
2 | export type { DefaultParams };
3 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/transitions/typewriter/index.ts:
--------------------------------------------------------------------------------
1 | export { typewriter } from './typewriter.js';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/src/transitions/typewriter/typewriter.config.ts:
--------------------------------------------------------------------------------
1 | import type { EasingFunction } from 'svelte/types/runtime/transition';
2 |
3 | export interface TypewriterParams {
4 | speed?: number;
5 | easing?: EasingFunction;
6 | }
7 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/svelte.config.js:
--------------------------------------------------------------------------------
1 | import preprocess from 'svelte-preprocess';
2 |
3 | /** @type {import('@sveltejs/kit').Config} */
4 | const config = {
5 | // Consult https://github.com/sveltejs/svelte-preprocess
6 | // for more information about preprocessors
7 | preprocess: preprocess(),
8 | kit: {
9 | files: {
10 | lib: 'src'
11 | }
12 | }
13 | };
14 |
15 | export default config;
16 |
--------------------------------------------------------------------------------
/packages/svelteui-motion/vite.config.js:
--------------------------------------------------------------------------------
1 | import { sveltekit } from '@sveltejs/kit/vite';
2 |
3 | /** @type {import('vite').UserConfig} */
4 | const config = {
5 | plugins: [sveltekit()]
6 | };
7 |
8 | export default config;
9 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/.eslintignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 | # Ignore files for PNPM, NPM and YARN
12 | pnpm-lock.yaml
13 | package-lock.json
14 | yarn.lock
15 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | extends: ['../../configuration/eslint-preset-svelteui'],
3 | rules: {}
4 | };
5 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/.npmignore:
--------------------------------------------------------------------------------
1 | *.test.*
2 | *.stories.svelte
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/.npmrc:
--------------------------------------------------------------------------------
1 | engine-strict=true
2 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/.prettierignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 |
12 | # Ignore files for PNPM, NPM and YARN
13 | pnpm-lock.yaml
14 | package-lock.json
15 | yarn.lock
16 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": true,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "printWidth": 100
6 | }
7 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/src/SourceCode/DisplaySourceCode.svelte:
--------------------------------------------------------------------------------
1 |
9 |
10 | {source}
11 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/src/SourceCode/SourceCode.svelte:
--------------------------------------------------------------------------------
1 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/src/SourceCode/index.ts:
--------------------------------------------------------------------------------
1 | export { default as DisplaySourceCode } from './DisplaySourceCode.svelte';
2 | export { default as SourceCode } from './SourceCode.svelte';
3 | export { default as viewSource } from './preprocess';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/src/SourceCode/types.ts:
--------------------------------------------------------------------------------
1 | export interface PreprocessOptions {
2 | sourceTagName?: string;
3 | displayTagName?: string;
4 | }
5 |
6 | export interface ParsedPair {
7 | foundSource: boolean;
8 | foundDisplay: boolean;
9 | displayNodesStart: Array; // allow multiple displays of the same source
10 | content: string;
11 | }
12 |
13 | export interface ParsedPairs extends Record {
14 | never?: never;
15 | }
16 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from './preprocessors/SourceCode';
2 | export * from './utils';
3 |
4 | /** Type Exports */
5 | export type { Node, Ast } from './types';
6 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/src/types.ts:
--------------------------------------------------------------------------------
1 | import type { Ast } from 'svelte/types/compiler/interfaces';
2 |
3 | interface Node {
4 | start: number;
5 | end: number;
6 | type: string;
7 | name: string;
8 | raw?: string;
9 | data?: string;
10 | attributes?: Array>;
11 | children?: any;
12 | // children?: Node[];
13 | }
14 |
15 | export type { Node, Ast };
16 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/src/utils/index.ts:
--------------------------------------------------------------------------------
1 | export {};
2 |
--------------------------------------------------------------------------------
/packages/svelteui-preprocessors/vite.config.js:
--------------------------------------------------------------------------------
1 | import { sveltekit } from '@sveltejs/kit/vite';
2 |
3 | /** @type {import('vite').UserConfig} */
4 | const config = {
5 | plugins: [sveltekit()]
6 | };
7 |
8 | export default config;
9 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/.eslintignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 | # Ignore files for PNPM, NPM and YARN
12 | pnpm-lock.yaml
13 | package-lock.json
14 | yarn.lock
15 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | extends: ['../../configuration/eslint-preset-svelteui'],
3 | rules: {}
4 | };
5 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/.npmignore:
--------------------------------------------------------------------------------
1 | *.test.*
2 | *.stories.svelte
--------------------------------------------------------------------------------
/packages/svelteui-prism/.npmrc:
--------------------------------------------------------------------------------
1 | engine-strict=true
2 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/.prettierignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 |
12 | # Ignore files for PNPM, NPM and YARN
13 | pnpm-lock.yaml
14 | package-lock.json
15 | yarn.lock
16 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": true,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "printWidth": 100
6 | }
7 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/src/Prism/Prism.config.ts:
--------------------------------------------------------------------------------
1 | import type { WhiteSpaceConfig } from './Prism.styles';
2 |
3 | const config: WhiteSpaceConfig = {
4 | 'remove-trailing': true,
5 | 'remove-indent': true,
6 | 'left-trim': true,
7 | 'right-trim': true,
8 | 'break-lines': 80,
9 | 'remove-initial-line-feed': false,
10 | 'tabs-to-spaces': 4,
11 | 'spaces-to-tabs': 4
12 | };
13 |
14 | export { config };
15 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/src/Prism/index.ts:
--------------------------------------------------------------------------------
1 | export { default as Prism } from './Prism.svelte';
2 | export { PrismErrors } from './Prism.errors';
3 | export * as PrismStyles from './Prism.styles';
4 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/src/index.ts:
--------------------------------------------------------------------------------
1 | export * from './Prism';
2 |
3 | /** Type exports */
4 | import type { PrismTheme } from './types';
5 | export type { PrismTheme };
6 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/src/types/PrismTheme.ts:
--------------------------------------------------------------------------------
1 | export type PrismTheme =
2 | | 'light'
3 | | 'dark'
4 | | 'funky'
5 | | 'okaidia'
6 | | 'twilight'
7 | | 'coy'
8 | | 'solarized'
9 | | 'tomorrow';
10 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/src/types/index.d.ts:
--------------------------------------------------------------------------------
1 | export type { PrismTheme } from './PrismTheme';
2 |
3 | declare global {
4 | interface Window {
5 | Prism;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/svelte.config.js:
--------------------------------------------------------------------------------
1 | import preprocess from 'svelte-preprocess';
2 | import fs from 'fs';
3 | export const pkg = JSON.parse(fs.readFileSync(new URL('package.json', import.meta.url), 'utf8'));
4 |
5 | /** @type {import('@sveltejs/kit').Config} */
6 | const config = {
7 | preprocess: preprocess(),
8 | kit: {
9 | files: {
10 | lib: 'src'
11 | }
12 | }
13 | };
14 |
15 | export default config;
16 |
--------------------------------------------------------------------------------
/packages/svelteui-prism/vite.config.js:
--------------------------------------------------------------------------------
1 | import { sveltekit } from '@sveltejs/kit/vite';
2 |
3 | /** @type {import('vite').UserConfig} */
4 | const config = {
5 | plugins: [sveltekit()],
6 | optimizeDeps: {
7 | exclude: ['radix-icons-svelte']
8 | }
9 | };
10 |
11 | export default config;
12 |
--------------------------------------------------------------------------------
/packages/svelteui-tests/.eslintignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | .env
7 | .env.*
8 | !.env.example
9 |
10 | # Ignore files for PNPM, NPM and YARN
11 | pnpm-lock.yaml
12 | package-lock.json
13 | yarn.lock
14 |
--------------------------------------------------------------------------------
/packages/svelteui-tests/.eslintrc.cjs:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | extends: ['../../configuration/eslint-preset-svelteui'],
3 | rules: {}
4 | };
5 |
--------------------------------------------------------------------------------
/packages/svelteui-tests/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
--------------------------------------------------------------------------------
/packages/svelteui-tests/.npmignore:
--------------------------------------------------------------------------------
1 | *.test.*
2 | *.stories.svelte
--------------------------------------------------------------------------------
/packages/svelteui-tests/.npmrc:
--------------------------------------------------------------------------------
1 | engine-strict=true
2 |
--------------------------------------------------------------------------------
/packages/svelteui-tests/.prettierignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /build
4 | /.svelte-kit
5 | /package
6 | /dist
7 | .env
8 | .env.*
9 | !.env.example
10 |
11 | # Ignore files for PNPM, NPM and YARN
12 | pnpm-lock.yaml
13 | package-lock.json
14 | yarn.lock
15 |
--------------------------------------------------------------------------------
/packages/svelteui-tests/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": true,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "printWidth": 100
6 | }
7 |
--------------------------------------------------------------------------------
/packages/svelteui-tests/src/index.ts:
--------------------------------------------------------------------------------
1 | export { itSupportsClassName } from './it-supports-classname';
2 |
--------------------------------------------------------------------------------
/packages/svelteui-tests/vite.config.js:
--------------------------------------------------------------------------------
1 | import { sveltekit } from '@sveltejs/kit/vite';
2 |
3 | /** @type {import('vite').UserConfig} */
4 | const config = {
5 | plugins: [sveltekit()]
6 | };
7 |
8 | export default config;
9 |
--------------------------------------------------------------------------------
/scripts/README.md:
--------------------------------------------------------------------------------
1 | # Scripts for use throughout the repo
2 |
3 | Will need scripts for a better workflow as time goes on.
4 |
5 | > Scripts will be written with Deno as the runtime rather than Node.
6 |
7 | ## TO DO:
8 |
9 | - Release - this script will create a better workflow for future releases
10 |
11 | - Docs Generate - this script will generate the specified apis automatically using [vite-plugin-svled](https://github.com/mattjennings/vite-plugin-sveld)
12 |
--------------------------------------------------------------------------------
/scripts/git/discard.sh:
--------------------------------------------------------------------------------
1 | git clean -fd
2 | git checkout -- .
--------------------------------------------------------------------------------
/scripts/git/rebase-branches.sh:
--------------------------------------------------------------------------------
1 | git checkout main
2 | git pull
3 |
4 | git checkout next-minor
5 | git rebase main
6 | git push
7 |
8 | git checkout experimental
9 | git rebase main
10 | git push
--------------------------------------------------------------------------------
/scripts/git/sync-branches.sh:
--------------------------------------------------------------------------------
1 | git checkout main
2 | git pull
3 |
4 | git checkout next-minor
5 | git pull
6 | git merge main
7 | git push
8 |
9 | git checkout experimental
10 | git pull
11 | git merge next-minor
12 | git push
--------------------------------------------------------------------------------
/scripts/git/update-branches.sh:
--------------------------------------------------------------------------------
1 | git checkout main
2 | git pull
3 | git checkout next-minor
4 | git pull
5 | git checkout experimental
6 | git pull
7 | git checkout main
--------------------------------------------------------------------------------
/scripts/test-script.ts:
--------------------------------------------------------------------------------
1 | /* eslint-disable @typescript-eslint/no-unused-vars */
2 | import * as _fsPro from 'https://deno.land/x/fs_pro@3.10.0/mod.ts';
3 | const _link = 'https://alibasiccoder.github.io/fs-pro/classes/_dir_.dir.html#path';
4 |
--------------------------------------------------------------------------------
/scripts/types/index.ts:
--------------------------------------------------------------------------------
1 | export type Packages = 'core' | 'actions' | 'motion' | 'utilities' | 'prism' | 'demos';
2 |
--------------------------------------------------------------------------------