@vonage/vivid-react 2.10.56 → 2.10.59

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 (461) hide show
  1. package/README.md +17 -7
  2. package/VwcAccordion/index.d.ts +14 -0
  3. package/VwcAccordion/index.js +59 -0
  4. package/VwcAccordion/package.json +11 -0
  5. package/VwcActionGroup/index.d.ts +18 -0
  6. package/VwcActionGroup/index.js +90 -0
  7. package/VwcActionGroup/package.json +11 -0
  8. package/VwcBadge/index.d.ts +29 -0
  9. package/VwcBadge/index.js +154 -0
  10. package/VwcBadge/package.json +11 -0
  11. package/VwcBanner/index.d.ts +26 -0
  12. package/VwcBanner/index.js +91 -0
  13. package/VwcBanner/package.json +11 -0
  14. package/VwcButton/index.d.ts +55 -0
  15. package/VwcButton/index.js +240 -0
  16. package/VwcButton/package.json +11 -0
  17. package/VwcButtonToggleGroup/index.d.ts +25 -0
  18. package/VwcButtonToggleGroup/index.js +91 -0
  19. package/VwcButtonToggleGroup/package.json +11 -0
  20. package/VwcCalendar/index.d.ts +20 -0
  21. package/VwcCalendar/index.js +70 -0
  22. package/VwcCalendar/package.json +11 -0
  23. package/VwcCalendarEvent/index.d.ts +25 -0
  24. package/VwcCalendarEvent/index.js +81 -0
  25. package/VwcCalendarEvent/package.json +11 -0
  26. package/VwcCard/index.d.ts +23 -0
  27. package/VwcCard/index.js +76 -0
  28. package/VwcCard/package.json +11 -0
  29. package/VwcCarousel/index.d.ts +14 -0
  30. package/VwcCarousel/index.js +45 -0
  31. package/VwcCarousel/package.json +11 -0
  32. package/VwcCarouselItem/index.d.ts +14 -0
  33. package/VwcCarouselItem/index.js +49 -0
  34. package/VwcCarouselItem/package.json +11 -0
  35. package/VwcCheckListItem/index.d.ts +41 -0
  36. package/VwcCheckListItem/index.js +153 -0
  37. package/VwcCheckListItem/package.json +11 -0
  38. package/VwcCheckbox/index.d.ts +34 -0
  39. package/VwcCheckbox/index.js +126 -0
  40. package/VwcCheckbox/package.json +11 -0
  41. package/VwcChip/index.d.ts +31 -0
  42. package/VwcChip/index.js +106 -0
  43. package/VwcChip/package.json +11 -0
  44. package/VwcChipSet/index.d.ts +16 -0
  45. package/VwcChipSet/index.js +60 -0
  46. package/VwcChipSet/package.json +11 -0
  47. package/VwcCircularProgress/index.d.ts +24 -0
  48. package/VwcCircularProgress/index.js +84 -0
  49. package/VwcCircularProgress/package.json +11 -0
  50. package/VwcDataGrid/index.d.ts +33 -0
  51. package/VwcDataGrid/index.js +122 -0
  52. package/VwcDataGrid/package.json +11 -0
  53. package/VwcDataGridColumn/index.d.ts +43 -0
  54. package/VwcDataGridColumn/index.js +144 -0
  55. package/VwcDataGridColumn/package.json +11 -0
  56. package/VwcDatepicker/index.d.ts +120 -0
  57. package/VwcDatepicker/index.js +422 -0
  58. package/VwcDatepicker/package.json +11 -0
  59. package/VwcDialog/index.d.ts +40 -0
  60. package/VwcDialog/index.js +135 -0
  61. package/VwcDialog/package.json +11 -0
  62. package/VwcDrawer/index.d.ts +20 -0
  63. package/VwcDrawer/index.js +80 -0
  64. package/VwcDrawer/package.json +11 -0
  65. package/VwcDropdown/index.d.ts +61 -0
  66. package/VwcDropdown/index.js +221 -0
  67. package/VwcDropdown/package.json +11 -0
  68. package/VwcElevation/index.d.ts +14 -0
  69. package/VwcElevation/index.js +45 -0
  70. package/VwcElevation/package.json +11 -0
  71. package/VwcEmptyState/index.d.ts +18 -0
  72. package/VwcEmptyState/index.js +59 -0
  73. package/VwcEmptyState/package.json +11 -0
  74. package/VwcExpansionPanel/index.d.ts +34 -0
  75. package/VwcExpansionPanel/index.js +199 -0
  76. package/VwcExpansionPanel/package.json +11 -0
  77. package/VwcFab/index.d.ts +32 -0
  78. package/VwcFab/index.js +124 -0
  79. package/VwcFab/package.json +11 -0
  80. package/VwcFilePicker/index.d.ts +24 -0
  81. package/VwcFilePicker/index.js +88 -0
  82. package/VwcFilePicker/package.json +11 -0
  83. package/VwcFormfield/index.d.ts +20 -0
  84. package/VwcFormfield/index.js +70 -0
  85. package/VwcFormfield/package.json +11 -0
  86. package/VwcHelperMessage/index.d.ts +14 -0
  87. package/VwcHelperMessage/index.js +49 -0
  88. package/VwcHelperMessage/package.json +11 -0
  89. package/VwcIcon/index.d.ts +22 -0
  90. package/VwcIcon/index.js +102 -0
  91. package/VwcIcon/package.json +11 -0
  92. package/VwcIconButton/index.d.ts +31 -0
  93. package/VwcIconButton/index.js +111 -0
  94. package/VwcIconButton/package.json +11 -0
  95. package/VwcIconButtonToggle/index.d.ts +37 -0
  96. package/VwcIconButtonToggle/index.js +136 -0
  97. package/VwcIconButtonToggle/package.json +11 -0
  98. package/VwcKeypad/index.d.ts +31 -0
  99. package/VwcKeypad/index.js +176 -0
  100. package/VwcKeypad/package.json +11 -0
  101. package/VwcLayout/index.d.ts +20 -0
  102. package/VwcLayout/index.js +105 -0
  103. package/VwcLayout/package.json +11 -0
  104. package/VwcLinearProgress/index.d.ts +26 -0
  105. package/VwcLinearProgress/index.js +98 -0
  106. package/VwcLinearProgress/package.json +11 -0
  107. package/VwcList/index.d.ts +35 -0
  108. package/VwcList/index.js +146 -0
  109. package/VwcList/package.json +11 -0
  110. package/VwcListExpansionPanel/index.d.ts +19 -0
  111. package/VwcListExpansionPanel/index.js +68 -0
  112. package/VwcListExpansionPanel/package.json +11 -0
  113. package/VwcListItem/index.d.ts +42 -0
  114. package/VwcListItem/index.js +171 -0
  115. package/VwcListItem/package.json +11 -0
  116. package/VwcMenu/index.d.ts +53 -0
  117. package/VwcMenu/index.js +210 -0
  118. package/VwcMenu/package.json +11 -0
  119. package/VwcNotchedOutline/index.d.ts +17 -0
  120. package/VwcNotchedOutline/index.js +58 -0
  121. package/VwcNotchedOutline/package.json +11 -0
  122. package/VwcNote/index.d.ts +18 -0
  123. package/VwcNote/index.js +59 -0
  124. package/VwcNote/package.json +11 -0
  125. package/VwcPagination/index.d.ts +17 -0
  126. package/VwcPagination/index.js +55 -0
  127. package/VwcPagination/package.json +11 -0
  128. package/VwcPopup/index.d.ts +30 -0
  129. package/VwcPopup/index.js +147 -0
  130. package/VwcPopup/package.json +11 -0
  131. package/VwcRadio/index.d.ts +52 -0
  132. package/VwcRadio/index.js +149 -0
  133. package/VwcRadio/package.json +11 -0
  134. package/VwcRadioListItem/index.d.ts +41 -0
  135. package/VwcRadioListItem/index.js +148 -0
  136. package/VwcRadioListItem/package.json +11 -0
  137. package/VwcSchemeSelect/index.d.ts +14 -0
  138. package/VwcSchemeSelect/index.js +46 -0
  139. package/VwcSchemeSelect/package.json +11 -0
  140. package/VwcSelect/index.d.ts +60 -0
  141. package/VwcSelect/index.js +253 -0
  142. package/VwcSelect/package.json +11 -0
  143. package/VwcSideDrawer/index.d.ts +22 -0
  144. package/VwcSideDrawer/index.js +73 -0
  145. package/VwcSideDrawer/package.json +11 -0
  146. package/VwcSlider/index.d.ts +34 -0
  147. package/VwcSlider/index.js +129 -0
  148. package/VwcSlider/package.json +11 -0
  149. package/VwcSnackbar/index.d.ts +42 -0
  150. package/VwcSnackbar/index.js +138 -0
  151. package/VwcSnackbar/package.json +11 -0
  152. package/VwcSurface/index.d.ts +42 -0
  153. package/VwcSurface/index.js +145 -0
  154. package/VwcSurface/package.json +11 -0
  155. package/VwcSwitch/index.d.ts +27 -0
  156. package/VwcSwitch/index.js +114 -0
  157. package/VwcSwitch/package.json +11 -0
  158. package/VwcTab/index.d.ts +40 -0
  159. package/VwcTab/index.js +151 -0
  160. package/VwcTab/package.json +11 -0
  161. package/VwcTabBar/index.d.ts +15 -0
  162. package/VwcTabBar/index.js +55 -0
  163. package/VwcTabBar/package.json +11 -0
  164. package/VwcTag/index.d.ts +34 -0
  165. package/VwcTag/index.js +115 -0
  166. package/VwcTag/package.json +11 -0
  167. package/VwcText/index.d.ts +18 -0
  168. package/VwcText/index.js +83 -0
  169. package/VwcText/package.json +11 -0
  170. package/VwcTextarea/index.d.ts +93 -0
  171. package/VwcTextarea/index.js +331 -0
  172. package/VwcTextarea/package.json +11 -0
  173. package/VwcTextfield/index.d.ts +89 -0
  174. package/VwcTextfield/index.js +329 -0
  175. package/VwcTextfield/package.json +11 -0
  176. package/VwcThemeSwitch/index.d.ts +14 -0
  177. package/VwcThemeSwitch/index.js +57 -0
  178. package/VwcThemeSwitch/package.json +11 -0
  179. package/VwcTooltip/index.d.ts +22 -0
  180. package/VwcTooltip/index.js +105 -0
  181. package/VwcTooltip/package.json +11 -0
  182. package/VwcTopAppBar/index.d.ts +22 -0
  183. package/VwcTopAppBar/index.js +77 -0
  184. package/VwcTopAppBar/package.json +11 -0
  185. package/VwcTopAppBarFixed/index.d.ts +22 -0
  186. package/VwcTopAppBarFixed/index.js +88 -0
  187. package/VwcTopAppBarFixed/package.json +11 -0
  188. package/index.js +319 -0
  189. package/package.json +9 -10
  190. package/types/index.d.ts +293 -1
  191. package/v3/VwcAccordion/index.d.ts +17 -0
  192. package/v3/VwcAccordion/index.js +55 -0
  193. package/v3/VwcAccordion/package.json +11 -0
  194. package/v3/VwcAccordionItem/index.d.ts +22 -0
  195. package/v3/VwcAccordionItem/index.js +121 -0
  196. package/v3/VwcAccordionItem/package.json +11 -0
  197. package/v3/VwcActionGroup/index.d.ts +24 -0
  198. package/v3/VwcActionGroup/index.js +139 -0
  199. package/v3/VwcActionGroup/package.json +11 -0
  200. package/v3/VwcAlert/index.d.ts +34 -0
  201. package/v3/VwcAlert/index.js +266 -0
  202. package/v3/VwcAlert/package.json +11 -0
  203. package/v3/VwcAvatar/index.d.ts +26 -0
  204. package/v3/VwcAvatar/index.js +183 -0
  205. package/v3/VwcAvatar/package.json +11 -0
  206. package/v3/VwcBadge/index.d.ts +22 -0
  207. package/v3/VwcBadge/index.js +271 -0
  208. package/v3/VwcBadge/package.json +11 -0
  209. package/v3/VwcBanner/index.d.ts +28 -0
  210. package/v3/VwcBanner/index.js +204 -0
  211. package/v3/VwcBanner/package.json +11 -0
  212. package/v3/VwcBreadcrumb/index.d.ts +15 -0
  213. package/v3/VwcBreadcrumb/index.js +35 -0
  214. package/v3/VwcBreadcrumb/package.json +11 -0
  215. package/v3/VwcBreadcrumbItem/index.d.ts +16 -0
  216. package/v3/VwcBreadcrumbItem/index.js +47 -0
  217. package/v3/VwcBreadcrumbItem/package.json +11 -0
  218. package/v3/VwcButton/index.d.ts +29 -0
  219. package/v3/VwcButton/index.js +286 -0
  220. package/v3/VwcButton/package.json +11 -0
  221. package/v3/VwcCalendar/index.d.ts +35 -0
  222. package/v3/VwcCalendar/index.js +224 -0
  223. package/v3/VwcCalendar/package.json +11 -0
  224. package/v3/VwcCalendarEvent/index.d.ts +28 -0
  225. package/v3/VwcCalendarEvent/index.js +264 -0
  226. package/v3/VwcCalendarEvent/package.json +11 -0
  227. package/v3/VwcCard/index.d.ts +31 -0
  228. package/v3/VwcCard/index.js +154 -0
  229. package/v3/VwcCard/package.json +11 -0
  230. package/v3/VwcCheckbox/index.d.ts +16 -0
  231. package/v3/VwcCheckbox/index.js +100 -0
  232. package/v3/VwcCheckbox/package.json +11 -0
  233. package/v3/VwcCombobox/index.d.ts +22 -0
  234. package/v3/VwcCombobox/index.js +87 -0
  235. package/v3/VwcCombobox/package.json +11 -0
  236. package/v3/VwcDataGrid/index.d.ts +16 -0
  237. package/v3/VwcDataGrid/index.js +118 -0
  238. package/v3/VwcDataGrid/package.json +11 -0
  239. package/v3/VwcDataGridCell/index.d.ts +18 -0
  240. package/v3/VwcDataGridCell/index.js +145 -0
  241. package/v3/VwcDataGridCell/package.json +11 -0
  242. package/v3/VwcDataGridRow/index.d.ts +16 -0
  243. package/v3/VwcDataGridRow/index.js +99 -0
  244. package/v3/VwcDataGridRow/package.json +11 -0
  245. package/v3/VwcDialog/index.d.ts +36 -0
  246. package/v3/VwcDialog/index.js +283 -0
  247. package/v3/VwcDialog/package.json +11 -0
  248. package/v3/VwcDivider/index.d.ts +15 -0
  249. package/v3/VwcDivider/index.js +29 -0
  250. package/v3/VwcDivider/package.json +11 -0
  251. package/v3/VwcElevation/index.d.ts +18 -0
  252. package/v3/VwcElevation/index.js +73 -0
  253. package/v3/VwcElevation/package.json +11 -0
  254. package/v3/VwcEmptyState/index.d.ts +18 -0
  255. package/v3/VwcEmptyState/index.js +81 -0
  256. package/v3/VwcEmptyState/package.json +11 -0
  257. package/v3/VwcFab/index.d.ts +20 -0
  258. package/v3/VwcFab/index.js +134 -0
  259. package/v3/VwcFab/package.json +11 -0
  260. package/v3/VwcFocus/index.d.ts +15 -0
  261. package/v3/VwcFocus/index.js +29 -0
  262. package/v3/VwcFocus/package.json +11 -0
  263. package/v3/VwcHeader/index.d.ts +18 -0
  264. package/v3/VwcHeader/index.js +84 -0
  265. package/v3/VwcHeader/package.json +11 -0
  266. package/v3/VwcIcon/index.d.ts +20 -0
  267. package/v3/VwcIcon/index.js +118 -0
  268. package/v3/VwcIcon/package.json +11 -0
  269. package/v3/VwcLayout/index.d.ts +24 -0
  270. package/v3/VwcLayout/index.js +127 -0
  271. package/v3/VwcLayout/package.json +11 -0
  272. package/v3/VwcListbox/index.d.ts +16 -0
  273. package/v3/VwcListbox/index.js +74 -0
  274. package/v3/VwcListbox/package.json +11 -0
  275. package/v3/VwcListboxOption/index.d.ts +22 -0
  276. package/v3/VwcListboxOption/index.js +104 -0
  277. package/v3/VwcListboxOption/package.json +11 -0
  278. package/v3/VwcMenu/index.d.ts +27 -0
  279. package/v3/VwcMenu/index.js +148 -0
  280. package/v3/VwcMenu/package.json +11 -0
  281. package/v3/VwcMenuItem/index.d.ts +18 -0
  282. package/v3/VwcMenuItem/index.js +97 -0
  283. package/v3/VwcMenuItem/package.json +11 -0
  284. package/v3/VwcNav/index.d.ts +16 -0
  285. package/v3/VwcNav/index.js +35 -0
  286. package/v3/VwcNav/package.json +11 -0
  287. package/v3/VwcNavDisclosure/index.d.ts +21 -0
  288. package/v3/VwcNavDisclosure/index.js +103 -0
  289. package/v3/VwcNavDisclosure/package.json +11 -0
  290. package/v3/VwcNavItem/index.d.ts +17 -0
  291. package/v3/VwcNavItem/index.js +80 -0
  292. package/v3/VwcNavItem/package.json +11 -0
  293. package/v3/VwcNote/index.d.ts +18 -0
  294. package/v3/VwcNote/index.js +132 -0
  295. package/v3/VwcNote/package.json +11 -0
  296. package/v3/VwcNumberField/index.d.ts +20 -0
  297. package/v3/VwcNumberField/index.js +149 -0
  298. package/v3/VwcNumberField/package.json +11 -0
  299. package/v3/VwcPagination/index.d.ts +28 -0
  300. package/v3/VwcPagination/index.js +174 -0
  301. package/v3/VwcPagination/package.json +11 -0
  302. package/v3/VwcPopup/index.d.ts +32 -0
  303. package/v3/VwcPopup/index.js +311 -0
  304. package/v3/VwcPopup/package.json +11 -0
  305. package/v3/VwcProgress/index.d.ts +20 -0
  306. package/v3/VwcProgress/index.js +110 -0
  307. package/v3/VwcProgress/package.json +11 -0
  308. package/v3/VwcProgressRing/index.d.ts +18 -0
  309. package/v3/VwcProgressRing/index.js +79 -0
  310. package/v3/VwcProgressRing/package.json +11 -0
  311. package/v3/VwcRadio/index.d.ts +16 -0
  312. package/v3/VwcRadio/index.js +68 -0
  313. package/v3/VwcRadio/package.json +11 -0
  314. package/v3/VwcRadioGroup/index.d.ts +16 -0
  315. package/v3/VwcRadioGroup/index.js +56 -0
  316. package/v3/VwcRadioGroup/package.json +11 -0
  317. package/v3/VwcSelect/index.d.ts +24 -0
  318. package/v3/VwcSelect/index.js +159 -0
  319. package/v3/VwcSelect/package.json +11 -0
  320. package/v3/VwcSideDrawer/index.d.ts +22 -0
  321. package/v3/VwcSideDrawer/index.js +133 -0
  322. package/v3/VwcSideDrawer/package.json +11 -0
  323. package/v3/VwcSlider/index.d.ts +16 -0
  324. package/v3/VwcSlider/index.js +51 -0
  325. package/v3/VwcSlider/package.json +11 -0
  326. package/v3/VwcSwitch/index.d.ts +18 -0
  327. package/v3/VwcSwitch/index.js +162 -0
  328. package/v3/VwcSwitch/package.json +11 -0
  329. package/v3/VwcTab/index.d.ts +20 -0
  330. package/v3/VwcTab/index.js +81 -0
  331. package/v3/VwcTab/package.json +11 -0
  332. package/v3/VwcTabPanel/index.d.ts +15 -0
  333. package/v3/VwcTabPanel/index.js +35 -0
  334. package/v3/VwcTabPanel/package.json +11 -0
  335. package/v3/VwcTabs/index.d.ts +16 -0
  336. package/v3/VwcTabs/index.js +126 -0
  337. package/v3/VwcTabs/package.json +11 -0
  338. package/v3/VwcTag/index.d.ts +30 -0
  339. package/v3/VwcTag/index.js +266 -0
  340. package/v3/VwcTag/package.json +11 -0
  341. package/v3/VwcTagGroup/index.d.ts +15 -0
  342. package/v3/VwcTagGroup/index.js +29 -0
  343. package/v3/VwcTagGroup/package.json +11 -0
  344. package/v3/VwcTextAnchor/index.d.ts +16 -0
  345. package/v3/VwcTextAnchor/index.js +50 -0
  346. package/v3/VwcTextAnchor/package.json +11 -0
  347. package/v3/VwcTextArea/index.d.ts +16 -0
  348. package/v3/VwcTextArea/index.js +121 -0
  349. package/v3/VwcTextArea/package.json +11 -0
  350. package/v3/VwcTextField/index.d.ts +20 -0
  351. package/v3/VwcTextField/index.js +149 -0
  352. package/v3/VwcTextField/package.json +11 -0
  353. package/v3/VwcToggletip/index.d.ts +24 -0
  354. package/v3/VwcToggletip/index.js +233 -0
  355. package/v3/VwcToggletip/package.json +11 -0
  356. package/v3/VwcTooltip/index.d.ts +23 -0
  357. package/v3/VwcTooltip/index.js +196 -0
  358. package/v3/VwcTooltip/package.json +11 -0
  359. package/v3/VwcTreeItem/index.d.ts +16 -0
  360. package/v3/VwcTreeItem/index.js +78 -0
  361. package/v3/VwcTreeItem/package.json +11 -0
  362. package/v3/VwcTreeView/index.d.ts +15 -0
  363. package/v3/VwcTreeView/index.js +35 -0
  364. package/v3/VwcTreeView/package.json +11 -0
  365. package/.storybook/main.js +0 -11
  366. package/.storybook/preview.js +0 -3
  367. package/babel.config.js +0 -38
  368. package/rollup.config.js +0 -30
  369. package/scripts/cli.js +0 -28
  370. package/scripts/generateWrappers/consts.js +0 -226
  371. package/scripts/generateWrappers/generator.js +0 -130
  372. package/scripts/generateWrappers/helpers/generator.js +0 -18
  373. package/scripts/generateWrappers/helpers/generator.test.js +0 -56
  374. package/scripts/generateWrappers/index.js +0 -0
  375. package/scripts/generateWrappers/prop.types.js +0 -86
  376. package/scripts/generateWrappers/templates/js/index.tmpl +0 -2
  377. package/scripts/generateWrappers/templates/js/react-component.tmpl +0 -30
  378. package/scripts/generateWrappers/templates/js/stories.tmpl +0 -18
  379. package/scripts/generateWrappers/templates/templates.js +0 -36
  380. package/scripts/generateWrappers/templates/ts/index.tmpl +0 -2
  381. package/scripts/generateWrappers/templates/ts/react-component.tmpl +0 -28
  382. package/scripts/generateWrappers/utils.js +0 -226
  383. package/scripts/generateWrappers/utils.test.js +0 -71
  384. package/scripts/updateDocs.js +0 -42
  385. package/scripts/updateVividPackages.js +0 -81
  386. package/src/dataGrid/index.js +0 -15
  387. package/src/index.js +0 -3
  388. package/src/initialization/initVivid.js +0 -24
  389. package/src/patches/VwcCard/index.js +0 -2
  390. package/src/patches/VwcCard/vwcCardHeadingCrop.js +0 -28
  391. package/src/patches/VwcCard/vwcCardWithMenu.js +0 -14
  392. package/src/patches/index.js +0 -6
  393. package/src/patches/vwcDataGrid.js +0 -26
  394. package/src/patches/vwcNoteContentOverflow.js +0 -20
  395. package/src/patches/vwcSetAttributeValue.js +0 -12
  396. package/src/patches/vwcSnackBarHtmlMessage.js +0 -21
  397. package/src/patches/vwcTooltip.js +0 -46
  398. package/stories/VwcAccordion/VwcAccordion.stories.jsx +0 -18
  399. package/stories/VwcActionGroup/VwcActionGroup.stories.jsx +0 -18
  400. package/stories/VwcBadge/VwcBadge.stories.jsx +0 -18
  401. package/stories/VwcBanner/VwcBanner.stories.jsx +0 -18
  402. package/stories/VwcButton/VwcButton.stories.jsx +0 -18
  403. package/stories/VwcButtonToggleGroup/VwcButtonToggleGroup.stories.jsx +0 -47
  404. package/stories/VwcCalendar/VwcCalendar.stories.jsx +0 -18
  405. package/stories/VwcCalendarEvent/VwcCalendarEvent.stories.jsx +0 -18
  406. package/stories/VwcCard/VwcCard.stories.jsx +0 -90
  407. package/stories/VwcCarousel/VwcCarousel.stories.jsx +0 -18
  408. package/stories/VwcCarouselItem/VwcCarouselItem.stories.jsx +0 -18
  409. package/stories/VwcCheckListItem/VwcCheckListItem.stories.jsx +0 -18
  410. package/stories/VwcCheckbox/VwcCheckbox.stories.jsx +0 -18
  411. package/stories/VwcChip/VwcChip.stories.jsx +0 -18
  412. package/stories/VwcChipSet/VwcChipSet.stories.jsx +0 -38
  413. package/stories/VwcCircularProgress/VwcCircularProgress.stories.jsx +0 -18
  414. package/stories/VwcDataGrid/VwcDataGrid.stories.jsx +0 -109
  415. package/stories/VwcDataGridColumn/VwcDataGridColumn.stories.jsx +0 -18
  416. package/stories/VwcDatepicker/VwcDatepicker.stories.jsx +0 -18
  417. package/stories/VwcDialog/VwcDialog.stories.jsx +0 -18
  418. package/stories/VwcDrawer/VwcDrawer.stories.jsx +0 -18
  419. package/stories/VwcDropdown/VwcDropdown.stories.jsx +0 -18
  420. package/stories/VwcElevation/VwcElevation.stories.jsx +0 -18
  421. package/stories/VwcEmptyState/VwcEmptyState.stories.jsx +0 -18
  422. package/stories/VwcExpansionPanel/VwcExpansionPanel.stories.jsx +0 -18
  423. package/stories/VwcFab/VwcFab.stories.jsx +0 -18
  424. package/stories/VwcFilePicker/VwcFilePicker.stories.jsx +0 -18
  425. package/stories/VwcFormfield/VwcFormfield.stories.jsx +0 -18
  426. package/stories/VwcHelperMessage/VwcHelperMessage.stories.jsx +0 -18
  427. package/stories/VwcIcon/VwcIcon.stories.jsx +0 -18
  428. package/stories/VwcIconButton/VwcIconButton.stories.jsx +0 -18
  429. package/stories/VwcIconButtonToggle/VwcIconButtonToggle.stories.jsx +0 -18
  430. package/stories/VwcKeypad/VwcKeypad.stories.jsx +0 -18
  431. package/stories/VwcLayout/VwcLayout.stories.jsx +0 -63
  432. package/stories/VwcLinearProgress/VwcLinearProgress.stories.jsx +0 -18
  433. package/stories/VwcList/VwcList.stories.jsx +0 -25
  434. package/stories/VwcListExpansionPanel/VwcListExpansionPanel.stories.jsx +0 -18
  435. package/stories/VwcListItem/VwcListItem.stories.jsx +0 -18
  436. package/stories/VwcMenu/VwcMenu.stories.jsx +0 -41
  437. package/stories/VwcNotchedOutline/VwcNotchedOutline.stories.jsx +0 -18
  438. package/stories/VwcNote/VwcNote.stories.jsx +0 -18
  439. package/stories/VwcPagination/VwcPagination.stories.jsx +0 -18
  440. package/stories/VwcPopup/VwcPopup.stories.jsx +0 -18
  441. package/stories/VwcRadio/VwcRadio.stories.jsx +0 -18
  442. package/stories/VwcRadioListItem/VwcRadioListItem.stories.jsx +0 -18
  443. package/stories/VwcSchemeSelect/VwcSchemeSelect.stories.jsx +0 -18
  444. package/stories/VwcSelect/VwcSelect.stories.jsx +0 -18
  445. package/stories/VwcSideDrawer/VwcSideDrawer.stories.jsx +0 -18
  446. package/stories/VwcSlider/VwcSlider.stories.jsx +0 -18
  447. package/stories/VwcSnackbar/VwcSnackbar.stories.jsx +0 -18
  448. package/stories/VwcSurface/VwcSurface.stories.jsx +0 -18
  449. package/stories/VwcSwitch/VwcSwitch.stories.jsx +0 -18
  450. package/stories/VwcTab/VwcTab.stories.jsx +0 -18
  451. package/stories/VwcTabBar/VwcTabBar.stories.jsx +0 -63
  452. package/stories/VwcTag/VwcTag.stories.jsx +0 -18
  453. package/stories/VwcText/VwcText.stories.jsx +0 -18
  454. package/stories/VwcTextarea/VwcTextarea.stories.jsx +0 -24
  455. package/stories/VwcTextfield/VwcTextfield.stories.jsx +0 -47
  456. package/stories/VwcThemeSwitch/VwcThemeSwitch.stories.jsx +0 -18
  457. package/stories/VwcTooltip/VwcTooltip.stories.jsx +0 -41
  458. package/stories/VwcTopAppBar/VwcTopAppBar.stories.jsx +0 -18
  459. package/stories/VwcTopAppBarFixed/VwcTopAppBarFixed.stories.jsx +0 -18
  460. package/stories/patches/patches.stories.jsx +0 -94
  461. package/tsconfig.json +0 -70
@@ -1,56 +0,0 @@
1
- const { posix, win32 } = require('path')
2
- const { getImportsFromTag } = require('./generator')
3
-
4
- describe('getImportsFromTag', () => {
5
- const mainComponentTag = {
6
- name: 'vwc-list',
7
- path: './../node_modules/@vonage/vwc-list/src/vwc-list.ts'
8
- }
9
-
10
- const subComponentExclusionTag = {
11
- name: 'vwc-tag',
12
- path: './..\\node_modules\\@vonage\\vwc-tags\\vwc-tag.d.ts'
13
- }
14
-
15
- const subComponentTag = {
16
- name: 'vwc-radio-list-item',
17
- path: './../node_modules/@vonage/vwc-list/src/vwc-radio-list-item.ts'
18
- }
19
-
20
- it('should create a default import for main component', () => {
21
- const result = getImportsFromTag(mainComponentTag)
22
-
23
- expect(result).toEqual([`import '@vonage/vwc-list'`])
24
- })
25
-
26
- it('should create import from specific file for subcomponent and main component import', () => {
27
- const result = getImportsFromTag(subComponentTag)
28
-
29
- expect(result).toEqual([
30
- `import '@vonage/vwc-list'`,
31
- `import '@vonage/vwc-list/${subComponentTag.name}'`
32
- ])
33
- })
34
-
35
- it('should create import from specific file for subcomponent with exclusion', () => {
36
- const result = getImportsFromTag(subComponentExclusionTag)
37
-
38
- expect(result).toEqual([
39
- `import '@vonage/vwc-tags/${subComponentExclusionTag.name}'`
40
- ])
41
- })
42
-
43
- it('should work for win32 paths', () => {
44
- const winTag = {
45
- ...subComponentTag,
46
- path: subComponentTag.path.split(posix.sep).join(win32.sep)
47
- }
48
-
49
- const result = getImportsFromTag(winTag)
50
-
51
- expect(result).toEqual([
52
- `import '@vonage/vwc-list'`,
53
- `import '@vonage/vwc-list/${subComponentTag.name}'`
54
- ])
55
- })
56
- })
File without changes
@@ -1,86 +0,0 @@
1
- const { event2PropName, getProperties } = require('./utils')
2
-
3
- // Common
4
-
5
- const getEvents = tag => (tag.events || []).map(x => x.propName || event2PropName(x.name || x))
6
- const isTypeSet = type => /(".*?" \|)/.test(type)
7
- const isStringTypeSet = type => /".*"[ |]?/.test(type) && /".*"[ |]?/.exec(type)[0] === type
8
- const isBoolean = type => /^(true|false)$/.test(type) || type === 'boolean'
9
- const isArray = type => /(.*)\[\]$/gm.test(type) || type === 'array'
10
- const isNumber = type => /(integer)/.test(type) || type === 'number | null'
11
-
12
- // TypeScript
13
-
14
- const getProps = tag => {
15
- const eventsProps = getEvents(tag).map(x => ` ${x}?: (event: SyntheticEvent) => void`)
16
-
17
- const properties = getProperties(tag)
18
- const mapType = type => ([
19
- 'boolean',
20
- 'Boolean',
21
- 'string',
22
- 'string | null',
23
- 'string | undefined',
24
- 'string | number',
25
- 'number',
26
- 'unknown'].indexOf(type) >= 0 ||
27
- isTypeSet(type))
28
- ? type
29
- : isBoolean(type)
30
- ? 'boolean'
31
- : isNumber(type)
32
- ? 'number'
33
- : isArray(type)
34
- ? 'any[]'
35
- : `any /* ${type} */`
36
- const props = properties.map(x => ` ${x.name}?: ${mapType(x.type)}`)
37
-
38
- return [
39
- ...eventsProps,
40
- ...props
41
- ]
42
- }
43
-
44
- // JavaScript
45
-
46
- const getDefaultProps = tag => {
47
- const defaultProperties = getProperties(tag).filter(x => x.default)
48
- return defaultProperties.map(x => ` ${x.name}: ${x.default}`)
49
- }
50
-
51
- const getPropTypes = tag => {
52
- const eventsPropTypes = getEvents(tag).map(x => ` ${x}: PropTypes.func`)
53
-
54
- const properties = getProperties(tag)
55
- const isString = type => type === 'string | undefined' || type === 'string | null'
56
- const getSetTypeOptions = setType => setType.split('|').map(x => x.trim())
57
- const mapTypeToPropType = type => ['boolean', 'string', 'number', 'array'].indexOf(type) >= 0
58
- ? (type === 'boolean' ? 'bool' : type)
59
- : isStringTypeSet(type)
60
- ? `oneOf([${getSetTypeOptions(type).join(',')}])`
61
- : isString(type)
62
- ? 'string'
63
- : isNumber(type)
64
- ? 'number'
65
- : isArray(type)
66
- ? 'array'
67
- : isBoolean(type)
68
- ? 'bool'
69
- : `any /* ${type || 'type not provided'} */`
70
- const propertiesPropTypes = properties.map(x =>
71
- ` ${x.name}: PropTypes.${mapTypeToPropType(x.type)}${x.default ? `/* default: ${x.default} */` : ''}${x.attribute ? `/* attribute: ${x.attribute} */` : ''}`)
72
-
73
- return [
74
- ...eventsPropTypes,
75
- ...propertiesPropTypes
76
- ]
77
- }
78
-
79
- module.exports = {
80
- // JavaScript
81
- getDefaultProps,
82
- getPropTypes,
83
-
84
- // TypeScript
85
- getProps
86
- }
@@ -1,2 +0,0 @@
1
- <% banner %>
2
- <% exports %>
@@ -1,30 +0,0 @@
1
- <% banner %>
2
- /*
3
- Code in this file were generated using following JSON:
4
- <% descriptor-json %>
5
- */
6
- import PropTypes from 'prop-types'
7
- import wrapper from '@vonage/vivid-react-wrapper'
8
- <% imports %>
9
- <% react-import %>
10
-
11
- <% jsdoc.class %>
12
- const <% component-class-name %> = wrapper('<% tag %>', {
13
- events: [<% events %>],
14
- attributes: [<% attributes %>],
15
- properties: [<% properties %>]
16
- });
17
-
18
- <% component-class-name %>.propTypes = {
19
- <% prop-types %>
20
- }
21
-
22
- <% component-class-name %>.defaultProps = {
23
- <% default-props %>
24
- }
25
-
26
- <% component-class-name %>.displayName = '<% component-class-name %>'
27
-
28
- <% compound-components %>
29
-
30
- export default <% component-class-name %>
@@ -1,18 +0,0 @@
1
- import React from 'react'
2
- import <% component-class-name %> from '../../dist/<% component-class-name %>'
3
-
4
- export const Default = () => <<% component-class-name %> />
5
- export default {
6
- title: '<% component-class-name %>',
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
- }
@@ -1,36 +0,0 @@
1
- /*
2
- * Purpose: Support code-generation activities with templates
3
- */
4
- const { readFileSync } = require('fs')
5
-
6
- const TemplateToken = {
7
- BANNER: '<% banner %>',
8
- IMPORTS: '<% imports %>',
9
- EXPORTS: '<% exports %>',
10
- TAG: '<% tag %>',
11
- COMPONENT_CLASS_NAME: '<% component-class-name %>',
12
- PROP_TYPES: '<% prop-types %>',
13
- PROPS: '<% props %>',
14
- DEFAULT_PROPS: '<% default-props %>',
15
- PROPERTIES: '<% properties %>',
16
- ATTRIBUTES: '<% attributes %>',
17
- EVENTS: '<% events %>',
18
- CLASS_JSDOC: '<% jsdoc.class %>',
19
- TAG_DESCRIPTOR_JSON: '<% descriptor-json %>',
20
- COMPOUND_COMPONENTS: '<% compound-components %>',
21
- REACT_IMPORT: '<% react-import %>'
22
- }
23
-
24
- const GENERATED_CODE_BANNER = `/*
25
- * DO NOT EDIT THIS FILE. IT IS GENERATED
26
- */`
27
- const templatesFolder = `${__dirname}`
28
- const getTemplate = (template, language) =>
29
- readFileSync(`${templatesFolder}/${language}/${template}.tmpl`, { encoding: 'utf8' })
30
- .replace(TemplateToken.BANNER, GENERATED_CODE_BANNER)
31
-
32
- module.exports = {
33
- getTemplate,
34
- TemplateToken,
35
- GENERATED_CODE_BANNER
36
- }
@@ -1,2 +0,0 @@
1
- <% banner %>
2
- <% exports %>
@@ -1,28 +0,0 @@
1
- <% banner %>
2
- /*
3
- Code in this file were generated using following JSON:
4
- <% descriptor-json %>
5
- */
6
- import React, { ReactNode, SyntheticEvent, ForwardRefExoticComponent } from 'react'
7
- import wrapper from '@vonage/vivid-react-wrapper'
8
- <% imports %>
9
-
10
- const WrappedComponent = wrapper('<% tag %>', {
11
- events: [<% events %>],
12
- attributes: [<% attributes %>],
13
- properties: [<% properties %>]
14
- }) as ForwardRefExoticComponent<any>;
15
-
16
- <% jsdoc.class %>
17
- const <% component-class-name %> = (props:
18
- {
19
- children?: ReactNode,
20
- slot?: string,
21
- id?: string,
22
- style?: React.CSSProperties,
23
- ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined,
24
- <% props %>
25
- }
26
- ): JSX.Element => <WrappedComponent {...props}>{props.children}</WrappedComponent>
27
-
28
- export default <% component-class-name %>
@@ -1,226 +0,0 @@
1
- const { join, parse } = require('path')
2
- const { flowRight, map, replace, reverse, startCase, uniqBy } = require('lodash/fp')
3
- const { access, F_OK, readFileSync, readdirSync, existsSync, rmSync, createWriteStream } = require('fs')
4
- const mkdirp = require('mkdirp')
5
- const os = require('os')
6
- const { spawnSync } = require('child_process')
7
- const { WCAConfig, VividRepo, FileName, OutputLanguage, ComponentsBindablePropertiesMap, ComponentsReadOnlyPropertiesMap, ComponentsExtraPropertiesMap } = require('./consts')
8
- const { Octokit } = require('@octokit/core')
9
- const extract = require('extract-zip')
10
- const { copySync } = require('fs-extra')
11
-
12
- const renderPropertyJsDoc = tag => property => `* @param ${property.type ? `{${property.type}}` : ''} ${property.name} ${property.description ? `- ${property.description}` : ''} ${property.attribute ? `attribute: &lt;${getComponentName(tag)} ${property.attribute} />` : ''}`
13
- const renderTagPropertiesJsDoc = tag => getProperties(tag).map(renderPropertyJsDoc(tag)).join('\n')
14
- const renderJsDoc = tag => `/** ${tag.description || ''} \n${renderTagPropertiesJsDoc(tag)}\n*/`
15
- const stripQuotes = input => input.replace(/'/g, '')
16
- const unique = stringArray => Array.from(new Set(stringArray))
17
- const getGithubToken = () => process.env.GITHUB_ACCESS_TOKEN || process.env.GITHUB_TOKEN
18
- const toJsonObjectsList = collection => (collection || []).map(JSON.stringify).join(',')
19
- const toCommaSeparatedList = collection => (collection || []).map(x => `'${stripQuotes(x.name)}'`).join(',')
20
- const capitalize = input => input.replace(/(^|\s)[a-z]/g, s => s.toUpperCase())
21
- const deCapitalize = input => input.replace(/(^|\s)[A-Z]/g, s => s.toLowerCase())
22
- const getComponentName = tag => capitalize(kebab2Camel(tag.name))
23
- const kebab2Camel = input => deCapitalize(input.split('-').map(x => capitalize(x)).join(''))
24
- const snake2Camel = input => deCapitalize(input.split('_').map(x => capitalize(x)).join(''))
25
- const event2PropName = eventName => `on${capitalize(kebab2Camel(snake2Camel(eventName)))}`
26
- const event2EventDescriptor = event => typeof event === 'string'
27
- ? ({ name: event, propName: event2PropName(event) })
28
- : event
29
- const getUniqueEvents = flowRight(
30
- uniqBy('name'),
31
- // need to reverse to have custom events first, to allow overwriting of the ones grabbed from JSDocs
32
- reverse,
33
- map(event2EventDescriptor)
34
- )
35
- const getFileNameFromDispositionHeader = input => /filename=(.*$)/.exec(input)[1]
36
- const isVividPackageName = (packageName) => /@vonage\/vwc-*/.test(packageName)
37
- const getIndexFileName = language => `index.${language === OutputLanguage.TypeScript ? 'tsx' : language}`
38
- const getVividPackageName = componentPath => {
39
- const { dir } = parse(componentPath)
40
- if (dir.indexOf('node_modules') >= 0) {
41
- return /(@vonage\/vwc-.*?)\//.exec(componentPath.replace(/\\/g, '/'))[1]
42
- }
43
- const pathParts = dir.split('\\').join('/').split('/')
44
- if (pathParts.length > 0 && pathParts[pathParts.length - 1] === 'src') {
45
- pathParts.pop()
46
- }
47
- const packageJson = filePath(join(FileName.tempFolder, ...pathParts, FileName.packageJson))
48
- const pkg = getParsedJson(packageJson)
49
- return pkg.name
50
- }
51
- const getYarnCommand = () => `yarn${os.platform() === 'win32' ? '.cmd' : ''}`
52
- const prepareDir = (p, clean = true, verbose = true) => {
53
- if (clean && existsSync(p)) {
54
- if (verbose) {
55
- console.info(`Clearing folder: ${p}`)
56
- }
57
- rmSync(p, { recursive: true })
58
- }
59
- mkdirp.sync(p)
60
- }
61
- const getFirstFolderNameFromPath = path => readdirSync(path, { withFileTypes: true }).find(x => x.isDirectory()).name
62
- const getProperties = tag => (tag.properties || [])
63
- .filter(prop => !(ComponentsReadOnlyPropertiesMap[getComponentName(tag)] || []).includes(prop.name)) // skip readonly properties
64
- .filter(prop => /'.*?'/.test(prop.name) ||
65
- /^([a-zA-Z_$][a-zA-Z\\d_$]*)$/.test(prop.name)) // only props having valid names
66
- .map(prop => {
67
- const isBindable = (ComponentsBindablePropertiesMap[getComponentName(tag)] || []).includes(prop.name) ||
68
- prop.type?.indexOf('=>') > 0 || // property type is function
69
- prop.type?.indexOf('[]') > 0 // property type is array
70
- prop.bindable = isBindable
71
- return prop
72
- }).concat(ComponentsExtraPropertiesMap[getComponentName(tag)] || [])
73
-
74
- const isFileExists = (fileName) => new Promise(
75
- (resolve, reject) => access(
76
- filePath(fileName),
77
- F_OK,
78
- error => error
79
- ? reject(error)
80
- : resolve(fileName)
81
- ))
82
- const filePath = (fileName) => join(process.cwd(), fileName)
83
-
84
- const getParsedJson = (jsonFilePath) => JSON.parse(readFileSync(jsonFilePath, { encoding: 'utf8' }))
85
-
86
- const getVividPackageNames = ({ dependencies, devDependencies }) => {
87
- const packages = [
88
- ...Object.keys(dependencies),
89
- ...Object.keys(devDependencies)
90
- ]
91
- const result = unique(packages).filter(isVividPackageName)
92
- console.log(`Vivid packages detected from ${FileName.packageJson}: \n${result.map(x => ` - ${x}`).join('\n')}`)
93
- return result
94
- }
95
-
96
- const getCustomElementTagsDefinitionsList = (config = WCAConfig) => (vividPackageNames) => new Promise((resolve) => {
97
- const analyzerOutput = filePath(join(config.tempFolder, config.tempFileName))
98
- const child = spawnSync(
99
- 'node',
100
- config.nodeArgumentsFactory(vividPackageNames, analyzerOutput),
101
- { cwd: process.cwd() }
102
- )
103
- if (child.status === 0) {
104
- const output = getParsedJson(analyzerOutput)
105
- const uniqueTags = unique(output.tags.map(x => x.name)).map(x => output.tags.find(y => y.name === x))
106
- return resolve(uniqueTags)
107
- }
108
- })
109
-
110
- const compileTypescript = (rootDir) => async (outDir) =>
111
- spawnSync(
112
- 'node',
113
- [
114
- './node_modules/typescript/lib/tsc.js',
115
- '--project',
116
- filePath('tsconfig.json'),
117
- '--rootDir',
118
- rootDir,
119
- '--outDir',
120
- outDir
121
- ]
122
- )
123
-
124
- const copyStaticAssets = (outputDir, assets) => () => {
125
- const cp = file => {
126
- const source = filePath(file)
127
- const dest = filePath(join(outputDir, file))
128
- copySync(source, dest)
129
- console.info(`Copy static asset ${source} => ${dest}`)
130
- }
131
- assets.split(',').map(assetFileName => cp(assetFileName))
132
- }
133
-
134
- const getInputArgument = (argumentName, defaultValue = null) => {
135
- const argumentObjects = process.argv
136
- .filter(argument => argument.indexOf('=') >= 0)
137
- .map(argument => ({
138
- name: argument.split('=')[0].replace(/--/g, ''),
139
- value: argument.split('=')[1]
140
- }))
141
- const targetArgument = argumentObjects.find(argumentObject => argumentObject.name === argumentName)
142
- return targetArgument ? targetArgument.value : defaultValue
143
- }
144
-
145
- const getVividLatestRelease = async (config = { tempFolder: FileName.tempFolder, tempFileName: FileName.tempVividZipball }) => {
146
- const outFolder = filePath(config.tempFolder)
147
- prepareDir(outFolder, false)
148
- console.log('Fetching latest Vivid release artifact...')
149
- if (!getGithubToken()) {
150
- console.warn('It seems GITHUB_ACCESS_TOKEN or GITHUB_TOKEN environment variable is not defined.')
151
- return
152
- }
153
- const octokit = new Octokit({ auth: getGithubToken() })
154
- const result = await octokit.request(`GET /repos/${VividRepo}/zipball`)
155
- if (result.status === 200) {
156
- const filename = getFileNameFromDispositionHeader(result.headers['content-disposition'])
157
- console.info(`Got zipball ${filename}`)
158
- return new Promise((resolve, reject) => {
159
- const vividZipFileName = join(outFolder, config.tempFileName)
160
- const vividZipStream = createWriteStream(vividZipFileName)
161
- vividZipStream.write(Buffer.from(result.data), async () => {
162
- try {
163
- await extract(vividZipFileName, { dir: outFolder })
164
- } catch (err) {
165
- console.error(err)
166
- reject(err)
167
- }
168
- const vividFolder = join(outFolder, getFirstFolderNameFromPath(outFolder))
169
- console.log(`Installing Vivid packages at: ${vividFolder}...`)
170
- const child = spawnSync(getYarnCommand(), [], { cwd: vividFolder, stdio: 'ignore' })
171
- if (child.status === 0) {
172
- console.log('Analyzing Vivid elements...')
173
- resolve(`${vividFolder}/**/components/**`)
174
- }
175
- resolve()
176
- })
177
- })
178
- }
179
- }
180
-
181
- const getComponentNameFromPackage = flowRight(
182
- replace(/\s/g, ''),
183
- startCase,
184
- replace('@vonage/', '')
185
- )
186
-
187
- const compoundComponentTemplate = (baseName, compositeName, defaultProps) =>
188
- `const ${compositeName} = (props) => createElement(${baseName}, props)
189
-
190
- ${compositeName}.defaultProps = ${JSON.stringify(defaultProps)}
191
-
192
- ${baseName}.${compositeName} = ${compositeName}`
193
-
194
- const prepareCompoundComponents = (baseName, template, compoundComponentsConfig = {}) => () => Object
195
- .entries(compoundComponentsConfig)
196
- .map(([compositeName, defaultProps]) => template(baseName, compositeName, defaultProps))
197
- .join('\n\n')
198
-
199
- module.exports = {
200
- toCommaSeparatedList,
201
- toJsonObjectsList,
202
- compileTypescript,
203
- filePath,
204
- prepareDir,
205
- renderJsDoc,
206
- capitalize,
207
- kebab2Camel,
208
- event2PropName,
209
- event2EventDescriptor,
210
- getComponentNameFromPackage,
211
- getInputArgument,
212
- getUniqueEvents,
213
- isFileExists,
214
- isVividPackageName,
215
- copyStaticAssets,
216
- getIndexFileName,
217
- getProperties,
218
- getComponentName,
219
- getParsedJson,
220
- getVividPackageName,
221
- getVividPackageNames,
222
- getVividLatestRelease,
223
- getCustomElementTagsDefinitionsList,
224
- prepareCompoundComponents,
225
- compoundComponentTemplate
226
- }
@@ -1,71 +0,0 @@
1
- import { jest } from '@jest/globals'
2
- import { getUniqueEvents } from './utils'
3
-
4
- const { getVividPackageNames, event2PropName, prepareCompoundComponents } = require('./utils')
5
-
6
- it('getVividPackageNames', () => {
7
- const packageJson = {
8
- dependencies: {
9
- '@vonage/vwc-button': '0.1',
10
- '@vonage/vwc-icon': '0.2',
11
- '@nvm/vwc-badge': '0.2'
12
- },
13
- devDependencies: {
14
- '@vonage/vwc-dropdown': '0.1',
15
- '@vonage/component': '0.2'
16
- },
17
- otherDependencies: {
18
- '@vonage/vwc-nav': '0.3'
19
- }
20
- }
21
- const expectedList = [
22
- '@vonage/vwc-button',
23
- '@vonage/vwc-icon',
24
- '@vonage/vwc-dropdown'
25
- ]
26
- expect(getVividPackageNames(packageJson)).toStrictEqual(expectedList)
27
- })
28
-
29
- it.each([
30
- ['digit-added', 'onDigitAdded'],
31
- ['userScrubRequest', 'onUserScrubRequest'],
32
- ['vvd_scheme_select', 'onVvdSchemeSelect']
33
- ])(`event2PropName should convert "%s" to "%s"`, (input, expected) => {
34
- expect(event2PropName(input)).toStrictEqual(expected)
35
- })
36
-
37
- it('compound components', () => {
38
- const template = jest.fn()
39
- const config = {
40
- CTA: {
41
- connotation: 'cta',
42
- layout: 'filled'
43
- },
44
- Alert: {
45
- connotation: 'alert',
46
- layout: 'filled'
47
- }
48
- }
49
-
50
- prepareCompoundComponents('VwcButton', template, config)()
51
-
52
- expect(template.mock.calls[0]).toEqual([
53
- 'VwcButton',
54
- 'CTA',
55
- config.CTA
56
- ])
57
- expect(template.mock.calls[1]).toEqual([
58
- 'VwcButton',
59
- 'Alert',
60
- config.Alert
61
- ])
62
- })
63
-
64
- it('getUniqueEvents', () => {
65
- const firstEvent = { name: 'non-unique', propName: 'replaced' }
66
- const secondEvent = { name: 'non-unique', propName: 'targetPropName' }
67
- const uniqueEvent = { name: 'unique', propName: 'onUnique' }
68
- const events = [firstEvent, secondEvent, uniqueEvent]
69
-
70
- expect(getUniqueEvents(events)).toEqual([uniqueEvent, secondEvent])
71
- })
@@ -1,42 +0,0 @@
1
- const os = require('os')
2
- const { getComponentNameFromPackage } = require('./generateWrappers/utils')
3
- const { outputFile, readFile } = require('fs-extra')
4
-
5
- const { isVividPackageName } = require('./generateWrappers/utils')
6
- const { dependencies, devDependencies } = require('../package.json')
7
-
8
- const generateSupportedComponents = () => {
9
- const allDeps = Object.entries({
10
- ...devDependencies,
11
- ...dependencies
12
- })
13
-
14
- const reducePackagesToVividComponentsList = (acc, [name, version]) => {
15
- if (!isVividPackageName(name)) {
16
- return acc
17
- }
18
- const componentName = getComponentNameFromPackage(name)
19
- return [...acc, `| ${componentName} | ${name} | ${version} |`]
20
- }
21
-
22
- return allDeps.reduce(
23
- reducePackagesToVividComponentsList,
24
- [
25
- '| Component Name | Package Name | Package Version |',
26
- '|----------------|--------------|-----------------|'
27
- ]
28
- )
29
- }
30
-
31
- const updateSupportedComponents = async (readmePath) => {
32
- const packageList = generateSupportedComponents()
33
- const readme = await readFile(readmePath, { encoding: 'utf8' })
34
- await outputFile(
35
- readmePath,
36
- // this finds a table, might be a problem if we have more than one ;)
37
- // need the extra empty string to have a new line before the next section
38
- readme.replace(/((\|[ -][^|\r\n]*)+\|(\r?\n|\r)?)+/gm, [...packageList, ''].join(os.EOL))
39
- )
40
- }
41
-
42
- updateSupportedComponents('README.md')