@sakura-ui/sakura-ui 0.0.15 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -7
- package/package.json +3 -3
- package/packages/{react → core}/package.json +3 -3
- package/packages/{react → core}/src/components/Button.tsx +2 -2
- package/packages/{react → core}/src/components/Card.tsx +2 -2
- package/packages/{react → core}/src/components/Code.tsx +2 -2
- package/packages/{react → core}/src/components/Heading.tsx +18 -18
- package/packages/{react → core}/src/components/Icon.tsx +2 -2
- package/packages/{react → core}/src/components/IconButton.tsx +2 -2
- package/packages/{react → core}/src/components/InfoCard.tsx +4 -4
- package/packages/{react → core}/src/components/Link.tsx +6 -6
- package/packages/{react → core}/src/components/List.tsx +4 -4
- package/packages/{react → core}/src/components/Pre.tsx +2 -2
- package/packages/{react → core}/src/components/Table.tsx +14 -14
- package/packages/core/tsconfig.json +11 -0
- package/packages/forms/coverage/clover.xml +209 -0
- package/packages/forms/coverage/coverage-final.json +18 -0
- package/packages/forms/coverage/lcov-report/base.css +224 -0
- package/packages/forms/coverage/lcov-report/block-navigation.js +87 -0
- package/packages/forms/coverage/lcov-report/favicon.png +0 -0
- package/packages/forms/coverage/lcov-report/index.html +161 -0
- package/packages/forms/coverage/lcov-report/prettify.css +1 -0
- package/packages/forms/coverage/lcov-report/prettify.js +2 -0
- package/packages/forms/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/packages/forms/coverage/lcov-report/sorter.js +196 -0
- package/packages/forms/coverage/lcov-report/src/components/Checkbox.tsx.html +295 -0
- package/packages/forms/coverage/lcov-report/src/components/FieldsetControl.tsx.html +295 -0
- package/packages/forms/coverage/lcov-report/src/components/LabelControl.tsx.html +289 -0
- package/packages/forms/coverage/lcov-report/src/components/Radio.tsx.html +262 -0
- package/packages/forms/coverage/lcov-report/src/components/Select.tsx.html +253 -0
- package/packages/forms/coverage/lcov-report/src/components/Text.tsx.html +217 -0
- package/packages/forms/coverage/lcov-report/src/components/Textarea.tsx.html +226 -0
- package/packages/forms/coverage/lcov-report/src/components/context.ts.html +133 -0
- package/packages/forms/coverage/lcov-report/src/components/controlled/CheckboxGroup.tsx.html +244 -0
- package/packages/forms/coverage/lcov-report/src/components/controlled/RadioGroup.tsx.html +265 -0
- package/packages/forms/coverage/lcov-report/src/components/controlled/SelectControl.tsx.html +205 -0
- package/packages/forms/coverage/lcov-report/src/components/controlled/TextControl.tsx.html +202 -0
- package/packages/forms/coverage/lcov-report/src/components/controlled/TextareaControl.tsx.html +205 -0
- package/packages/forms/coverage/lcov-report/src/components/controlled/index.html +191 -0
- package/packages/forms/coverage/lcov-report/src/components/controlled/index.ts.html +100 -0
- package/packages/forms/coverage/lcov-report/src/components/index.html +236 -0
- package/packages/forms/coverage/lcov-report/src/components/index.ts.html +106 -0
- package/packages/forms/coverage/lcov-report/src/index.html +116 -0
- package/packages/forms/coverage/lcov-report/src/index.ts.html +136 -0
- package/packages/forms/coverage/lcov-report/src/utils/index.html +116 -0
- package/packages/forms/coverage/lcov-report/src/utils/index.ts.html +88 -0
- package/packages/forms/coverage/lcov.info +426 -0
- package/packages/forms/dist/index.cjs.js +24 -27
- package/packages/forms/dist/index.cjs.js.map +1 -1
- package/packages/forms/dist/index.es.js +605 -378
- package/packages/forms/dist/index.es.js.map +1 -1
- package/packages/forms/jest.config.ts +14 -0
- package/packages/forms/node_modules/.bin/ts-jest +2 -2
- package/packages/forms/package.json +6 -1
- package/packages/forms/src/components/Checkbox.tsx +31 -13
- package/packages/forms/src/components/FieldsetControl.tsx +70 -0
- package/packages/forms/src/components/LabelControl.tsx +65 -0
- package/packages/forms/src/components/Radio.tsx +24 -7
- package/packages/forms/src/components/Select.tsx +24 -25
- package/packages/forms/src/components/Text.tsx +15 -21
- package/packages/forms/src/components/Textarea.tsx +19 -20
- package/packages/forms/src/components/context.ts +16 -0
- package/packages/forms/src/components/controlled/CheckboxGroup.tsx +53 -0
- package/packages/forms/src/components/controlled/RadioGroup.tsx +60 -0
- package/packages/forms/src/components/controlled/SelectControl.tsx +40 -0
- package/packages/forms/src/components/controlled/TextControl.tsx +39 -0
- package/packages/forms/src/components/controlled/TextareaControl.tsx +40 -0
- package/packages/forms/src/components/controlled/index.ts +5 -0
- package/packages/forms/src/components/index.ts +2 -2
- package/packages/forms/src/index.ts +11 -3
- package/packages/forms/tests/FieldsetControl.test.tsx +54 -0
- package/packages/forms/tests/LabelControl.test.tsx +50 -0
- package/packages/forms/tests/Radio.test.tsx +99 -0
- package/packages/forms/tests/Text.test.tsx +96 -0
- package/packages/forms/tsconfig.json +1 -17
- package/packages/forms/dist/components/Checkbox.d.ts +0 -5
- package/packages/forms/dist/components/Checkbox.d.ts.map +0 -1
- package/packages/forms/dist/components/CheckboxGroup.d.ts +0 -9
- package/packages/forms/dist/components/CheckboxGroup.d.ts.map +0 -1
- package/packages/forms/dist/components/InputItem.d.ts +0 -5
- package/packages/forms/dist/components/InputItem.d.ts.map +0 -1
- package/packages/forms/dist/components/Radio.d.ts +0 -5
- package/packages/forms/dist/components/Radio.d.ts.map +0 -1
- package/packages/forms/dist/components/RadioGroup.d.ts +0 -9
- package/packages/forms/dist/components/RadioGroup.d.ts.map +0 -1
- package/packages/forms/dist/components/Select.d.ts +0 -6
- package/packages/forms/dist/components/Select.d.ts.map +0 -1
- package/packages/forms/dist/components/Text.d.ts +0 -6
- package/packages/forms/dist/components/Text.d.ts.map +0 -1
- package/packages/forms/dist/components/Textarea.d.ts +0 -6
- package/packages/forms/dist/components/Textarea.d.ts.map +0 -1
- package/packages/forms/dist/components/index.d.ts +0 -8
- package/packages/forms/dist/components/index.d.ts.map +0 -1
- package/packages/forms/dist/index.d.ts +0 -2
- package/packages/forms/dist/index.d.ts.map +0 -1
- package/packages/forms/dist/utils/index.d.ts +0 -2
- package/packages/forms/dist/utils/index.d.ts.map +0 -1
- package/packages/forms/src/components/CheckboxGroup.tsx +0 -35
- package/packages/forms/src/components/RadioGroup.tsx +0 -36
- package/packages/forms/src/vite-env.d.ts +0 -1
- package/packages/react/tsconfig.json +0 -27
- /package/packages/{react → core}/src/components/index.ts +0 -0
- /package/packages/{react → core}/src/index.ts +0 -0
- /package/packages/{react → core}/src/utils/index.ts +0 -0
- /package/packages/{react → core}/tsconfig.node.json +0 -0
- /package/packages/{react → core}/vite.config.ts +0 -0
- /package/packages/forms/src/components/{InputItem.ts → controlled/InputItem.ts} +0 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import * as React from 'react'
|
|
2
|
+
import { render, screen } from '@testing-library/react'
|
|
3
|
+
import '@testing-library/jest-dom'
|
|
4
|
+
|
|
5
|
+
import { FieldsetControl } from '../src'
|
|
6
|
+
|
|
7
|
+
describe('FieldsetControl', () => {
|
|
8
|
+
test('renders FieldsetControl component vol1', async () => {
|
|
9
|
+
render(<FieldsetControl labelText="test" />)
|
|
10
|
+
|
|
11
|
+
const fieldset = screen.getByRole('group')
|
|
12
|
+
|
|
13
|
+
expect(fieldset).toBeInTheDocument()
|
|
14
|
+
|
|
15
|
+
expect(screen.getByText('test')).toBeInTheDocument()
|
|
16
|
+
})
|
|
17
|
+
|
|
18
|
+
test('renders FieldsetControl component vol2', async () => {
|
|
19
|
+
render(
|
|
20
|
+
<FieldsetControl
|
|
21
|
+
labelText="test"
|
|
22
|
+
helperText="helper"
|
|
23
|
+
errorMessage="error"
|
|
24
|
+
/>
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
expect(screen.getByText('helper')).toBeInTheDocument()
|
|
28
|
+
expect(screen.queryByText('error')).toBeNull()
|
|
29
|
+
})
|
|
30
|
+
|
|
31
|
+
test('renders FieldsetControl component vol3', async () => {
|
|
32
|
+
render(
|
|
33
|
+
<FieldsetControl
|
|
34
|
+
labelText="test"
|
|
35
|
+
helperText="helper"
|
|
36
|
+
errorMessage="error"
|
|
37
|
+
isInvalid
|
|
38
|
+
/>
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
expect(screen.getByText('helper')).toBeInTheDocument()
|
|
42
|
+
expect(screen.getByText('error')).toBeInTheDocument()
|
|
43
|
+
})
|
|
44
|
+
|
|
45
|
+
test('renders FieldsetControl component vol4', async () => {
|
|
46
|
+
render(<FieldsetControl labelText="test" />)
|
|
47
|
+
|
|
48
|
+
expect(screen.queryByText('*')).toBeNull()
|
|
49
|
+
|
|
50
|
+
render(<FieldsetControl labelText="test" isRequired />)
|
|
51
|
+
|
|
52
|
+
expect(screen.getByText('*')).toBeInTheDocument()
|
|
53
|
+
})
|
|
54
|
+
})
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import * as React from 'react'
|
|
2
|
+
import { render, screen } from '@testing-library/react'
|
|
3
|
+
import '@testing-library/jest-dom'
|
|
4
|
+
|
|
5
|
+
import { LabelControl } from '../src'
|
|
6
|
+
|
|
7
|
+
describe('LabelControl', () => {
|
|
8
|
+
test('renders LabelControl component vol1', async () => {
|
|
9
|
+
render(<LabelControl labelText="test" data-testid="label" />)
|
|
10
|
+
|
|
11
|
+
const elem = screen.getByTestId('label')
|
|
12
|
+
|
|
13
|
+
expect(elem).toBeInTheDocument()
|
|
14
|
+
|
|
15
|
+
expect(screen.getByText('test')).toBeInTheDocument()
|
|
16
|
+
})
|
|
17
|
+
|
|
18
|
+
test('renders LabelControl component vol2', async () => {
|
|
19
|
+
render(
|
|
20
|
+
<LabelControl labelText="test" helperText="helper" errorMessage="error" />
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
expect(screen.getByText('helper')).toBeInTheDocument()
|
|
24
|
+
expect(screen.queryByText('error')).toBeNull()
|
|
25
|
+
})
|
|
26
|
+
|
|
27
|
+
test('renders LabelControl component vol3', async () => {
|
|
28
|
+
render(
|
|
29
|
+
<LabelControl
|
|
30
|
+
labelText="test"
|
|
31
|
+
helperText="helper"
|
|
32
|
+
errorMessage="error"
|
|
33
|
+
isInvalid
|
|
34
|
+
/>
|
|
35
|
+
)
|
|
36
|
+
|
|
37
|
+
expect(screen.getByText('helper')).toBeInTheDocument()
|
|
38
|
+
expect(screen.getByText('error')).toBeInTheDocument()
|
|
39
|
+
})
|
|
40
|
+
|
|
41
|
+
test('renders LabelControl component vol4', async () => {
|
|
42
|
+
render(<LabelControl labelText="test" />)
|
|
43
|
+
|
|
44
|
+
expect(screen.queryByText('*')).toBeNull()
|
|
45
|
+
|
|
46
|
+
render(<LabelControl labelText="test" isRequired />)
|
|
47
|
+
|
|
48
|
+
expect(screen.getByText('*')).toBeInTheDocument()
|
|
49
|
+
})
|
|
50
|
+
})
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import * as React from 'react'
|
|
2
|
+
import { render, screen } from '@testing-library/react'
|
|
3
|
+
import '@testing-library/jest-dom'
|
|
4
|
+
|
|
5
|
+
import { FieldsetControl, Radio } from '../src'
|
|
6
|
+
|
|
7
|
+
describe('should derive values from surrounding FieldsetControl', () => {
|
|
8
|
+
test('renders Text component vol1', async () => {
|
|
9
|
+
render(
|
|
10
|
+
<FieldsetControl labelText="test">
|
|
11
|
+
<Radio />
|
|
12
|
+
</FieldsetControl>
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
const elem = screen.getByRole('radio')
|
|
16
|
+
|
|
17
|
+
expect(elem).toBeInTheDocument()
|
|
18
|
+
})
|
|
19
|
+
|
|
20
|
+
test('renders Text component vol2', async () => {
|
|
21
|
+
render(
|
|
22
|
+
<FieldsetControl
|
|
23
|
+
labelText="test"
|
|
24
|
+
helperText="helper"
|
|
25
|
+
errorMessage="error"
|
|
26
|
+
>
|
|
27
|
+
<Radio />
|
|
28
|
+
</FieldsetControl>
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
const elem = screen.getByRole('radio')
|
|
32
|
+
|
|
33
|
+
expect(elem).toBeInTheDocument()
|
|
34
|
+
|
|
35
|
+
expect(elem).toHaveAttribute('aria-describedby', 'helper-text-:r1:')
|
|
36
|
+
expect(elem).toHaveAttribute('aria-errormessage', 'error-message-:r1:')
|
|
37
|
+
})
|
|
38
|
+
|
|
39
|
+
test('renders Text component vol3', async () => {
|
|
40
|
+
render(
|
|
41
|
+
<FieldsetControl labelText="test">
|
|
42
|
+
<Radio />
|
|
43
|
+
</FieldsetControl>
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
const elem = screen.getByRole('radio')
|
|
47
|
+
|
|
48
|
+
expect(elem).toBeInTheDocument()
|
|
49
|
+
|
|
50
|
+
expect(elem).toBeValid()
|
|
51
|
+
expect(elem).toHaveAttribute('aria-invalid', 'false')
|
|
52
|
+
})
|
|
53
|
+
|
|
54
|
+
test('renders Text component vol4', async () => {
|
|
55
|
+
render(
|
|
56
|
+
<FieldsetControl labelText="test" isInvalid>
|
|
57
|
+
<Radio />
|
|
58
|
+
</FieldsetControl>
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
const elem = screen.getByRole('radio')
|
|
62
|
+
|
|
63
|
+
expect(elem).toBeInTheDocument()
|
|
64
|
+
|
|
65
|
+
expect(elem).toBeInvalid()
|
|
66
|
+
expect(elem).toHaveAttribute('aria-invalid', 'true')
|
|
67
|
+
expect(elem).not.toBeRequired()
|
|
68
|
+
})
|
|
69
|
+
|
|
70
|
+
test('renders Text component vol5', async () => {
|
|
71
|
+
render(
|
|
72
|
+
<FieldsetControl labelText="test" isRequired>
|
|
73
|
+
<Radio defaultChecked={true} />
|
|
74
|
+
</FieldsetControl>
|
|
75
|
+
)
|
|
76
|
+
|
|
77
|
+
const elem = screen.getByRole('radio')
|
|
78
|
+
|
|
79
|
+
expect(elem).toBeInTheDocument()
|
|
80
|
+
|
|
81
|
+
expect(elem).toBeValid()
|
|
82
|
+
expect(elem).toBeRequired()
|
|
83
|
+
})
|
|
84
|
+
|
|
85
|
+
test('renders Text component vol6', async () => {
|
|
86
|
+
render(
|
|
87
|
+
<FieldsetControl labelText="test" isRequired>
|
|
88
|
+
<Radio />
|
|
89
|
+
</FieldsetControl>
|
|
90
|
+
)
|
|
91
|
+
|
|
92
|
+
const elem = screen.getByRole('radio')
|
|
93
|
+
|
|
94
|
+
expect(elem).toBeInTheDocument()
|
|
95
|
+
|
|
96
|
+
expect(elem).toBeInvalid()
|
|
97
|
+
expect(elem).toBeRequired()
|
|
98
|
+
})
|
|
99
|
+
})
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import * as React from 'react'
|
|
2
|
+
import { render, screen } from '@testing-library/react'
|
|
3
|
+
import '@testing-library/jest-dom'
|
|
4
|
+
|
|
5
|
+
import { LabelControl, Text } from '../src'
|
|
6
|
+
|
|
7
|
+
describe('should derive values from surrounding LabelControl', () => {
|
|
8
|
+
test('renders Text component vol1', async () => {
|
|
9
|
+
render(
|
|
10
|
+
<LabelControl labelText="test">
|
|
11
|
+
<Text />
|
|
12
|
+
</LabelControl>
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
const text = screen.getByLabelText(/test/)
|
|
16
|
+
|
|
17
|
+
expect(text).toBeInTheDocument()
|
|
18
|
+
})
|
|
19
|
+
|
|
20
|
+
test('renders Text component vol2', async () => {
|
|
21
|
+
render(
|
|
22
|
+
<LabelControl labelText="test" helperText="helper" errorMessage="error">
|
|
23
|
+
<Text />
|
|
24
|
+
</LabelControl>
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
const text = screen.getByLabelText(/test/)
|
|
28
|
+
|
|
29
|
+
expect(text).toBeInTheDocument()
|
|
30
|
+
|
|
31
|
+
expect(text).toHaveAttribute('aria-describedby', 'helper-text-:r1:')
|
|
32
|
+
expect(text).toHaveAttribute('aria-errormessage', 'error-message-:r1:')
|
|
33
|
+
})
|
|
34
|
+
|
|
35
|
+
test('renders Text component vol3', async () => {
|
|
36
|
+
render(
|
|
37
|
+
<LabelControl labelText="test">
|
|
38
|
+
<Text />
|
|
39
|
+
</LabelControl>
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
const text = screen.getByLabelText(/test/)
|
|
43
|
+
|
|
44
|
+
expect(text).toBeInTheDocument()
|
|
45
|
+
|
|
46
|
+
expect(text).toBeValid()
|
|
47
|
+
expect(text).toHaveAttribute('aria-invalid', 'false')
|
|
48
|
+
})
|
|
49
|
+
|
|
50
|
+
test('renders Text component vol4', async () => {
|
|
51
|
+
render(
|
|
52
|
+
<LabelControl labelText="test" isInvalid>
|
|
53
|
+
<Text />
|
|
54
|
+
</LabelControl>
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
const text = screen.getByLabelText(/test/)
|
|
58
|
+
|
|
59
|
+
expect(text).toBeInTheDocument()
|
|
60
|
+
|
|
61
|
+
expect(text).toBeInvalid()
|
|
62
|
+
expect(text).toHaveAttribute('aria-invalid', 'true')
|
|
63
|
+
expect(text).not.toBeRequired()
|
|
64
|
+
})
|
|
65
|
+
|
|
66
|
+
test('renders Text component vol5', async () => {
|
|
67
|
+
render(
|
|
68
|
+
<LabelControl labelText="test" isRequired>
|
|
69
|
+
<Text defaultValue="test value" />
|
|
70
|
+
</LabelControl>
|
|
71
|
+
)
|
|
72
|
+
|
|
73
|
+
screen.getByLabelText
|
|
74
|
+
const text = screen.getByLabelText(/test/)
|
|
75
|
+
|
|
76
|
+
expect(text).toBeInTheDocument()
|
|
77
|
+
|
|
78
|
+
expect(text).toBeValid()
|
|
79
|
+
expect(text).toBeRequired()
|
|
80
|
+
})
|
|
81
|
+
|
|
82
|
+
test('renders Text component vol6', async () => {
|
|
83
|
+
render(
|
|
84
|
+
<LabelControl labelText="test" isRequired>
|
|
85
|
+
<Text />
|
|
86
|
+
</LabelControl>
|
|
87
|
+
)
|
|
88
|
+
|
|
89
|
+
const text = screen.getByLabelText(/test/)
|
|
90
|
+
|
|
91
|
+
expect(text).toBeInTheDocument()
|
|
92
|
+
|
|
93
|
+
expect(text).toBeInvalid()
|
|
94
|
+
expect(text).toBeRequired()
|
|
95
|
+
})
|
|
96
|
+
})
|
|
@@ -1,22 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
+
"extends": "../../tsconfig.json",
|
|
2
3
|
"compilerOptions": {
|
|
3
|
-
"target": "ESNext",
|
|
4
|
-
"useDefineForClassFields": true,
|
|
5
|
-
"lib": ["DOM", "DOM.Iterable", "ESNext"],
|
|
6
|
-
"allowJs": false,
|
|
7
|
-
"skipLibCheck": true,
|
|
8
|
-
"esModuleInterop": false,
|
|
9
|
-
"allowSyntheticDefaultImports": true,
|
|
10
|
-
"strict": true,
|
|
11
|
-
"forceConsistentCasingInFileNames": true,
|
|
12
|
-
"module": "ESNext",
|
|
13
|
-
"moduleResolution": "Node",
|
|
14
|
-
"resolveJsonModule": true,
|
|
15
|
-
"isolatedModules": true,
|
|
16
|
-
"jsx": "react-jsx",
|
|
17
|
-
"outDir": "dist",
|
|
18
|
-
"declaration": true,
|
|
19
|
-
"declarationMap": true,
|
|
20
4
|
"baseUrl": ".",
|
|
21
5
|
"paths": {
|
|
22
6
|
"@/*": ["src/*"]
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
export interface CheckboxProps extends React.ComponentProps<'input'> {
|
|
3
|
-
}
|
|
4
|
-
export declare const Checkbox: React.ForwardRefExoticComponent<Omit<CheckboxProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
|
|
5
|
-
//# sourceMappingURL=Checkbox.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../src/components/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,MAAM,WAAW,aAAc,SAAQ,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC;CAAG;AAEvE,eAAO,MAAM,QAAQ,qGA8CpB,CAAA"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { InputItem } from './InputItem';
|
|
3
|
-
export interface CheckboxGroupProps extends Omit<React.ComponentProps<'fieldset'>, 'onChange'> {
|
|
4
|
-
items: InputItem[];
|
|
5
|
-
onChange: React.ChangeEventHandler<HTMLInputElement>;
|
|
6
|
-
label?: string;
|
|
7
|
-
}
|
|
8
|
-
export declare const CheckboxGroup: (props: CheckboxGroupProps) => JSX.Element;
|
|
9
|
-
//# sourceMappingURL=CheckboxGroup.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CheckboxGroup.d.ts","sourceRoot":"","sources":["../../src/components/CheckboxGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,MAAM,WAAW,kBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IAC1D,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,QAAQ,EAAE,KAAK,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAA;IACpD,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,aAAa,UAAW,kBAAkB,gBAuBtD,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InputItem.d.ts","sourceRoot":"","sources":["../../src/components/InputItem.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Radio.d.ts","sourceRoot":"","sources":["../../src/components/Radio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,MAAM,WAAW,KAAM,SAAQ,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC;CAAG;AAE/D,eAAO,MAAM,KAAK,6FAoChB,CAAA"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { InputItem } from './InputItem';
|
|
3
|
-
export interface RadioGroupProps extends Omit<React.ComponentProps<'fieldset'>, 'onChange'> {
|
|
4
|
-
items: InputItem[];
|
|
5
|
-
onChange: React.ChangeEventHandler<HTMLInputElement>;
|
|
6
|
-
label?: string;
|
|
7
|
-
}
|
|
8
|
-
export declare const RadioGroup: (props: RadioGroupProps) => JSX.Element;
|
|
9
|
-
//# sourceMappingURL=RadioGroup.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RadioGroup.d.ts","sourceRoot":"","sources":["../../src/components/RadioGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IAC1D,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,QAAQ,EAAE,KAAK,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAA;IACpD,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,UAAU,UAAW,eAAe,gBAwBhD,CAAA"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
export interface SelectProps extends React.ComponentPropsWithoutRef<'select'> {
|
|
3
|
-
label?: string;
|
|
4
|
-
}
|
|
5
|
-
export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLSelectElement>>;
|
|
6
|
-
//# sourceMappingURL=Select.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../src/components/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,MAAM,WAAW,WAAY,SAAQ,KAAK,CAAC,wBAAwB,CAAC,QAAQ,CAAC;IAC3E,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,MAAM,uFAkDlB,CAAA"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
export interface TextProps extends React.ComponentPropsWithoutRef<'input'> {
|
|
3
|
-
label?: string;
|
|
4
|
-
}
|
|
5
|
-
export declare const Text: React.ForwardRefExoticComponent<TextProps & React.RefAttributes<HTMLInputElement>>;
|
|
6
|
-
//# sourceMappingURL=Text.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../src/components/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,wBAAwB,CAAC,OAAO,CAAC;IACxE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,IAAI,oFA0ChB,CAAA"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
export interface TextareaProps extends React.ComponentPropsWithoutRef<'textarea'> {
|
|
3
|
-
label?: string;
|
|
4
|
-
}
|
|
5
|
-
export declare const Textarea: React.ForwardRefExoticComponent<TextareaProps & React.RefAttributes<HTMLTextAreaElement>>;
|
|
6
|
-
//# sourceMappingURL=Textarea.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Textarea.d.ts","sourceRoot":"","sources":["../../src/components/Textarea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,MAAM,WAAW,aACf,SAAQ,KAAK,CAAC,wBAAwB,CAAC,UAAU,CAAC;IAClD,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,QAAQ,2FAuCpB,CAAA"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export { Checkbox } from './Checkbox';
|
|
2
|
-
export { CheckboxGroup } from './CheckboxGroup';
|
|
3
|
-
export { Radio } from './Radio';
|
|
4
|
-
export { RadioGroup } from './RadioGroup';
|
|
5
|
-
export { Select } from './Select';
|
|
6
|
-
export { Text } from './Text';
|
|
7
|
-
export { Textarea } from './Textarea';
|
|
8
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,aAAa,EACb,KAAK,EACL,UAAU,EACV,MAAM,EACN,IAAI,EACJ,QAAQ,EACT,MAAM,cAAc,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,EAAE,kBAAmB,GAAG,EAAE,WAAyC,CAAA"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import React from 'react'
|
|
2
|
-
import { Checkbox } from './Checkbox'
|
|
3
|
-
import { InputItem } from './InputItem'
|
|
4
|
-
|
|
5
|
-
export interface CheckboxGroupProps
|
|
6
|
-
extends Omit<React.ComponentProps<'fieldset'>, 'onChange'> {
|
|
7
|
-
items: InputItem[]
|
|
8
|
-
onChange: React.ChangeEventHandler<HTMLInputElement>
|
|
9
|
-
label?: string
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export const CheckboxGroup = (props: CheckboxGroupProps) => {
|
|
13
|
-
const { items, onChange, label, className, children, ...newProps } = props
|
|
14
|
-
const groupName = 'checkbox group ' + Math.random() * 100000
|
|
15
|
-
|
|
16
|
-
return (
|
|
17
|
-
<fieldset {...newProps}>
|
|
18
|
-
{label && <legend>{label}</legend>}
|
|
19
|
-
{items.map(({ label, value }, index) => {
|
|
20
|
-
return (
|
|
21
|
-
<div key={index}>
|
|
22
|
-
<Checkbox
|
|
23
|
-
className=""
|
|
24
|
-
name={groupName}
|
|
25
|
-
value={value}
|
|
26
|
-
onChange={onChange}
|
|
27
|
-
>
|
|
28
|
-
{label}
|
|
29
|
-
</Checkbox>
|
|
30
|
-
</div>
|
|
31
|
-
)
|
|
32
|
-
})}
|
|
33
|
-
</fieldset>
|
|
34
|
-
)
|
|
35
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import React from 'react'
|
|
2
|
-
import { Radio } from './Radio'
|
|
3
|
-
import { InputItem } from './InputItem'
|
|
4
|
-
|
|
5
|
-
export interface RadioGroupProps
|
|
6
|
-
extends Omit<React.ComponentProps<'fieldset'>, 'onChange'> {
|
|
7
|
-
items: InputItem[]
|
|
8
|
-
onChange: React.ChangeEventHandler<HTMLInputElement>
|
|
9
|
-
label?: string
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export const RadioGroup = (props: RadioGroupProps) => {
|
|
13
|
-
const { items, onChange, label, className, children, ...newProps } = props
|
|
14
|
-
const groupName = 'radio group ' + Math.random() * 100000
|
|
15
|
-
|
|
16
|
-
return (
|
|
17
|
-
<fieldset {...newProps}>
|
|
18
|
-
{label && <legend>{label}</legend>}
|
|
19
|
-
{items.map(({ label, value }, index) => {
|
|
20
|
-
return (
|
|
21
|
-
<div key={index}>
|
|
22
|
-
<Radio
|
|
23
|
-
className=""
|
|
24
|
-
name={groupName}
|
|
25
|
-
value={value}
|
|
26
|
-
onChange={onChange}
|
|
27
|
-
defaultChecked={index === 0}
|
|
28
|
-
>
|
|
29
|
-
{label}
|
|
30
|
-
</Radio>
|
|
31
|
-
</div>
|
|
32
|
-
)
|
|
33
|
-
})}
|
|
34
|
-
</fieldset>
|
|
35
|
-
)
|
|
36
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/// <reference types="vite/client" />
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"target": "ESNext",
|
|
4
|
-
"useDefineForClassFields": true,
|
|
5
|
-
"lib": ["DOM", "DOM.Iterable", "ESNext"],
|
|
6
|
-
"allowJs": false,
|
|
7
|
-
"skipLibCheck": true,
|
|
8
|
-
"esModuleInterop": false,
|
|
9
|
-
"allowSyntheticDefaultImports": true,
|
|
10
|
-
"strict": true,
|
|
11
|
-
"forceConsistentCasingInFileNames": true,
|
|
12
|
-
"module": "ESNext",
|
|
13
|
-
"moduleResolution": "Node",
|
|
14
|
-
"resolveJsonModule": true,
|
|
15
|
-
"isolatedModules": true,
|
|
16
|
-
"jsx": "react-jsx",
|
|
17
|
-
"outDir": "dist",
|
|
18
|
-
"declaration": true,
|
|
19
|
-
"declarationMap": true,
|
|
20
|
-
"baseUrl": ".",
|
|
21
|
-
"paths": {
|
|
22
|
-
"@/*": ["src/*"]
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
"include": ["src"],
|
|
26
|
-
"references": [{ "path": "./tsconfig.node.json" }]
|
|
27
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|