Skip to content

Commit 347800b

Browse files
committed
🏷️ Use Svelte specific types for components
1 parent 7245323 commit 347800b

File tree

9 files changed

+59
-36
lines changed

9 files changed

+59
-36
lines changed

scripts/buildTypes.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,11 @@ const buildTypes = type => {
2323
const getTypeName = component => {
2424
const componentsWithSvelteSpecificTypes = [
2525
'Badge',
26-
'Button'
26+
'Button',
27+
'Checkbox',
28+
'Input',
29+
'Radio',
30+
'Switch'
2731
]
2832

2933
return componentsWithSvelteSpecificTypes.includes(component)

src/components/Checkbox/Checkbox.svelte

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
<script lang="ts">
2-
import type { CheckboxProps } from './checkbox'
2+
import type { SvelteCheckboxProps } from './checkbox'
33
import ConditionalWrapper from '../ConditionalWrapper/ConditionalWrapper.svelte'
44
55
import check from '../../icons/check.svg?raw'
66
77
import styles from './checkbox.module.scss'
88
import { classNames } from '../../utils/classNames'
99
10-
export let checked: CheckboxProps['checked'] = false
11-
export let label: CheckboxProps['label'] = ''
12-
export let subText: CheckboxProps['subText'] = ''
13-
export let disabled: CheckboxProps['disabled'] = false
14-
export let boxed: CheckboxProps['boxed'] = false
15-
export let color: CheckboxProps['color'] = ''
16-
export let onClick: () => any = () => {}
10+
export let checked: SvelteCheckboxProps['checked'] = false
11+
export let label: SvelteCheckboxProps['label'] = ''
12+
export let subText: SvelteCheckboxProps['subText'] = ''
13+
export let disabled: SvelteCheckboxProps['disabled'] = false
14+
export let boxed: SvelteCheckboxProps['boxed'] = false
15+
export let color: SvelteCheckboxProps['color'] = ''
16+
export let onClick: SvelteCheckboxProps['onClick'] = () => {}
1717
1818
const classes = classNames([
1919
styles.checkbox,

src/components/Checkbox/checkbox.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ export type CheckboxProps = {
77
color?: string
88
}
99

10+
export type SvelteCheckboxProps = {
11+
onClick?: (key: any) => any
12+
} & CheckboxProps
13+
1014
export type ReactCheckboxProps = {
1115
onClick?: (key: any) => any
1216
} & CheckboxProps

src/components/Input/Input.svelte

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
<script lang="ts">
2-
import type { InputProps } from './input'
2+
import type { SvelteInputProps } from './input'
33
import ConditionalWrapper from '../ConditionalWrapper/ConditionalWrapper.svelte'
44
55
import styles from './input.module.scss'
66
import { classNames } from '../../utils/classNames'
77
8-
export let type: InputProps['type'] = 'text'
9-
export let theme: InputProps['theme'] = null
10-
export let label: InputProps['label'] = ''
11-
export let subText: InputProps['subText'] = ''
12-
export let fill: InputProps['fill'] = false
13-
export let className: InputProps['className'] = ''
14-
export let onChange: (e: any) => any = () => {}
15-
export let onKeyUp: (e: any) => any = () => {}
8+
export let type: SvelteInputProps['type'] = 'text'
9+
export let theme: SvelteInputProps['theme'] = null
10+
export let label: SvelteInputProps['label'] = ''
11+
export let subText: SvelteInputProps['subText'] = ''
12+
export let fill: SvelteInputProps['fill'] = false
13+
export let className: SvelteInputProps['className'] = ''
14+
export let onChange: SvelteInputProps['onChange'] = () => {}
15+
export let onKeyUp: SvelteInputProps['onKeyUp'] = () => {}
1616
1717
const classes = classNames([
1818
styles.input,

src/components/Input/input.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,14 @@ export type InputProps = {
3838
[key: string]: any
3939
}
4040

41+
export type SvelteInputProps = {
42+
onChange?: (e: any) => any
43+
onKeyUp?: (e: any) => any
44+
} & InputProps
45+
4146
export type ReactInputProps = {
47+
onChange?: (e: any) => any
48+
onKeyUp?: (e: any) => any
4249
icon?: string
4350
children?: React.ReactNode
4451
} & InputProps

src/components/Radio/Radio.svelte

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
<script lang="ts">
2-
import type { RadioProps } from './radio'
2+
import type { SvelteRadioProps } from './radio'
33
import ConditionalWrapper from '../ConditionalWrapper/ConditionalWrapper.svelte'
44
55
import styles from './radio.module.scss'
66
import { classNames } from '../../utils/classNames'
77
8-
export let name: RadioProps['name'] = ''
9-
export let items: RadioProps['items'] = []
10-
export let color: RadioProps['color'] = ''
11-
export let inline: RadioProps['inline'] = false
12-
export let className: RadioProps['className'] = ''
13-
export let onChange: () => any = () => {}
8+
export let name: SvelteRadioProps['name'] = ''
9+
export let items: SvelteRadioProps['items'] = []
10+
export let color: SvelteRadioProps['color'] = ''
11+
export let inline: SvelteRadioProps['inline'] = false
12+
export let className: SvelteRadioProps['className'] = ''
13+
export let onChange: SvelteRadioProps['onChange'] = () => {}
1414
1515
const classes = classNames([
1616
styles.radio,

src/components/Radio/radio.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ export type RadioProps = {
1212
className?: string
1313
}
1414

15+
export type SvelteRadioProps = {
16+
onChange?: (key: any) => any
17+
} & RadioProps
18+
1519
export type ReactRadioProps = {
1620
onChange?: (key: any) => any
1721
} & RadioProps

src/components/Switch/Switch.svelte

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
<script lang="ts">
2-
import type { SwitchProps } from './switch'
2+
import type { SvelteSwitchProps } from './switch'
33
44
import styles from './switch.module.scss'
55
import { classNames } from '../../utils/classNames'
66
7-
export let label: SwitchProps['label'] = ''
8-
export let toggled: SwitchProps['toggled'] = false
9-
export let offColor: SwitchProps['offColor'] = ''
10-
export let onColor: SwitchProps['onColor'] = ''
11-
export let reverse: SwitchProps['reverse'] = false
12-
export let small: SwitchProps['small'] = false
13-
export let square: SwitchProps['square'] = false
14-
export let disabled: SwitchProps['disabled'] = false
15-
export let className: SwitchProps['className'] = ''
16-
export let onClick: () => any = () => {}
7+
export let label: SvelteSwitchProps['label'] = ''
8+
export let toggled: SvelteSwitchProps['toggled'] = false
9+
export let offColor: SvelteSwitchProps['offColor'] = ''
10+
export let onColor: SvelteSwitchProps['onColor'] = ''
11+
export let reverse: SvelteSwitchProps['reverse'] = false
12+
export let small: SvelteSwitchProps['small'] = false
13+
export let square: SvelteSwitchProps['square'] = false
14+
export let disabled: SvelteSwitchProps['disabled'] = false
15+
export let className: SvelteSwitchProps['className'] = ''
16+
export let onClick: SvelteSwitchProps['onClick'] = () => {}
1717
1818
const classes = classNames([
1919
styles.switch,

src/components/Switch/switch.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ export type SwitchProps = {
1010
className?: string
1111
}
1212

13+
export type SvelteSwitchProps = {
14+
onClick?: (key: any) => any
15+
} & SwitchProps
16+
1317
export type ReactSwitchProps = {
1418
onClick?: (key: any) => any
1519
} & SwitchProps

0 commit comments

Comments
 (0)