Skip to content

Commit 5893f3e

Browse files
committed
refactor: improve component type definitions
1 parent 7d2e862 commit 5893f3e

File tree

144 files changed

+652
-408
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

144 files changed

+652
-408
lines changed

packages/accordion/src/Accordion.types.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import type { SmuiComponentDev } from '@smui/common';
1+
import type { ComponentProps } from 'svelte';
2+
import type { SmuiComponent } from '@smui/common';
23
import type Component from './Accordion.svelte';
34

45
export declare class AccordionComponentDev
56
extends Component
6-
implements SmuiComponentDev
7+
implements SmuiComponent
78
{
89
/**
910
* @private
@@ -15,7 +16,7 @@ export declare class AccordionComponentDev
1516
Partial<svelte.JSX.HTMLAttributes<HTMLDivElement>>,
1617
'use' | 'class' | 'multiple'
1718
> &
18-
Component['$$prop_def'];
19+
ComponentProps<Component>;
1920

2021
getElement(): ReturnType<Component['getElement']>;
2122
}

packages/accordion/src/Header.types.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import type { SmuiComponentDev } from '@smui/common';
1+
import type { ComponentProps } from 'svelte';
2+
import type { SmuiComponent } from '@smui/common';
23
import type Component from './Header.svelte';
34

45
export declare class HeaderComponentDev
56
extends Component
6-
implements SmuiComponentDev
7+
implements SmuiComponent
78
{
89
/**
910
* @private
@@ -15,7 +16,7 @@ export declare class HeaderComponentDev
1516
Partial<svelte.JSX.HTMLAttributes<HTMLDivElement>>,
1617
'use' | 'class' | 'style' | 'ripple'
1718
> &
18-
Component['$$prop_def'];
19+
ComponentProps<Component>;
1920

2021
getElement(): ReturnType<Component['getElement']>;
2122
}

packages/accordion/src/Panel.types.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
import type { SmuiComponentDev } from '@smui/common';
1+
import type { ComponentProps } from 'svelte';
2+
import type { SmuiComponent } from '@smui/common';
23
import type { PaperComponentDev } from '@smui/paper';
34
import type Component from './Panel.svelte';
45

56
export declare class PanelComponentDev
67
extends Component
7-
implements SmuiComponentDev
8+
implements SmuiComponent
89
{
910
/**
1011
* @private
@@ -25,7 +26,7 @@ export declare class PanelComponentDev
2526
| 'extend'
2627
| 'extendedElevation'
2728
> &
28-
Component['$$prop_def'];
29+
ComponentProps<Component>;
2930

3031
getElement(): ReturnType<Component['getElement']>;
3132
}

packages/accordion/src/index.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,21 @@
1+
import type { ComponentType } from 'svelte';
2+
13
import Accordion from './Accordion.svelte';
24
import type { AccordionComponentDev } from './Accordion.types.js';
35
export * from './Accordion.types.js';
46

57
import PanelComponent from './Panel.svelte';
68
import type { PanelComponentDev } from './Panel.types.js';
79
export * from './Panel.types.js';
8-
const Panel = PanelComponent as typeof PanelComponentDev;
10+
const Panel = PanelComponent as ComponentType<PanelComponentDev>;
911

1012
import HeaderComponent from './Header.svelte';
1113
import type { HeaderComponentDev } from './Header.types.js';
1214
export * from './Header.types.js';
13-
const Header = HeaderComponent as typeof HeaderComponentDev;
15+
const Header = HeaderComponent as ComponentType<HeaderComponentDev>;
1416

1517
import { Content } from '@smui/paper';
1618

17-
export default Accordion as typeof AccordionComponentDev;
19+
export default Accordion as ComponentType<AccordionComponentDev>;
1820

1921
export { Panel, Header, Content };

packages/autocomplete/src/Autocomplete.types.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
1-
import type { SmuiComponentDev } from '@smui/common';
1+
import type { ComponentProps } from 'svelte';
2+
import type { SmuiComponent } from '@smui/common';
23
import type { MenuComponentDev } from '@smui/menu';
34
import type { TextfieldComponentDev } from '@smui/textfield';
45
import type { ListComponentDev } from '@smui/list';
56
import type Component from './Autocomplete.svelte';
67

78
export declare class AutocompleteComponentDev
89
extends Component
9-
implements SmuiComponentDev
10+
implements SmuiComponent
1011
{
1112
/**
1213
* @private
@@ -41,7 +42,7 @@ export declare class AutocompleteComponentDev
4142
} & {
4243
textfield$label?: never;
4344
textfield$value?: never;
44-
} & Component['$$prop_def'];
45+
} & ComponentProps<Component>;
4546

4647
getElement(): ReturnType<Component['getElement']>;
4748
}

packages/autocomplete/src/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1+
import type { ComponentType } from 'svelte';
2+
13
import Autocomplete from './Autocomplete.svelte';
24
import type { AutocompleteComponentDev } from './Autocomplete.types.js';
35
export * from './Autocomplete.types.js';
46

5-
export default Autocomplete as typeof AutocompleteComponentDev;
7+
export default Autocomplete as ComponentType<AutocompleteComponentDev>;

packages/badge/src/Badge.types.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import type { SmuiComponentDev } from '@smui/common';
1+
import type { ComponentProps } from 'svelte';
2+
import type { SmuiComponent } from '@smui/common';
23
import type Component from './Badge.svelte';
34

45
export declare class BadgeComponentDev
56
extends Component
6-
implements SmuiComponentDev
7+
implements SmuiComponent
78
{
89
/**
910
* @private
@@ -15,7 +16,7 @@ export declare class BadgeComponentDev
1516
Partial<svelte.JSX.HTMLAttributes<HTMLSpanElement>>,
1617
'use' | 'class' | 'square' | 'color' | 'position' | 'align'
1718
> &
18-
Component['$$prop_def'];
19+
ComponentProps<Component>;
1920

2021
getElement(): ReturnType<Component['getElement']>;
2122
}

packages/badge/src/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1+
import type { ComponentType } from 'svelte';
2+
13
import Badge from './Badge.svelte';
24
import type { BadgeComponentDev } from './Badge.types.js';
35
export * from './Badge.types.js';
46

5-
export default Badge as typeof BadgeComponentDev;
7+
export default Badge as ComponentType<BadgeComponentDev>;

packages/banner/src/Banner.types.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import type { SmuiComponentDev } from '@smui/common';
1+
import type { ComponentProps } from 'svelte';
2+
import type { SmuiComponent } from '@smui/common';
23
import type Component from './Banner.svelte';
34

45
export declare class BannerComponentDev
56
extends Component
6-
implements SmuiComponentDev
7+
implements SmuiComponent
78
{
89
/**
910
* @private
@@ -32,7 +33,7 @@ export declare class BannerComponentDev
3233
> as `graphic\$${k}`]?: Partial<
3334
svelte.JSX.HTMLAttributes<HTMLDivElement>
3435
>[k];
35-
} & Component['$$prop_def'];
36+
} & ComponentProps<Component>;
3637

3738
getElement(): ReturnType<Component['getElement']>;
3839
}

packages/banner/src/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
1+
import type { ComponentType } from 'svelte';
2+
13
import Banner from './Banner.svelte';
24
import type { BannerComponentDev } from './Banner.types.js';
35
export * from './Banner.types.js';
46

57
import { Label, Icon } from '@smui/common';
68

7-
export default Banner as typeof BannerComponentDev;
9+
export default Banner as ComponentType<BannerComponentDev>;
810

911
export { Label, Icon };

0 commit comments

Comments
 (0)