@vonage/vivid-react 2.10.47 → 2.10.58
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/.storybook/main.js +11 -0
- package/.storybook/preview.js +3 -0
- package/.vscode/settings.json +4 -0
- package/README.md +75 -65
- package/babel.config.js +38 -0
- package/package.json +66 -67
- package/rollup.config.js +30 -0
- package/scripts/cli.js +27 -0
- package/scripts/generateWrappers/consts.js +220 -0
- package/scripts/generateWrappers/generator.js +264 -0
- package/scripts/generateWrappers/helpers/generator.js +18 -0
- package/scripts/generateWrappers/helpers/generator.test.js +56 -0
- package/scripts/generateWrappers/prop.types.js +87 -0
- package/scripts/generateWrappers/templates/js/index.tmpl +2 -0
- package/scripts/generateWrappers/templates/js/react-component-v3.tmpl +19 -0
- package/scripts/generateWrappers/templates/js/react-component.tmpl +30 -0
- package/scripts/generateWrappers/templates/js/stories.tmpl +18 -0
- package/scripts/generateWrappers/templates/templates.js +39 -0
- package/scripts/generateWrappers/templates/ts/element-type.tmpl +3 -0
- package/scripts/generateWrappers/templates/ts/index.tmpl +2 -0
- package/scripts/generateWrappers/templates/ts/react-component-v3.tmpl +32 -0
- package/scripts/generateWrappers/templates/ts/react-component.tmpl +28 -0
- package/scripts/generateWrappers/templates/ts/types.tmpl +8 -0
- package/scripts/generateWrappers/utils.js +197 -0
- package/scripts/generateWrappers/utils.test.js +71 -0
- package/scripts/updateDocs.js +42 -0
- package/scripts/updateVividPackages.js +81 -0
- package/src/dataGrid/index.js +15 -0
- package/src/index.js +3 -0
- package/src/initialization/initVivid.js +56 -0
- package/src/patches/VwcCard/index.js +2 -0
- package/src/patches/VwcCard/vwcCardHeadingCrop.js +28 -0
- package/src/patches/VwcCard/vwcCardWithMenu.js +14 -0
- package/src/patches/index.js +6 -0
- package/src/patches/vwcDataGrid.js +26 -0
- package/src/patches/vwcNoteContentOverflow.js +20 -0
- package/src/patches/vwcSetAttributeValue.js +12 -0
- package/src/patches/vwcSnackBarHtmlMessage.js +21 -0
- package/src/patches/vwcTooltip.js +46 -0
- package/stories/v2/VwcAccordion/VwcAccordion.stories.jsx +18 -0
- package/stories/v2/VwcActionGroup/VwcActionGroup.stories.jsx +18 -0
- package/stories/v2/VwcBadge/VwcBadge.stories.jsx +18 -0
- package/stories/v2/VwcBanner/VwcBanner.stories.jsx +18 -0
- package/stories/v2/VwcButton/VwcButton.stories.jsx +18 -0
- package/stories/v2/VwcButtonToggleGroup/VwcButtonToggleGroup.stories.jsx +47 -0
- package/stories/v2/VwcCalendar/VwcCalendar.stories.jsx +18 -0
- package/stories/v2/VwcCalendarEvent/VwcCalendarEvent.stories.jsx +18 -0
- package/stories/v2/VwcCard/VwcCard.stories.jsx +90 -0
- package/stories/v2/VwcCarousel/VwcCarousel.stories.jsx +18 -0
- package/stories/v2/VwcCarouselItem/VwcCarouselItem.stories.jsx +18 -0
- package/stories/v2/VwcCheckListItem/VwcCheckListItem.stories.jsx +18 -0
- package/stories/v2/VwcCheckbox/VwcCheckbox.stories.jsx +18 -0
- package/stories/v2/VwcChip/VwcChip.stories.jsx +18 -0
- package/stories/v2/VwcChipSet/VwcChipSet.stories.jsx +38 -0
- package/stories/v2/VwcCircularProgress/VwcCircularProgress.stories.jsx +18 -0
- package/stories/v2/VwcDataGrid/VwcDataGrid.stories.jsx +109 -0
- package/stories/v2/VwcDataGridColumn/VwcDataGridColumn.stories.jsx +18 -0
- package/stories/v2/VwcDatepicker/VwcDatepicker.stories.jsx +18 -0
- package/stories/v2/VwcDialog/VwcDialog.stories.jsx +18 -0
- package/stories/v2/VwcDrawer/VwcDrawer.stories.jsx +18 -0
- package/stories/v2/VwcDropdown/VwcDropdown.stories.jsx +18 -0
- package/stories/v2/VwcElevation/VwcElevation.stories.jsx +18 -0
- package/stories/v2/VwcEmptyState/VwcEmptyState.stories.jsx +18 -0
- package/stories/v2/VwcExpansionPanel/VwcExpansionPanel.stories.jsx +18 -0
- package/stories/v2/VwcFab/VwcFab.stories.jsx +18 -0
- package/stories/v2/VwcFilePicker/VwcFilePicker.stories.jsx +18 -0
- package/stories/v2/VwcFormfield/VwcFormfield.stories.jsx +18 -0
- package/stories/v2/VwcHelperMessage/VwcHelperMessage.stories.jsx +18 -0
- package/stories/v2/VwcIcon/VwcIcon.stories.jsx +18 -0
- package/stories/v2/VwcIconButton/VwcIconButton.stories.jsx +18 -0
- package/stories/v2/VwcIconButtonToggle/VwcIconButtonToggle.stories.jsx +18 -0
- package/stories/v2/VwcKeypad/VwcKeypad.stories.jsx +18 -0
- package/stories/v2/VwcLayout/VwcLayout.stories.jsx +63 -0
- package/stories/v2/VwcLinearProgress/VwcLinearProgress.stories.jsx +18 -0
- package/stories/v2/VwcList/VwcList.stories.jsx +25 -0
- package/stories/v2/VwcListExpansionPanel/VwcListExpansionPanel.stories.jsx +18 -0
- package/stories/v2/VwcListItem/VwcListItem.stories.jsx +18 -0
- package/stories/v2/VwcMenu/VwcMenu.stories.jsx +41 -0
- package/stories/v2/VwcNotchedOutline/VwcNotchedOutline.stories.jsx +18 -0
- package/stories/v2/VwcNote/VwcNote.stories.jsx +18 -0
- package/stories/v2/VwcPagination/VwcPagination.stories.jsx +18 -0
- package/stories/v2/VwcPopup/VwcPopup.stories.jsx +18 -0
- package/stories/v2/VwcRadio/VwcRadio.stories.jsx +18 -0
- package/stories/v2/VwcRadioListItem/VwcRadioListItem.stories.jsx +18 -0
- package/stories/v2/VwcSchemeSelect/VwcSchemeSelect.stories.jsx +18 -0
- package/stories/v2/VwcSelect/VwcSelect.stories.jsx +18 -0
- package/stories/v2/VwcSideDrawer/VwcSideDrawer.stories.jsx +18 -0
- package/stories/v2/VwcSlider/VwcSlider.stories.jsx +18 -0
- package/stories/v2/VwcSnackbar/VwcSnackbar.stories.jsx +18 -0
- package/stories/v2/VwcSurface/VwcSurface.stories.jsx +18 -0
- package/stories/v2/VwcSwitch/VwcSwitch.stories.jsx +18 -0
- package/stories/v2/VwcTab/VwcTab.stories.jsx +18 -0
- package/stories/v2/VwcTabBar/VwcTabBar.stories.jsx +63 -0
- package/stories/v2/VwcTag/VwcTag.stories.jsx +18 -0
- package/stories/v2/VwcText/VwcText.stories.jsx +18 -0
- package/stories/v2/VwcTextarea/VwcTextarea.stories.jsx +24 -0
- package/stories/v2/VwcTextfield/VwcTextfield.stories.jsx +47 -0
- package/stories/v2/VwcThemeSwitch/VwcThemeSwitch.stories.jsx +18 -0
- package/stories/v2/VwcTooltip/VwcTooltip.stories.jsx +41 -0
- package/stories/v2/VwcTopAppBar/VwcTopAppBar.stories.jsx +18 -0
- package/stories/v2/VwcTopAppBarFixed/VwcTopAppBarFixed.stories.jsx +18 -0
- package/stories/v2/patches/patches.stories.jsx +94 -0
- package/stories/v3/v3.stories.jsx +28 -0
- package/tsconfig.json +70 -0
- package/VwcAccordion/index.d.ts +0 -14
- package/VwcAccordion/index.js +0 -59
- package/VwcAccordion/package.json +0 -11
- package/VwcActionGroup/index.d.ts +0 -18
- package/VwcActionGroup/index.js +0 -90
- package/VwcActionGroup/package.json +0 -11
- package/VwcBadge/index.d.ts +0 -29
- package/VwcBadge/index.js +0 -154
- package/VwcBadge/package.json +0 -11
- package/VwcBanner/index.d.ts +0 -26
- package/VwcBanner/index.js +0 -91
- package/VwcBanner/package.json +0 -11
- package/VwcButton/index.d.ts +0 -55
- package/VwcButton/index.js +0 -240
- package/VwcButton/package.json +0 -11
- package/VwcButtonToggleGroup/index.d.ts +0 -25
- package/VwcButtonToggleGroup/index.js +0 -91
- package/VwcButtonToggleGroup/package.json +0 -11
- package/VwcCalendar/index.d.ts +0 -20
- package/VwcCalendar/index.js +0 -70
- package/VwcCalendar/package.json +0 -11
- package/VwcCalendarEvent/index.d.ts +0 -25
- package/VwcCalendarEvent/index.js +0 -81
- package/VwcCalendarEvent/package.json +0 -11
- package/VwcCard/index.d.ts +0 -23
- package/VwcCard/index.js +0 -76
- package/VwcCard/package.json +0 -11
- package/VwcCarousel/index.d.ts +0 -14
- package/VwcCarousel/index.js +0 -45
- package/VwcCarousel/package.json +0 -11
- package/VwcCarouselItem/index.d.ts +0 -14
- package/VwcCarouselItem/index.js +0 -49
- package/VwcCarouselItem/package.json +0 -11
- package/VwcCheckListItem/index.d.ts +0 -41
- package/VwcCheckListItem/index.js +0 -153
- package/VwcCheckListItem/package.json +0 -11
- package/VwcCheckbox/index.d.ts +0 -34
- package/VwcCheckbox/index.js +0 -126
- package/VwcCheckbox/package.json +0 -11
- package/VwcChip/index.d.ts +0 -31
- package/VwcChip/index.js +0 -106
- package/VwcChip/package.json +0 -11
- package/VwcChipSet/index.d.ts +0 -16
- package/VwcChipSet/index.js +0 -60
- package/VwcChipSet/package.json +0 -11
- package/VwcCircularProgress/index.d.ts +0 -24
- package/VwcCircularProgress/index.js +0 -84
- package/VwcCircularProgress/package.json +0 -11
- package/VwcDataGrid/index.d.ts +0 -33
- package/VwcDataGrid/index.js +0 -122
- package/VwcDataGrid/package.json +0 -11
- package/VwcDataGridColumn/index.d.ts +0 -43
- package/VwcDataGridColumn/index.js +0 -144
- package/VwcDataGridColumn/package.json +0 -11
- package/VwcDatepicker/index.d.ts +0 -120
- package/VwcDatepicker/index.js +0 -422
- package/VwcDatepicker/package.json +0 -11
- package/VwcDialog/index.d.ts +0 -40
- package/VwcDialog/index.js +0 -135
- package/VwcDialog/package.json +0 -11
- package/VwcDrawer/index.d.ts +0 -20
- package/VwcDrawer/index.js +0 -80
- package/VwcDrawer/package.json +0 -11
- package/VwcDropdown/index.d.ts +0 -61
- package/VwcDropdown/index.js +0 -221
- package/VwcDropdown/package.json +0 -11
- package/VwcElevation/index.d.ts +0 -14
- package/VwcElevation/index.js +0 -45
- package/VwcElevation/package.json +0 -11
- package/VwcEmptyState/index.d.ts +0 -18
- package/VwcEmptyState/index.js +0 -59
- package/VwcEmptyState/package.json +0 -11
- package/VwcExpansionPanel/index.d.ts +0 -34
- package/VwcExpansionPanel/index.js +0 -199
- package/VwcExpansionPanel/package.json +0 -11
- package/VwcFab/index.d.ts +0 -32
- package/VwcFab/index.js +0 -124
- package/VwcFab/package.json +0 -11
- package/VwcFilePicker/index.d.ts +0 -24
- package/VwcFilePicker/index.js +0 -88
- package/VwcFilePicker/package.json +0 -11
- package/VwcFormfield/index.d.ts +0 -20
- package/VwcFormfield/index.js +0 -70
- package/VwcFormfield/package.json +0 -11
- package/VwcHelperMessage/index.d.ts +0 -14
- package/VwcHelperMessage/index.js +0 -49
- package/VwcHelperMessage/package.json +0 -11
- package/VwcIcon/index.d.ts +0 -22
- package/VwcIcon/index.js +0 -102
- package/VwcIcon/package.json +0 -11
- package/VwcIconButton/index.d.ts +0 -31
- package/VwcIconButton/index.js +0 -111
- package/VwcIconButton/package.json +0 -11
- package/VwcIconButtonToggle/index.d.ts +0 -37
- package/VwcIconButtonToggle/index.js +0 -136
- package/VwcIconButtonToggle/package.json +0 -11
- package/VwcKeypad/index.d.ts +0 -31
- package/VwcKeypad/index.js +0 -176
- package/VwcKeypad/package.json +0 -11
- package/VwcLayout/index.d.ts +0 -20
- package/VwcLayout/index.js +0 -105
- package/VwcLayout/package.json +0 -11
- package/VwcLinearProgress/index.d.ts +0 -26
- package/VwcLinearProgress/index.js +0 -98
- package/VwcLinearProgress/package.json +0 -11
- package/VwcList/index.d.ts +0 -35
- package/VwcList/index.js +0 -146
- package/VwcList/package.json +0 -11
- package/VwcListExpansionPanel/index.d.ts +0 -19
- package/VwcListExpansionPanel/index.js +0 -68
- package/VwcListExpansionPanel/package.json +0 -11
- package/VwcListItem/index.d.ts +0 -42
- package/VwcListItem/index.js +0 -171
- package/VwcListItem/package.json +0 -11
- package/VwcMenu/index.d.ts +0 -53
- package/VwcMenu/index.js +0 -210
- package/VwcMenu/package.json +0 -11
- package/VwcNotchedOutline/index.d.ts +0 -17
- package/VwcNotchedOutline/index.js +0 -58
- package/VwcNotchedOutline/package.json +0 -11
- package/VwcNote/index.d.ts +0 -18
- package/VwcNote/index.js +0 -59
- package/VwcNote/package.json +0 -11
- package/VwcPagination/index.d.ts +0 -16
- package/VwcPagination/index.js +0 -52
- package/VwcPagination/package.json +0 -11
- package/VwcPopup/index.d.ts +0 -30
- package/VwcPopup/index.js +0 -147
- package/VwcPopup/package.json +0 -11
- package/VwcRadio/index.d.ts +0 -52
- package/VwcRadio/index.js +0 -149
- package/VwcRadio/package.json +0 -11
- package/VwcRadioListItem/index.d.ts +0 -41
- package/VwcRadioListItem/index.js +0 -148
- package/VwcRadioListItem/package.json +0 -11
- package/VwcSchemeSelect/index.d.ts +0 -14
- package/VwcSchemeSelect/index.js +0 -46
- package/VwcSchemeSelect/package.json +0 -11
- package/VwcSelect/index.d.ts +0 -60
- package/VwcSelect/index.js +0 -253
- package/VwcSelect/package.json +0 -11
- package/VwcSideDrawer/index.d.ts +0 -22
- package/VwcSideDrawer/index.js +0 -73
- package/VwcSideDrawer/package.json +0 -11
- package/VwcSlider/index.d.ts +0 -34
- package/VwcSlider/index.js +0 -129
- package/VwcSlider/package.json +0 -11
- package/VwcSnackbar/index.d.ts +0 -42
- package/VwcSnackbar/index.js +0 -138
- package/VwcSnackbar/package.json +0 -11
- package/VwcSurface/index.d.ts +0 -42
- package/VwcSurface/index.js +0 -145
- package/VwcSurface/package.json +0 -11
- package/VwcSwitch/index.d.ts +0 -27
- package/VwcSwitch/index.js +0 -114
- package/VwcSwitch/package.json +0 -11
- package/VwcTab/index.d.ts +0 -40
- package/VwcTab/index.js +0 -151
- package/VwcTab/package.json +0 -11
- package/VwcTabBar/index.d.ts +0 -15
- package/VwcTabBar/index.js +0 -55
- package/VwcTabBar/package.json +0 -11
- package/VwcTag/index.d.ts +0 -34
- package/VwcTag/index.js +0 -115
- package/VwcTag/package.json +0 -11
- package/VwcText/index.d.ts +0 -18
- package/VwcText/index.js +0 -83
- package/VwcText/package.json +0 -11
- package/VwcTextarea/index.d.ts +0 -93
- package/VwcTextarea/index.js +0 -331
- package/VwcTextarea/package.json +0 -11
- package/VwcTextfield/index.d.ts +0 -89
- package/VwcTextfield/index.js +0 -329
- package/VwcTextfield/package.json +0 -11
- package/VwcThemeSwitch/index.d.ts +0 -14
- package/VwcThemeSwitch/index.js +0 -57
- package/VwcThemeSwitch/package.json +0 -11
- package/VwcTooltip/index.d.ts +0 -22
- package/VwcTooltip/index.js +0 -105
- package/VwcTooltip/package.json +0 -11
- package/VwcTopAppBar/index.d.ts +0 -22
- package/VwcTopAppBar/index.js +0 -77
- package/VwcTopAppBar/package.json +0 -11
- package/VwcTopAppBarFixed/index.d.ts +0 -22
- package/VwcTopAppBarFixed/index.js +0 -88
- package/VwcTopAppBarFixed/package.json +0 -11
- package/index.js +0 -281
- package/types/index.d.ts +0 -2
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Patches provided `VwcCard` (styles) to allow a sub menu triggered from an
|
|
3
|
+
* action in the card to appear over the card and not inside of it
|
|
4
|
+
*
|
|
5
|
+
* @param {HTMLElement} element - target `VwcCard` element containing the action
|
|
6
|
+
* that triggers the menu
|
|
7
|
+
* @example <VwcCard ref={vwcCardWithMenu}><VwcMenu slot='actions' /></VwcCard>
|
|
8
|
+
*/
|
|
9
|
+
export const vwcCardWithMenu = (element) => setTimeout(() => {
|
|
10
|
+
const card = element?.shadowRoot.querySelector('.vwc-card')
|
|
11
|
+
if (card) {
|
|
12
|
+
card.style.overflow = 'unset'
|
|
13
|
+
}
|
|
14
|
+
}, 0)
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
const createVaadinGridStylePatchElement = () => {
|
|
2
|
+
const styleElement = document.createElement('style')
|
|
3
|
+
styleElement.innerHTML = `
|
|
4
|
+
#header {
|
|
5
|
+
z-index: 0;
|
|
6
|
+
}
|
|
7
|
+
[part~='cell'] ::slotted(vaadin-grid-cell-content) {
|
|
8
|
+
overflow: visible;
|
|
9
|
+
}`
|
|
10
|
+
return styleElement
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Patches `VwcDataGrid` (styles) to allow cell overflow to show
|
|
15
|
+
* - `VwcSlider` tooltips off the cell boundaries uncropped by the grid
|
|
16
|
+
*
|
|
17
|
+
* @param {HTMLElement} gridElement - target datagrid element to mount the CSS into
|
|
18
|
+
* @example <VwcDataGrid ref={vwcDataGridElementCellOverflowDecorator} />
|
|
19
|
+
*/
|
|
20
|
+
export const vwcDataGridElementCellOverflowDecorator = gridElement =>
|
|
21
|
+
setTimeout(() => {
|
|
22
|
+
const component = gridElement?.shadowRoot
|
|
23
|
+
.querySelector('vaadin-grid')?.shadowRoot
|
|
24
|
+
|
|
25
|
+
component && component.append(createVaadinGridStylePatchElement())
|
|
26
|
+
}, 0)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
const createStyleElement = () => {
|
|
2
|
+
const styleElement = document.createElement('style')
|
|
3
|
+
styleElement.innerHTML = `
|
|
4
|
+
.vwc-note {
|
|
5
|
+
contain: inherit !important;
|
|
6
|
+
}`
|
|
7
|
+
return styleElement
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Patches `VwcNote` (styles) to allow content overflow
|
|
12
|
+
*
|
|
13
|
+
* @param {HTMLElement} noteElement - target element to mount the CSS into
|
|
14
|
+
* @example <VwcNote ref={vwcNoteContentOverflowDecorator} />
|
|
15
|
+
*/
|
|
16
|
+
export const vwcNoteContentOverflowDecorator = noteElement =>
|
|
17
|
+
setTimeout(() => {
|
|
18
|
+
const component = noteElement?.shadowRoot
|
|
19
|
+
component && component.append(createStyleElement())
|
|
20
|
+
}, 0)
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Patches attribute value. You can pass now a `value` to the `VwcIconButton` as
|
|
3
|
+
* in normal buttons
|
|
4
|
+
*
|
|
5
|
+
* @param {any} attribute
|
|
6
|
+
* @param {any} value
|
|
7
|
+
* @param {HTMLElement} element
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export const vwcSetAttributeValue = (attribute, value) => (element) => {
|
|
11
|
+
element?.setAttribute(attribute, value)
|
|
12
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const createHtmlMessageElement = (html) => {
|
|
2
|
+
const element = document.createElement('div')
|
|
3
|
+
element.setAttribute('class', 'mdc-snackbar__label')
|
|
4
|
+
element.setAttribute('role', 'status')
|
|
5
|
+
element.setAttribute('aria-live', 'polite')
|
|
6
|
+
element.innerHTML = html
|
|
7
|
+
return element
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Patches `VwcSnackbar` to allow html message text
|
|
12
|
+
*
|
|
13
|
+
* @param {HTMLElement} element - target element to patch
|
|
14
|
+
* @example <VwcSnackbar ref={vwcSnackBarHtmlMessageDecorator('<b>bold</b>')} />
|
|
15
|
+
*/
|
|
16
|
+
export const vwcSnackBarHtmlMessageDecorator = (htmlMessage = '<b>bold</b>') => element =>
|
|
17
|
+
setTimeout(() => {
|
|
18
|
+
const component = element?.shadowRoot.querySelector('.header-and-label')
|
|
19
|
+
component?.style.setProperty('width', '100%')
|
|
20
|
+
component?.append(createHtmlMessageElement(htmlMessage))
|
|
21
|
+
}, 0)
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Patches provided HTMLElement (styles) to crop long text and
|
|
3
|
+
* shows browser tooltip when actually cropped
|
|
4
|
+
*
|
|
5
|
+
* @param {HTMLElement} element - target element to apply the text cropping logic to
|
|
6
|
+
* @example <span ref={vwcTooltipEllipsisDecorator(text)} >{text}</span>
|
|
7
|
+
*/
|
|
8
|
+
export const vwcTooltipEllipsisDecorator = fullText => element =>
|
|
9
|
+
setTimeout(() => {
|
|
10
|
+
const isTextCropped = element?.clientHeight < element?.scrollHeight
|
|
11
|
+
if (isTextCropped && element) {
|
|
12
|
+
element.setAttribute('title', fullText)
|
|
13
|
+
}
|
|
14
|
+
}, 0)
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Patches provided VwcTooltip instance to open/close tooltip on mouse hover
|
|
18
|
+
*
|
|
19
|
+
* @param {HTMLElement} tooltipElement - target element to apply behavior to
|
|
20
|
+
* @param {number} timeout - timeout before showing tooltip, default: 1000
|
|
21
|
+
* @param {string} minWidth - min width in pixels, default: 'none'
|
|
22
|
+
* @example <VwcTooltip ref={vwcTooltipShowOnHoverDecorator()} />
|
|
23
|
+
*/
|
|
24
|
+
export const vwcTooltipShowOnHoverDecorator = (minWidth = 'none', timeout = 1000) => tooltipElement =>
|
|
25
|
+
setTimeout(() => {
|
|
26
|
+
if (!tooltipElement) {
|
|
27
|
+
return
|
|
28
|
+
}
|
|
29
|
+
const anchorElement = document.getElementById(tooltipElement.anchor)
|
|
30
|
+
if (!anchorElement) {
|
|
31
|
+
return
|
|
32
|
+
}
|
|
33
|
+
anchorElement.style.setProperty('pointer-events', 'auto')
|
|
34
|
+
tooltipElement.style.setProperty('--tooltip-inline-size', minWidth)
|
|
35
|
+
|
|
36
|
+
let showTimeoutHandler
|
|
37
|
+
anchorElement.addEventListener("mouseover", () => {
|
|
38
|
+
showTimeoutHandler = setTimeout(() => {
|
|
39
|
+
tooltipElement.open = true
|
|
40
|
+
}, timeout)
|
|
41
|
+
})
|
|
42
|
+
anchorElement.addEventListener("mouseout", () => {
|
|
43
|
+
clearTimeout(showTimeoutHandler)
|
|
44
|
+
tooltipElement.open = false
|
|
45
|
+
})
|
|
46
|
+
}, 0)
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import VwcAccordion from '../../../dist/VwcAccordion'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcAccordion />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcAccordion',
|
|
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 VwcActionGroup from '../../../dist/VwcActionGroup'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcActionGroup />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcActionGroup',
|
|
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 VwcBadge from '../../../dist/VwcBadge'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcBadge />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcBadge',
|
|
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 VwcBanner from '../../../dist/VwcBanner'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcBanner />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcBanner',
|
|
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 VwcButton from '../../../dist/VwcButton'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcButton />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcButton',
|
|
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,47 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import VwcButtonToggleGroup from '../../../dist/VwcButtonToggleGroup'
|
|
3
|
+
import VwcButton from '../../../dist/VwcButton'
|
|
4
|
+
|
|
5
|
+
export const Default = () => {
|
|
6
|
+
return (
|
|
7
|
+
<VwcButtonToggleGroup required values={['foo']}>
|
|
8
|
+
<VwcButton value='foo'>Foo</VwcButton>
|
|
9
|
+
<VwcButton value='bar'>Bar</VwcButton>
|
|
10
|
+
</VwcButtonToggleGroup>
|
|
11
|
+
)
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export const RealtimeValuesSet = () => {
|
|
15
|
+
return (
|
|
16
|
+
<VwcButtonToggleGroup
|
|
17
|
+
values={[]}
|
|
18
|
+
ref={btnGroupElement =>
|
|
19
|
+
setTimeout(() => {
|
|
20
|
+
if (!btnGroupElement) {
|
|
21
|
+
return
|
|
22
|
+
}
|
|
23
|
+
btnGroupElement.values = ['bar']
|
|
24
|
+
}, 0)
|
|
25
|
+
}
|
|
26
|
+
required
|
|
27
|
+
>
|
|
28
|
+
<VwcButton value='foo'>Foo</VwcButton>
|
|
29
|
+
<VwcButton value='bar'>Bar</VwcButton>
|
|
30
|
+
</VwcButtonToggleGroup>
|
|
31
|
+
)
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export default {
|
|
35
|
+
title: 'V2/VwcButtonToggleGroup',
|
|
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 VwcCalendar from '../../../dist/VwcCalendar'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcCalendar />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcCalendar',
|
|
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 VwcCalendarEvent from '../../../dist/VwcCalendarEvent'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcCalendarEvent />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcCalendarEvent',
|
|
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,90 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import VwcCard from '../../../dist/VwcCard'
|
|
3
|
+
import VwcIconButton from '../../../dist/VwcIconButton'
|
|
4
|
+
import { vwcCardHeadingCropDecorator } from '../../../src'
|
|
5
|
+
|
|
6
|
+
const originalText = 'very loooooo ngt te eeex tkjhn klhkjg hlkjh kjuhk jhkjh kjhk jhk jhjk'
|
|
7
|
+
const damnLoongWordText = 'veryloooooongtteeeextkjhnklhkjghlkjhkjuhkjhkjhkjhk jhk jhjk'
|
|
8
|
+
|
|
9
|
+
export const Default = () => (
|
|
10
|
+
<>
|
|
11
|
+
<div
|
|
12
|
+
style={{
|
|
13
|
+
width: '200px'
|
|
14
|
+
}}
|
|
15
|
+
>
|
|
16
|
+
<VwcCard
|
|
17
|
+
style={{
|
|
18
|
+
'--title-line-clamp': 2
|
|
19
|
+
}}
|
|
20
|
+
heading={originalText}
|
|
21
|
+
ref={vwcCardHeadingCropDecorator(originalText)}
|
|
22
|
+
subtitle='Subtitle'
|
|
23
|
+
></VwcCard>
|
|
24
|
+
</div>
|
|
25
|
+
|
|
26
|
+
<div
|
|
27
|
+
style={{
|
|
28
|
+
width: '200px'
|
|
29
|
+
}}
|
|
30
|
+
>
|
|
31
|
+
<VwcCard
|
|
32
|
+
style={{
|
|
33
|
+
'--title-line-clamp': 2
|
|
34
|
+
}}
|
|
35
|
+
heading={damnLoongWordText}
|
|
36
|
+
ref={vwcCardHeadingCropDecorator(damnLoongWordText)}
|
|
37
|
+
subtitle='Subtitle'
|
|
38
|
+
></VwcCard>
|
|
39
|
+
</div>
|
|
40
|
+
|
|
41
|
+
<VwcCard
|
|
42
|
+
label='All Options'
|
|
43
|
+
heading='All Options on Deck'
|
|
44
|
+
icon='chat-line'
|
|
45
|
+
subtitle='Subtitle'
|
|
46
|
+
text="Use the 'footer' slot in order to add actionable items."
|
|
47
|
+
>
|
|
48
|
+
<VwcIconButton
|
|
49
|
+
slot='graphic'
|
|
50
|
+
connotation='alert'
|
|
51
|
+
icon='bin'
|
|
52
|
+
shape='circled'
|
|
53
|
+
/>
|
|
54
|
+
<div
|
|
55
|
+
style={{
|
|
56
|
+
height: '150px',
|
|
57
|
+
width: '100%',
|
|
58
|
+
backgroundColor: '#871EFF'
|
|
59
|
+
}}
|
|
60
|
+
slot='media'
|
|
61
|
+
></div>
|
|
62
|
+
<VwcIconButton
|
|
63
|
+
slot='meta'
|
|
64
|
+
connotation='alert'
|
|
65
|
+
icon='bin'
|
|
66
|
+
shape='circled'
|
|
67
|
+
/>
|
|
68
|
+
<VwcIconButton
|
|
69
|
+
slot='footer'
|
|
70
|
+
connotation='alert'
|
|
71
|
+
icon='bin'
|
|
72
|
+
shape='circled'
|
|
73
|
+
/>
|
|
74
|
+
</VwcCard>
|
|
75
|
+
</>
|
|
76
|
+
)
|
|
77
|
+
export default {
|
|
78
|
+
title: 'V2/VwcCard',
|
|
79
|
+
argTypes: {
|
|
80
|
+
//
|
|
81
|
+
// Example values
|
|
82
|
+
// numberValue: { control: 'number', defaultValue: 123 },
|
|
83
|
+
// booleanValue: { control: 'boolean', defaultValue: true },
|
|
84
|
+
// objectValue: { control: 'object', defaultValue: {} },
|
|
85
|
+
// stringValue: { control: 'string', defaultValue: 'string' },
|
|
86
|
+
// colorValue: { control: 'color' },
|
|
87
|
+
// dateValue: { control: 'date' }
|
|
88
|
+
//
|
|
89
|
+
}
|
|
90
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import VwcCarousel from '../../../dist/VwcCarousel'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcCarousel />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcCarousel',
|
|
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 VwcCarouselItem from '../../../dist/VwcCarouselItem'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcCarouselItem />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcCarouselItem',
|
|
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 VwcCheckListItem from '../../../dist/VwcCheckListItem'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcCheckListItem />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcCheckListItem',
|
|
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 VwcCheckbox from '../../../dist/VwcCheckbox'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcCheckbox />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcCheckbox',
|
|
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 VwcChip from '../../../dist/VwcChip'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcChip />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcChip',
|
|
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,38 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import VwcChipSet from '../../../dist/VwcChipSet'
|
|
3
|
+
import VwcChip from '../../../dist/VwcChip'
|
|
4
|
+
|
|
5
|
+
export const Default = (argTypes) =>
|
|
6
|
+
<VwcChipSet {...argTypes}>
|
|
7
|
+
<VwcChip label='Chip one' />
|
|
8
|
+
<VwcChip label='Chip two' />
|
|
9
|
+
<VwcChip label='Chip three' />
|
|
10
|
+
</VwcChipSet>
|
|
11
|
+
|
|
12
|
+
export const Filter = (argTypes) =>
|
|
13
|
+
<VwcChipSet {...argTypes}>
|
|
14
|
+
<VwcChip label='Chip one' selected />
|
|
15
|
+
<VwcChip label='Chip two' />
|
|
16
|
+
<VwcChip label='Chip three' />
|
|
17
|
+
</VwcChipSet>
|
|
18
|
+
|
|
19
|
+
export default {
|
|
20
|
+
title: 'V2/VwcChipSet',
|
|
21
|
+
argTypes: {
|
|
22
|
+
type: {
|
|
23
|
+
options: ['action', 'input', 'choice', 'filter'],
|
|
24
|
+
control: { type: 'select' },
|
|
25
|
+
defaultValue: 'filter'
|
|
26
|
+
},
|
|
27
|
+
onSelection: { action: 'onSelection' },
|
|
28
|
+
|
|
29
|
+
//
|
|
30
|
+
// Example values
|
|
31
|
+
// numberValue: { control: 'number', defaultValue: 123 },
|
|
32
|
+
// booleanValue: { control: 'boolean', defaultValue: true },
|
|
33
|
+
// objectValue: { control: 'object', defaultValue: {} },
|
|
34
|
+
// stringValue: { control: 'string', defaultValue: 'string' },
|
|
35
|
+
// colorValue: { control: 'color' },
|
|
36
|
+
// dateValue: { control: 'date' }
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import VwcCircularProgress from '../../../dist/VwcCircularProgress'
|
|
3
|
+
|
|
4
|
+
export const Default = () => <VwcCircularProgress />
|
|
5
|
+
export default {
|
|
6
|
+
title: 'V2/VwcCircularProgress',
|
|
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
|
+
}
|