@vonage/vivid-react 0.0.1 → 2.10.56

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.
Files changed (101) hide show
  1. package/.storybook/main.js +11 -0
  2. package/.storybook/preview.js +3 -0
  3. package/README.md +183 -0
  4. package/babel.config.js +38 -0
  5. package/package.json +135 -7
  6. package/rollup.config.js +30 -0
  7. package/scripts/cli.js +28 -0
  8. package/scripts/generateWrappers/consts.js +226 -0
  9. package/scripts/generateWrappers/generator.js +130 -0
  10. package/scripts/generateWrappers/helpers/generator.js +18 -0
  11. package/scripts/generateWrappers/helpers/generator.test.js +56 -0
  12. package/scripts/generateWrappers/index.js +0 -0
  13. package/scripts/generateWrappers/prop.types.js +86 -0
  14. package/scripts/generateWrappers/templates/js/index.tmpl +2 -0
  15. package/scripts/generateWrappers/templates/js/react-component.tmpl +30 -0
  16. package/scripts/generateWrappers/templates/js/stories.tmpl +18 -0
  17. package/scripts/generateWrappers/templates/templates.js +36 -0
  18. package/scripts/generateWrappers/templates/ts/index.tmpl +2 -0
  19. package/scripts/generateWrappers/templates/ts/react-component.tmpl +28 -0
  20. package/scripts/generateWrappers/utils.js +226 -0
  21. package/scripts/generateWrappers/utils.test.js +71 -0
  22. package/scripts/updateDocs.js +42 -0
  23. package/scripts/updateVividPackages.js +81 -0
  24. package/src/dataGrid/index.js +15 -0
  25. package/src/index.js +3 -0
  26. package/src/initialization/initVivid.js +24 -0
  27. package/src/patches/VwcCard/index.js +2 -0
  28. package/src/patches/VwcCard/vwcCardHeadingCrop.js +28 -0
  29. package/src/patches/VwcCard/vwcCardWithMenu.js +14 -0
  30. package/src/patches/index.js +6 -0
  31. package/src/patches/vwcDataGrid.js +26 -0
  32. package/src/patches/vwcNoteContentOverflow.js +20 -0
  33. package/src/patches/vwcSetAttributeValue.js +12 -0
  34. package/src/patches/vwcSnackBarHtmlMessage.js +21 -0
  35. package/src/patches/vwcTooltip.js +46 -0
  36. package/stories/VwcAccordion/VwcAccordion.stories.jsx +18 -0
  37. package/stories/VwcActionGroup/VwcActionGroup.stories.jsx +18 -0
  38. package/stories/VwcBadge/VwcBadge.stories.jsx +18 -0
  39. package/stories/VwcBanner/VwcBanner.stories.jsx +18 -0
  40. package/stories/VwcButton/VwcButton.stories.jsx +18 -0
  41. package/stories/VwcButtonToggleGroup/VwcButtonToggleGroup.stories.jsx +47 -0
  42. package/stories/VwcCalendar/VwcCalendar.stories.jsx +18 -0
  43. package/stories/VwcCalendarEvent/VwcCalendarEvent.stories.jsx +18 -0
  44. package/stories/VwcCard/VwcCard.stories.jsx +90 -0
  45. package/stories/VwcCarousel/VwcCarousel.stories.jsx +18 -0
  46. package/stories/VwcCarouselItem/VwcCarouselItem.stories.jsx +18 -0
  47. package/stories/VwcCheckListItem/VwcCheckListItem.stories.jsx +18 -0
  48. package/stories/VwcCheckbox/VwcCheckbox.stories.jsx +18 -0
  49. package/stories/VwcChip/VwcChip.stories.jsx +18 -0
  50. package/stories/VwcChipSet/VwcChipSet.stories.jsx +38 -0
  51. package/stories/VwcCircularProgress/VwcCircularProgress.stories.jsx +18 -0
  52. package/stories/VwcDataGrid/VwcDataGrid.stories.jsx +109 -0
  53. package/stories/VwcDataGridColumn/VwcDataGridColumn.stories.jsx +18 -0
  54. package/stories/VwcDatepicker/VwcDatepicker.stories.jsx +18 -0
  55. package/stories/VwcDialog/VwcDialog.stories.jsx +18 -0
  56. package/stories/VwcDrawer/VwcDrawer.stories.jsx +18 -0
  57. package/stories/VwcDropdown/VwcDropdown.stories.jsx +18 -0
  58. package/stories/VwcElevation/VwcElevation.stories.jsx +18 -0
  59. package/stories/VwcEmptyState/VwcEmptyState.stories.jsx +18 -0
  60. package/stories/VwcExpansionPanel/VwcExpansionPanel.stories.jsx +18 -0
  61. package/stories/VwcFab/VwcFab.stories.jsx +18 -0
  62. package/stories/VwcFilePicker/VwcFilePicker.stories.jsx +18 -0
  63. package/stories/VwcFormfield/VwcFormfield.stories.jsx +18 -0
  64. package/stories/VwcHelperMessage/VwcHelperMessage.stories.jsx +18 -0
  65. package/stories/VwcIcon/VwcIcon.stories.jsx +18 -0
  66. package/stories/VwcIconButton/VwcIconButton.stories.jsx +18 -0
  67. package/stories/VwcIconButtonToggle/VwcIconButtonToggle.stories.jsx +18 -0
  68. package/stories/VwcKeypad/VwcKeypad.stories.jsx +18 -0
  69. package/stories/VwcLayout/VwcLayout.stories.jsx +63 -0
  70. package/stories/VwcLinearProgress/VwcLinearProgress.stories.jsx +18 -0
  71. package/stories/VwcList/VwcList.stories.jsx +25 -0
  72. package/stories/VwcListExpansionPanel/VwcListExpansionPanel.stories.jsx +18 -0
  73. package/stories/VwcListItem/VwcListItem.stories.jsx +18 -0
  74. package/stories/VwcMenu/VwcMenu.stories.jsx +41 -0
  75. package/stories/VwcNotchedOutline/VwcNotchedOutline.stories.jsx +18 -0
  76. package/stories/VwcNote/VwcNote.stories.jsx +18 -0
  77. package/stories/VwcPagination/VwcPagination.stories.jsx +18 -0
  78. package/stories/VwcPopup/VwcPopup.stories.jsx +18 -0
  79. package/stories/VwcRadio/VwcRadio.stories.jsx +18 -0
  80. package/stories/VwcRadioListItem/VwcRadioListItem.stories.jsx +18 -0
  81. package/stories/VwcSchemeSelect/VwcSchemeSelect.stories.jsx +18 -0
  82. package/stories/VwcSelect/VwcSelect.stories.jsx +18 -0
  83. package/stories/VwcSideDrawer/VwcSideDrawer.stories.jsx +18 -0
  84. package/stories/VwcSlider/VwcSlider.stories.jsx +18 -0
  85. package/stories/VwcSnackbar/VwcSnackbar.stories.jsx +18 -0
  86. package/stories/VwcSurface/VwcSurface.stories.jsx +18 -0
  87. package/stories/VwcSwitch/VwcSwitch.stories.jsx +18 -0
  88. package/stories/VwcTab/VwcTab.stories.jsx +18 -0
  89. package/stories/VwcTabBar/VwcTabBar.stories.jsx +63 -0
  90. package/stories/VwcTag/VwcTag.stories.jsx +18 -0
  91. package/stories/VwcText/VwcText.stories.jsx +18 -0
  92. package/stories/VwcTextarea/VwcTextarea.stories.jsx +24 -0
  93. package/stories/VwcTextfield/VwcTextfield.stories.jsx +47 -0
  94. package/stories/VwcThemeSwitch/VwcThemeSwitch.stories.jsx +18 -0
  95. package/stories/VwcTooltip/VwcTooltip.stories.jsx +41 -0
  96. package/stories/VwcTopAppBar/VwcTopAppBar.stories.jsx +18 -0
  97. package/stories/VwcTopAppBarFixed/VwcTopAppBarFixed.stories.jsx +18 -0
  98. package/stories/patches/patches.stories.jsx +94 -0
  99. package/testing/component.mock.js +3 -0
  100. package/tsconfig.json +70 -0
  101. package/types/index.d.ts +2 -0
@@ -0,0 +1,63 @@
1
+ import React from 'react'
2
+ import VwcLayout from '../../dist/VwcLayout'
3
+ import VwcCard from '../../dist/VwcCard'
4
+
5
+ const testData = [
6
+ 'understand cognitive dangerous child consistent efficient temperature limit silver viewer ',
7
+ 'capital wet aware executive anyone typically cow bother apart reduce bother cow ',
8
+ 'song chef crop need permanent management drawing pure likely competitor competitor ',
9
+ 'global chemical flight demonstration sigh highway gradually threat introduce than global ',
10
+ 'whereas birth finish maker chest ourselves celebrate different routine serve different ',
11
+ 'bedroom act another military count team tight aspect die anymore tight tight count ',
12
+ 'everyday tomato landscape ahead soft spend ensure overcome earn letter ensure ',
13
+ 'recognize bomb meter solve engineering breakfast nonetheless habit physician consist recognize ',
14
+ 'soft document limitation replace asleep exhibition faculty accident big study exhibition ',
15
+ 'explode inflation lift clue certainly practice accompany choose beneath cope cope '
16
+ ]
17
+
18
+ export const Default = () => {
19
+ return (
20
+ <>
21
+ <VwcLayout>
22
+ {testData.map((d, i) => (
23
+ <VwcCard key={i} text={d} />
24
+ ))}
25
+ </VwcLayout>
26
+ <VwcLayout columnBasis='sm' columnSpacing='xs'>
27
+ {testData.map((d, i) => (
28
+ <VwcCard key={i} text={d} />
29
+ ))}
30
+ </VwcLayout>
31
+ <VwcLayout columnBasis='md' columnSpacing='md'>
32
+ {testData.map((d, i) => (
33
+ <VwcCard key={i} text={d} />
34
+ ))}
35
+ </VwcLayout>
36
+ <VwcLayout columnBasis='lg' columnSpacing='md'>
37
+ {testData.map((d, i) => (
38
+ <VwcCard key={i} text={d} />
39
+ ))}
40
+ </VwcLayout>
41
+ <VwcLayout columnBasis='block'>
42
+ {testData.map((d, i) => (
43
+ <VwcCard key={i} text={d} />
44
+ ))}
45
+ </VwcLayout>
46
+ </>
47
+ )
48
+ }
49
+
50
+ export default {
51
+ title: 'VwcLayout',
52
+ argTypes: {
53
+ //
54
+ // Example values
55
+ // numberValue: { control: 'number', defaultValue: 123 },
56
+ // booleanValue: { control: 'boolean', defaultValue: true },
57
+ // objectValue: { control: 'object', defaultValue: {} },
58
+ // stringValue: { control: 'string', defaultValue: 'string' },
59
+ // colorValue: { control: 'color' },
60
+ // dateValue: { control: 'date' }
61
+ //
62
+ }
63
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcLinearProgress from '../../dist/VwcLinearProgress'
3
+
4
+ export const Default = () => <VwcLinearProgress />
5
+ export default {
6
+ title: 'VwcLinearProgress',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,25 @@
1
+ import React from 'react'
2
+ import VwcCheckListItem from '../../dist/VwcCheckListItem'
3
+ import VwcList from '../../dist/VwcList'
4
+
5
+ export const Default = () => (
6
+ <VwcList>
7
+ <VwcCheckListItem />
8
+ <VwcCheckListItem />
9
+ <VwcCheckListItem />
10
+ </VwcList>
11
+ )
12
+ export default {
13
+ title: 'VwcList',
14
+ argTypes: {
15
+ //
16
+ // Example values
17
+ // numberValue: { control: 'number', defaultValue: 123 },
18
+ // booleanValue: { control: 'boolean', defaultValue: true },
19
+ // objectValue: { control: 'object', defaultValue: {} },
20
+ // stringValue: { control: 'string', defaultValue: 'string' },
21
+ // colorValue: { control: 'color' },
22
+ // dateValue: { control: 'date' }
23
+ //
24
+ }
25
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcListExpansionPanel from '../../dist/VwcListExpansionPanel'
3
+
4
+ export const Default = () => <VwcListExpansionPanel />
5
+ export default {
6
+ title: 'VwcListExpansionPanel',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcListItem from '../../dist/VwcListItem'
3
+
4
+ export const Default = () => <VwcListItem />
5
+ export default {
6
+ title: 'VwcListItem',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,41 @@
1
+ import React from 'react'
2
+ import VwcMenu from '../../dist/VwcMenu'
3
+ import VwcButton from '../../dist/VwcButton'
4
+ import VwcListItem from '../../dist/VwcListItem'
5
+
6
+ function anchorClickHandler () {
7
+ const anchor = document.querySelector('#button')
8
+ const menu = document.querySelector('#menu')
9
+ menu.anchor = anchor
10
+ menu.open = true
11
+ }
12
+
13
+ export const Default = () => (
14
+ <>
15
+ <VwcButton
16
+ id='button'
17
+ label='Open menu'
18
+ onClick={() => anchorClickHandler()}
19
+ ></VwcButton>
20
+ <VwcMenu
21
+ id='menu'
22
+ corner='BOTTOM_RIGHT'
23
+ onSelected={e => console.log(`Selected: `, e)}
24
+ onAction={e => console.log(`Action: `, e)}
25
+ onOpened={e => console.log(`Opened: `, e)}
26
+ onClosed={e => console.log(`Closed: `, e)}
27
+ >
28
+ <VwcListItem>
29
+ <div>Basic item 1</div>
30
+ </VwcListItem>
31
+ <VwcListItem>
32
+ <div>Basic item 2</div>
33
+ </VwcListItem>
34
+ </VwcMenu>
35
+ </>
36
+ )
37
+
38
+ export default {
39
+ title: 'VwcMenu',
40
+ argTypes: {}
41
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcNotchedOutline from '../../dist/VwcNotchedOutline'
3
+
4
+ export const Default = () => <VwcNotchedOutline />
5
+ export default {
6
+ title: 'VwcNotchedOutline',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcNote from '../../dist/VwcNote'
3
+
4
+ export const Default = () => <VwcNote />
5
+ export default {
6
+ title: 'VwcNote',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcPagination from '../../dist/VwcPagination'
3
+
4
+ export const Default = () => <VwcPagination />
5
+ export default {
6
+ title: 'VwcPagination',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcPopup from '../../dist/VwcPopup'
3
+
4
+ export const Default = () => <VwcPopup />
5
+ export default {
6
+ title: 'VwcPopup',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcRadio from '../../dist/VwcRadio'
3
+
4
+ export const Default = () => <VwcRadio />
5
+ export default {
6
+ title: 'VwcRadio',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcRadioListItem from '../../dist/VwcRadioListItem'
3
+
4
+ export const Default = () => <VwcRadioListItem />
5
+ export default {
6
+ title: 'VwcRadioListItem',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcSchemeSelect from '../../dist/VwcSchemeSelect'
3
+
4
+ export const Default = () => <VwcSchemeSelect />
5
+ export default {
6
+ title: 'VwcSchemeSelect',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcSelect from '../../dist/VwcSelect'
3
+
4
+ export const Default = () => <VwcSelect />
5
+ export default {
6
+ title: 'VwcSelect',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcSideDrawer from '../../dist/VwcSideDrawer'
3
+
4
+ export const Default = () => <VwcSideDrawer />
5
+ export default {
6
+ title: 'VwcSideDrawer',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcSlider from '../../dist/VwcSlider'
3
+
4
+ export const Default = () => <VwcSlider />
5
+ export default {
6
+ title: 'VwcSlider',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcSnackbar from '../../dist/VwcSnackbar'
3
+
4
+ export const Default = () => <VwcSnackbar />
5
+ export default {
6
+ title: 'VwcSnackbar',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcSurface from '../../dist/VwcSurface'
3
+
4
+ export const Default = () => <VwcSurface />
5
+ export default {
6
+ title: 'VwcSurface',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcSwitch from '../../dist/VwcSwitch'
3
+
4
+ export const Default = () => <VwcSwitch />
5
+ export default {
6
+ title: 'VwcSwitch',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcTab from '../../dist/VwcTab'
3
+
4
+ export const Default = () => <VwcTab />
5
+ export default {
6
+ title: 'VwcTab',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,63 @@
1
+ import React, { useState } from 'react'
2
+ import VwcTabBar from '../../dist/VwcTabBar'
3
+ import VwcTab from '../../dist/VwcTab'
4
+
5
+ export const Default = () => <VwcTabBar/>
6
+
7
+ export const SwitchingContent = () => {
8
+ const [activeTab, switchTab] = useState(0)
9
+ const onActivatedTab = ({ detail: { index } }) => switchTab(index)
10
+
11
+ return <React.Fragment>
12
+ <VwcTabBar
13
+ activeIndex={activeTab}
14
+ onActivated={onActivatedTab}
15
+ >
16
+ <VwcTab
17
+ label='Tab 1'
18
+ />
19
+ <VwcTab
20
+ label='Tab 2'
21
+ />
22
+ </VwcTabBar>
23
+ {activeTab === 0 && <div>Tab 1 contents</div>}
24
+ {activeTab === 1 && <div>Tab 2 contents</div>}
25
+ </React.Fragment>
26
+ }
27
+ export const LimitWidth = () => {
28
+ const [activeTab, switchTab] = useState(0)
29
+ const onActivatedTab = ({ detail: { index } }) => switchTab(index)
30
+
31
+ return <React.Fragment>
32
+ <div style={{ display: 'inline-block' }}>
33
+ <VwcTabBar
34
+ activeIndex={activeTab}
35
+ onActivated={onActivatedTab}
36
+ >
37
+ <VwcTab
38
+ label='Tab 1'
39
+ />
40
+ <VwcTab
41
+ label='Tab 2'
42
+ />
43
+ </VwcTabBar>
44
+ </div>
45
+ {activeTab === 0 && <div>Tab 1 contents</div>}
46
+ {activeTab === 1 && <div>Tab 2 contents</div>}
47
+ </React.Fragment>
48
+ }
49
+
50
+ export default {
51
+ title: 'VwcTabBar',
52
+ argTypes: {
53
+ //
54
+ // Example values
55
+ // numberValue: { control: 'number', defaultValue: 123 },
56
+ // booleanValue: { control: 'boolean', defaultValue: true },
57
+ // objectValue: { control: 'object', defaultValue: {} },
58
+ // stringValue: { control: 'string', defaultValue: 'string' },
59
+ // colorValue: { control: 'color' },
60
+ // dateValue: { control: 'date' }
61
+ //
62
+ }
63
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcTag from '../../dist/VwcTag'
3
+
4
+ export const Default = () => <VwcTag />
5
+ export default {
6
+ title: 'VwcTag',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcText from '../../dist/VwcText'
3
+
4
+ export const Default = () => <VwcText />
5
+ export default {
6
+ title: 'VwcText',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }
@@ -0,0 +1,24 @@
1
+ import React from 'react'
2
+ import VwcTextarea from '../../dist/VwcTextarea'
3
+
4
+ export const Default = () => (
5
+ <VwcTextarea
6
+ onFocus={x => console.log(x)}
7
+ onInput={x => console.log(x)}
8
+ onBlur={x => console.log(x)}
9
+ />
10
+ )
11
+ export default {
12
+ title: 'VwcTextarea',
13
+ argTypes: {
14
+ //
15
+ // Example values
16
+ // numberValue: { control: 'number', defaultValue: 123 },
17
+ // booleanValue: { control: 'boolean', defaultValue: true },
18
+ // objectValue: { control: 'object', defaultValue: {} },
19
+ // stringValue: { control: 'string', defaultValue: 'string' },
20
+ // colorValue: { control: 'color' },
21
+ // dateValue: { control: 'date' }
22
+ //
23
+ }
24
+ }
@@ -0,0 +1,47 @@
1
+ import React, { useState } from 'react'
2
+ import VwcTextfield from '../../dist/VwcTextfield/index'
3
+ import { action } from '@storybook/addon-actions'
4
+
5
+ export const Default = () => (
6
+ <VwcTextfield
7
+ onBlur={x => console.log(x)}
8
+ onFocus={x => console.log(x)}
9
+ onInput={x => console.log(x)}
10
+ />
11
+ )
12
+
13
+ export const Validation = () => {
14
+ const [errorMessage, setErrorMessage] = useState('')
15
+
16
+ return (
17
+ <VwcTextfield
18
+ style={{ width: '100%' }}
19
+ pattern='[a-zA-Z0-9 ]*'
20
+ required
21
+ validationMessage={errorMessage}
22
+ validityTransform={(newValue, nativeValidity) => {
23
+ action('validity')(newValue, nativeValidity)
24
+ if (nativeValidity.patternMismatch) {
25
+ setErrorMessage('You can only use letters and numbers')
26
+ } else if (nativeValidity.valueMissing) {
27
+ setErrorMessage('Field is required')
28
+ }
29
+ }}
30
+ />
31
+ )
32
+ }
33
+
34
+ export default {
35
+ title: 'VwcTextfield',
36
+ argTypes: {
37
+ //
38
+ // Example values
39
+ // numberValue: { control: 'number', defaultValue: 123 },
40
+ // booleanValue: { control: 'boolean', defaultValue: true },
41
+ // objectValue: { control: 'object', defaultValue: {} },
42
+ // stringValue: { control: 'string', defaultValue: 'string' },
43
+ // colorValue: { control: 'color' },
44
+ // dateValue: { control: 'date' }
45
+ //
46
+ }
47
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import VwcThemeSwitch from '../../dist/VwcThemeSwitch'
3
+
4
+ export const Default = () => <VwcThemeSwitch />
5
+ export default {
6
+ title: 'VwcThemeSwitch',
7
+ argTypes: {
8
+ //
9
+ // Example values
10
+ // numberValue: { control: 'number', defaultValue: 123 },
11
+ // booleanValue: { control: 'boolean', defaultValue: true },
12
+ // objectValue: { control: 'object', defaultValue: {} },
13
+ // stringValue: { control: 'string', defaultValue: 'string' },
14
+ // colorValue: { control: 'color' },
15
+ // dateValue: { control: 'date' }
16
+ //
17
+ }
18
+ }