@bethinkpl/design-system 15.2.1 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (250) hide show
  1. package/.eslintrc.js +4 -0
  2. package/.storybook/main.js +16 -8
  3. package/dist/demo.html +1 -8
  4. package/dist/design-system.umd.js +18210 -16610
  5. package/dist/design-system.umd.js.map +1 -1
  6. package/dist/lib/js/components/Badges/Badge/Badge.stories.d.ts +4 -39
  7. package/dist/lib/js/components/Badges/BadgeScore/BadgeScore.stories.d.ts +3 -108
  8. package/dist/lib/js/components/Badges/BadgeScore/BadgeScore.vue.d.ts +3 -46
  9. package/dist/lib/js/components/Banner/Banner.stories.d.ts +4 -2785
  10. package/dist/lib/js/components/Banner/Banner.vue.d.ts +10 -1121
  11. package/dist/lib/js/components/Buttons/Button/Button.stories.d.ts +4 -701
  12. package/dist/lib/js/components/Buttons/Button/Button.vue.d.ts +8 -51
  13. package/dist/lib/js/components/Buttons/IconButton/IconButton.stories.d.ts +9 -4838
  14. package/dist/lib/js/components/Buttons/IconButton/IconButton.vue.d.ts +7 -399
  15. package/dist/lib/js/components/Cards/Card/Card.stories.d.ts +4 -89
  16. package/dist/lib/js/components/Cards/Card/Card.vue.d.ts +2 -29
  17. package/dist/lib/js/components/Cards/CardExpandable/CardExpandable.stories.d.ts +4 -647
  18. package/dist/lib/js/components/Cards/CardExpandable/CardExpandable.vue.d.ts +7 -92
  19. package/dist/lib/js/components/Divider/Divider.stories.d.ts +4 -59
  20. package/dist/lib/js/components/Drawer/Drawer.stories.d.ts +4 -43
  21. package/dist/lib/js/components/Dropdown/Dropdown.stories.d.ts +4 -113
  22. package/dist/lib/js/components/IconText/IconText.stories.d.ts +4 -223
  23. package/dist/lib/js/components/IconText/IconText.vue.d.ts +2 -44
  24. package/dist/lib/js/components/Icons/FeatureIcon/FeatureIcon.stories.d.ts +4 -181
  25. package/dist/lib/js/components/Icons/FeatureIcon/FeatureIcon.vue.d.ts +3 -46
  26. package/dist/lib/js/components/Icons/Icon/Icon.consts.d.ts +4 -3
  27. package/dist/lib/js/components/Icons/Icon/Icon.stories.d.ts +5 -133
  28. package/dist/lib/js/components/Icons/Icon/Icon.vue.d.ts +2 -3
  29. package/dist/lib/js/components/Modal/Modal.vue.d.ts +5 -47
  30. package/dist/lib/js/components/Modals/Modal/Modal.stories.d.ts +7 -7231
  31. package/dist/lib/js/components/Modals/Modal/Modal.vue.d.ts +12 -1140
  32. package/dist/lib/js/components/Modals/ModalDialog/ModalDialog.stories.d.ts +6 -6029
  33. package/dist/lib/js/components/Modals/ModalDialog/ModalDialog.vue.d.ts +5 -1450
  34. package/dist/lib/js/components/NumberInCircle/NumberInCircle.stories.d.ts +3 -3
  35. package/dist/lib/js/components/OverlayHeader/OverlayHeader.stories.d.ts +4 -2055
  36. package/dist/lib/js/components/OverlayHeader/OverlayHeader.vue.d.ts +7 -779
  37. package/dist/lib/js/components/Pagination/Pagination.stories.d.ts +4 -1869
  38. package/dist/lib/js/components/Pagination/Pagination.vue.d.ts +5 -694
  39. package/dist/lib/js/components/Pill/Pill.stories.d.ts +4 -1985
  40. package/dist/lib/js/components/Pill/Pill.vue.d.ts +7 -740
  41. package/dist/lib/js/components/PopOver/PopOver.stories.d.ts +4 -4
  42. package/dist/lib/js/components/ProgressBar/ProgressBar.stories.d.ts +8 -1886
  43. package/dist/lib/js/components/ProgressBar/ProgressBar.vue.d.ts +5 -47
  44. package/dist/lib/js/components/ProgressDonutChart/ProgressDonutChart.stories.d.ts +4 -534
  45. package/dist/lib/js/components/ProgressDonutChart/ProgressDonutChart.vue.d.ts +5 -47
  46. package/dist/lib/js/components/Ripple/Ripple.stories.d.ts +4 -59
  47. package/dist/lib/js/components/Ripple/Ripple.vue.d.ts +1 -1
  48. package/dist/lib/js/components/SectionHeader/SectionHeader.stories.d.ts +4 -555
  49. package/dist/lib/js/components/SectionHeader/SectionHeader.vue.d.ts +5 -48
  50. package/dist/lib/js/components/SelectList/SelectList.stories.d.ts +2 -4
  51. package/dist/lib/js/components/SelectList/SelectList.vue.d.ts +3 -4
  52. package/dist/lib/js/components/SelectList/SelectListItem/SelectListItem.stories.d.ts +4 -563
  53. package/dist/lib/js/components/SelectList/SelectListItem/SelectListItem.vue.d.ts +3 -282
  54. package/dist/lib/js/components/SelectList/SelectListItemDivider/SelectListItemDivider.stories.d.ts +4 -69
  55. package/dist/lib/js/components/SelectList/SelectListItemDivider/SelectListItemDivider.vue.d.ts +3 -35
  56. package/dist/lib/js/components/SelectList/SelectListItemToggle/SelectListItemToggle.stories.d.ts +4 -669
  57. package/dist/lib/js/components/SelectList/SelectListItemToggle/SelectListItemToggle.vue.d.ts +3 -336
  58. package/dist/lib/js/components/Statuses/AccessStatus/AccessStatus.stories.d.ts +4 -497
  59. package/dist/lib/js/components/Statuses/AccessStatus/AccessStatus.vue.d.ts +5 -47
  60. package/dist/lib/js/components/Statuses/BlockadeStatus/BlockadeStatus.vue.d.ts +5 -47
  61. package/dist/lib/js/components/Statuses/BlockadeStatus/BlockedeStatus.stories.d.ts +4 -497
  62. package/dist/lib/js/components/SurveyQuestions/SurveyQuestionOpenEnded/SurveyQuestionOpenEnded.stories.d.ts +4 -3179
  63. package/dist/lib/js/components/SurveyQuestions/SurveyQuestionOpenEnded/SurveyQuestionOpenEnded.vue.d.ts +10 -1358
  64. package/dist/lib/js/components/SurveyQuestions/SurveyQuestionScale/SurveyQuestionScale.stories.d.ts +6 -6945
  65. package/dist/lib/js/components/SurveyQuestions/SurveyQuestionScale/SurveyQuestionScale.vue.d.ts +11 -1478
  66. package/dist/lib/js/components/SurveyQuestions/SurveyQuestionTextarea.vue.d.ts +1 -0
  67. package/dist/lib/js/components/SurveyToggle/SurveyToggle.stories.d.ts +4 -237
  68. package/dist/lib/js/components/SurveyToggle/SurveyToggle.vue.d.ts +3 -48
  69. package/dist/lib/js/components/TabItem/TabItem.stories.d.ts +4 -153
  70. package/dist/lib/js/components/TabItem/TabItem.vue.d.ts +3 -46
  71. package/dist/lib/js/components/Tile/Tile.stories.d.ts +5 -994
  72. package/dist/lib/js/components/Tile/Tile.vue.d.ts +8 -79
  73. package/dist/lib/js/components/Toggles/CounterToggle/CounterToggle.stories.d.ts +4 -185
  74. package/dist/lib/js/components/Toggles/CounterToggle/CounterToggle.vue.d.ts +4 -47
  75. package/dist/lib/js/components/Toggles/ToggleButton/ToggleButton.stories.d.ts +4 -239
  76. package/dist/lib/js/components/Toggles/ToggleButton/ToggleButton.vue.d.ts +3 -29
  77. package/dist/lib/js/components/Well/Well.stories.d.ts +3 -3
  78. package/dist/lib/js/styles/Colors/Colors.stories.d.ts +3 -3
  79. package/dist/lib/js/styles/ColorsThemes/ColorsThemes.stories.d.ts +3 -3
  80. package/dist/lib/js/styles/ColorsTokensLms/ColorsTokensLms.stories.d.ts +3 -3
  81. package/dist/lib/js/styles/ColorsTokensPrimaryBodywork/ColorsTokensPrimaryBodywork.stories.d.ts +3 -3
  82. package/dist/lib/js/styles/ColorsTokensPrimaryWnl/ColorsTokensPrimaryWnl.stories.d.ts +3 -3
  83. package/dist/lib/js/styles/Spacings/Spacings.stories.d.ts +1 -1
  84. package/dist/lib/js/styles/TypographyTokensLms/TypographyTokensLms.stories.d.ts +3 -3
  85. package/dist/lib/js/styles/TypographyVariables/TypographyVariables.stories.d.ts +3 -3
  86. package/docs/117.1156a7c503a067ad8241.manager.bundle.js +2 -0
  87. package/docs/247.6eaf240e.iframe.bundle.js +1 -0
  88. package/docs/255.721b3744029f102ac772.manager.bundle.js +2 -0
  89. package/docs/286.23828fb3.iframe.bundle.js +2 -0
  90. package/docs/295.4e52f65e605e88f7b915.manager.bundle.js +1 -0
  91. package/docs/317.bb9fa3422a439c11ef07.manager.bundle.js +1 -0
  92. package/docs/363.5eecfb3735eae61195ab.manager.bundle.js +586 -0
  93. package/docs/363.5eecfb3735eae61195ab.manager.bundle.js.LICENSE.txt +23 -0
  94. package/docs/39.bfc720d8.iframe.bundle.js +2 -0
  95. package/docs/407.e7bfe1ea814fec553911.manager.bundle.js +2 -0
  96. package/docs/594.bb1a9f64.iframe.bundle.js +2 -0
  97. package/docs/600.5586e4df861d64de85f8.manager.bundle.js +1 -0
  98. package/docs/636.6664115b472db0c0d56f.manager.bundle.js +2 -0
  99. package/docs/{vendors~main.247e7a9b46e986df3069.manager.bundle.js.LICENSE.txt → 636.6664115b472db0c0d56f.manager.bundle.js.LICENSE.txt} +0 -10
  100. package/docs/651.3a01b956.iframe.bundle.js +1 -0
  101. package/docs/690.46a1e07a.iframe.bundle.js +1 -0
  102. package/docs/701.691b9947.iframe.bundle.js +1 -0
  103. package/docs/765.a2b66c95.iframe.bundle.js +2 -0
  104. package/docs/{vendors~main.d572ee99.iframe.bundle.js.LICENSE.txt → 765.a2b66c95.iframe.bundle.js.LICENSE.txt} +0 -16
  105. package/docs/935.19d3d944.iframe.bundle.js +2 -0
  106. package/docs/962.ec348c19.iframe.bundle.js +2 -0
  107. package/docs/977.a265714880f883237672.manager.bundle.js +1 -0
  108. package/docs/iframe.html +1 -1
  109. package/docs/index.html +1 -1
  110. package/docs/main.aca4e1b49e5b812b2501.manager.bundle.js +1 -0
  111. package/docs/main.f449ad1d.iframe.bundle.js +1 -0
  112. package/docs/project.json +1 -1
  113. package/docs/runtime~main.8a21756dfcf63c109f1d.manager.bundle.js +1 -0
  114. package/docs/runtime~main.b2826aa6.iframe.bundle.js +1 -0
  115. package/jest.config.js +3 -6
  116. package/lib/js/components/Badges/Badge/Badge.spec.ts +3 -8
  117. package/lib/js/components/Badges/Badge/Badge.stories.ts +5 -3
  118. package/lib/js/components/Badges/BadgeScore/BadgeScore.spec.ts +3 -7
  119. package/lib/js/components/Badges/BadgeScore/BadgeScore.stories.ts +9 -5
  120. package/lib/js/components/Badges/BadgeScore/BadgeScore.vue +4 -3
  121. package/lib/js/components/Banner/Banner.stories.ts +25 -22
  122. package/lib/js/components/Banner/Banner.vue +11 -28
  123. package/lib/js/components/Buttons/Button/Button.spec.ts +10 -6
  124. package/lib/js/components/Buttons/Button/Button.stories.ts +23 -17
  125. package/lib/js/components/Buttons/Button/Button.vue +5 -7
  126. package/lib/js/components/Buttons/IconButton/IconButton.stories.ts +28 -13
  127. package/lib/js/components/Buttons/IconButton/IconButton.vue +8 -6
  128. package/lib/js/components/Cards/Card/Card.spec.ts +5 -10
  129. package/lib/js/components/Cards/Card/Card.stories.ts +17 -5
  130. package/lib/js/components/Cards/CardExpandable/CardExpandable.spec.ts +7 -12
  131. package/lib/js/components/Cards/CardExpandable/CardExpandable.stories.ts +20 -10
  132. package/lib/js/components/Cards/CardExpandable/CardExpandable.vue +5 -3
  133. package/lib/js/components/Divider/Divider.stories.ts +9 -4
  134. package/lib/js/components/Drawer/Drawer.stories.ts +5 -3
  135. package/lib/js/components/Dropdown/Dropdown.stories.ts +5 -3
  136. package/lib/js/components/IconText/IconText.stories.ts +14 -12
  137. package/lib/js/components/IconText/IconText.vue +2 -1
  138. package/lib/js/components/Icons/FeatureIcon/FeatureIcon.stories.ts +6 -4
  139. package/lib/js/components/Icons/FeatureIcon/FeatureIcon.vue +3 -3
  140. package/lib/js/components/Icons/Icon/Icon.stories.ts +12 -5
  141. package/lib/js/components/Icons/Icon/Icon.vue +3 -3
  142. package/lib/js/components/Modal/Modal.spec.ts +3 -8
  143. package/lib/js/components/Modal/Modal.vue +1 -1
  144. package/lib/js/components/Modals/Modal/Modal.stories.ts +15 -29
  145. package/lib/js/components/Modals/Modal/Modal.vue +10 -10
  146. package/lib/js/components/Modals/ModalDialog/ModalDialog.stories.ts +6 -4
  147. package/lib/js/components/Modals/ModalDialog/ModalDialog.vue +7 -7
  148. package/lib/js/components/NumberInCircle/NumberInCircle.stories.ts +5 -3
  149. package/lib/js/components/OverlayHeader/OverlayHeader.stories.ts +19 -17
  150. package/lib/js/components/OverlayHeader/OverlayHeader.vue +1 -1
  151. package/lib/js/components/Pagination/Pagination.spec.ts +4 -7
  152. package/lib/js/components/Pagination/Pagination.stories.ts +8 -6
  153. package/lib/js/components/Pagination/Pagination.vue +3 -3
  154. package/lib/js/components/Pill/Pill.spec.ts +7 -5
  155. package/lib/js/components/Pill/Pill.stories.ts +5 -3
  156. package/lib/js/components/Pill/Pill.vue +4 -4
  157. package/lib/js/components/PopOver/PopOver.stories.ts +5 -3
  158. package/lib/js/components/PopOver/PopOver.vue +5 -5
  159. package/lib/js/components/ProgressBar/ProgressBar.stories.ts +6 -7
  160. package/lib/js/components/ProgressBar/ProgressBar.vue +6 -4
  161. package/lib/js/components/ProgressDonutChart/ProgressDonutChart.spec.ts +4 -6
  162. package/lib/js/components/ProgressDonutChart/ProgressDonutChart.stories.ts +8 -6
  163. package/lib/js/components/ProgressDonutChart/ProgressDonutChart.vue +1 -1
  164. package/lib/js/components/Ripple/Ripple.stories.ts +5 -3
  165. package/lib/js/components/Ripple/Ripple.vue +10 -10
  166. package/lib/js/components/SectionHeader/SectionHeader.stories.ts +5 -3
  167. package/lib/js/components/SectionHeader/SectionHeader.vue +2 -1
  168. package/lib/js/components/SelectList/SelectList.stories.ts +32 -23
  169. package/lib/js/components/SelectList/SelectListItem/SelectListItem.stories.ts +14 -12
  170. package/lib/js/components/SelectList/SelectListItem/SelectListItem.vue +3 -2
  171. package/lib/js/components/SelectList/SelectListItemDivider/SelectListItemDivider.stories.ts +3 -2
  172. package/lib/js/components/SelectList/SelectListItemToggle/SelectListItemToggle.stories.ts +16 -14
  173. package/lib/js/components/SelectList/SelectListItemToggle/SelectListItemToggle.vue +3 -2
  174. package/lib/js/components/Statuses/AccessStatus/AccessStatus.spec.ts +4 -8
  175. package/lib/js/components/Statuses/AccessStatus/AccessStatus.stories.ts +5 -3
  176. package/lib/js/components/Statuses/BlockadeStatus/BlockadeStatus.spec.ts +4 -8
  177. package/lib/js/components/Statuses/BlockadeStatus/BlockedeStatus.stories.ts +5 -3
  178. package/lib/js/components/SurveyQuestions/SurveyQuestionOpenEnded/SurveyQuestionOpenEnded.stories.ts +5 -5
  179. package/lib/js/components/SurveyQuestions/SurveyQuestionOpenEnded/SurveyQuestionOpenEnded.vue +3 -2
  180. package/lib/js/components/SurveyQuestions/SurveyQuestionScale/SurveyQuestionScale.spec.ts +5 -14
  181. package/lib/js/components/SurveyQuestions/SurveyQuestionScale/SurveyQuestionScale.stories.ts +29 -21
  182. package/lib/js/components/SurveyQuestions/SurveyQuestionScale/SurveyQuestionScale.vue +8 -11
  183. package/lib/js/components/SurveyQuestions/SurveyQuestionTextarea.vue +1 -0
  184. package/lib/js/components/SurveyToggle/SurveyToggle.spec.ts +3 -8
  185. package/lib/js/components/SurveyToggle/SurveyToggle.stories.ts +5 -3
  186. package/lib/js/components/SurveyToggle/SurveyToggle.vue +6 -9
  187. package/lib/js/components/TabItem/TabItem.spec.ts +3 -7
  188. package/lib/js/components/TabItem/TabItem.stories.ts +5 -3
  189. package/lib/js/components/TabItem/TabItem.vue +4 -10
  190. package/lib/js/components/Tile/Tile.spec.ts +14 -18
  191. package/lib/js/components/Tile/Tile.stories.ts +12 -5
  192. package/lib/js/components/Tile/Tile.vue +5 -5
  193. package/lib/js/components/Toggles/CounterToggle/CounterToggle.spec.ts +5 -5
  194. package/lib/js/components/Toggles/CounterToggle/CounterToggle.stories.ts +8 -3
  195. package/lib/js/components/Toggles/CounterToggle/CounterToggle.vue +5 -7
  196. package/lib/js/components/Toggles/ToggleButton/ToggleButton.stories.ts +16 -13
  197. package/lib/js/components/Toggles/ToggleButton/ToggleButton.vue +3 -17
  198. package/lib/js/components/Well/Well.stories.ts +6 -9
  199. package/lib/js/styles/Colors/Colors.stories.ts +5 -3
  200. package/lib/js/styles/ColorsThemes/ColorsThemes.stories.ts +5 -3
  201. package/lib/js/styles/ColorsTokensLms/ColorsTokensLms.stories.ts +5 -3
  202. package/lib/js/styles/ColorsTokensPrimaryBodywork/ColorsTokensPrimaryBodywork.stories.ts +5 -3
  203. package/lib/js/styles/ColorsTokensPrimaryWnl/ColorsTokensPrimaryWnl.stories.ts +5 -3
  204. package/lib/js/styles/Spacings/Spacings.stories.ts +11 -13
  205. package/lib/js/styles/TypographyTokensLms/TypographyTokensLms.stories.ts +5 -3
  206. package/lib/js/styles/TypographyVariables/TypographyVariables.stories.ts +5 -3
  207. package/lib/js/tests/emptyTransformer.ts +3 -1
  208. package/lib/js/typings.d.ts +9 -5
  209. package/package.json +22 -19
  210. package/stylelint.config.js +6 -2
  211. package/tsconfig.json +4 -2
  212. package/vue.config.js +8 -4
  213. package/docs/0.0bd4fd4436a8d1ef1d30.manager.bundle.js +0 -2
  214. package/docs/0.330ac560.iframe.bundle.js +0 -3
  215. package/docs/0.330ac560.iframe.bundle.js.map +0 -1
  216. package/docs/1.7b1bde44.iframe.bundle.js +0 -3
  217. package/docs/1.7b1bde44.iframe.bundle.js.map +0 -1
  218. package/docs/1.b52e4f9c5cc26b3ab941.manager.bundle.js +0 -1
  219. package/docs/10.65aa234815172050014e.manager.bundle.js +0 -1
  220. package/docs/10.9f63d710.iframe.bundle.js +0 -1
  221. package/docs/11.cc4ccf1b.iframe.bundle.js +0 -3
  222. package/docs/11.cc4ccf1b.iframe.bundle.js.map +0 -1
  223. package/docs/2.4511ae7e.iframe.bundle.js +0 -3
  224. package/docs/2.4511ae7e.iframe.bundle.js.map +0 -1
  225. package/docs/3.be646fdb.iframe.bundle.js +0 -1
  226. package/docs/4.56a28fc4.iframe.bundle.js +0 -1
  227. package/docs/5.3df3ab4b52abff899664.manager.bundle.js +0 -2
  228. package/docs/6.63f5637c3f9a33682852.manager.bundle.js +0 -586
  229. package/docs/6.63f5637c3f9a33682852.manager.bundle.js.LICENSE.txt +0 -24
  230. package/docs/7.4282478bb99c2aa1c46e.manager.bundle.js +0 -1
  231. package/docs/8.000736d9.iframe.bundle.js +0 -3
  232. package/docs/8.000736d9.iframe.bundle.js.map +0 -1
  233. package/docs/8.c81223eef5990edfc649.manager.bundle.js +0 -1
  234. package/docs/9.33f72dc1.iframe.bundle.js +0 -1
  235. package/docs/9.45659a2e4dd371822c72.manager.bundle.js +0 -2
  236. package/docs/main.56306661f1672549dbce.manager.bundle.js +0 -1
  237. package/docs/main.6c57cadf.iframe.bundle.js +0 -1
  238. package/docs/runtime~main.016fc6b4.iframe.bundle.js +0 -1
  239. package/docs/runtime~main.a7a714be62d5940f5192.manager.bundle.js +0 -1
  240. package/docs/vendors~main.247e7a9b46e986df3069.manager.bundle.js +0 -2
  241. package/docs/vendors~main.d572ee99.iframe.bundle.js +0 -3
  242. package/docs/vendors~main.d572ee99.iframe.bundle.js.map +0 -1
  243. /package/docs/{0.0bd4fd4436a8d1ef1d30.manager.bundle.js.LICENSE.txt → 117.1156a7c503a067ad8241.manager.bundle.js.LICENSE.txt} +0 -0
  244. /package/docs/{11.cc4ccf1b.iframe.bundle.js.LICENSE.txt → 255.721b3744029f102ac772.manager.bundle.js.LICENSE.txt} +0 -0
  245. /package/docs/{5.3df3ab4b52abff899664.manager.bundle.js.LICENSE.txt → 286.23828fb3.iframe.bundle.js.LICENSE.txt} +0 -0
  246. /package/docs/{2.4511ae7e.iframe.bundle.js.LICENSE.txt → 39.bfc720d8.iframe.bundle.js.LICENSE.txt} +0 -0
  247. /package/docs/{8.000736d9.iframe.bundle.js.LICENSE.txt → 407.e7bfe1ea814fec553911.manager.bundle.js.LICENSE.txt} +0 -0
  248. /package/docs/{9.45659a2e4dd371822c72.manager.bundle.js.LICENSE.txt → 594.bb1a9f64.iframe.bundle.js.LICENSE.txt} +0 -0
  249. /package/docs/{0.330ac560.iframe.bundle.js.LICENSE.txt → 935.19d3d944.iframe.bundle.js.LICENSE.txt} +0 -0
  250. /package/docs/{1.7b1bde44.iframe.bundle.js.LICENSE.txt → 962.ec348c19.iframe.bundle.js.LICENSE.txt} +0 -0
package/docs/project.json CHANGED
@@ -1 +1 @@
1
- {"generatedAt":1681907031126,"builder":{"name":"webpack4"},"hasCustomBabel":false,"hasCustomWebpack":true,"hasStaticDirs":false,"hasStorybookEslint":true,"refCount":0,"metaFramework":{"name":"vue-cli","packageName":"@vue/cli-service","version":"4.5.13"},"packageManager":{"type":"yarn","version":"1.22.19"},"storybookVersion":"6.5.13","language":"typescript","storybookPackages":{"@storybook/vue":{"version":"6.5.13"},"eslint-plugin-storybook":{"version":"0.6.6"}},"framework":{"name":"vue"},"addons":{"@storybook/addon-docs":{"version":"6.5.13"},"@storybook/addon-controls":{"version":"6.5.13"},"@storybook/addon-actions":{"version":"6.5.13"},"@storybook/addon-storysource":{"version":"6.5.13"},"@storybook/addon-viewport":{"version":"6.5.13"},"storybook-addon-designs":{"version":"6.3.1"}}}
1
+ {"generatedAt":1681981500842,"builder":{"name":"webpack5"},"hasCustomBabel":false,"hasCustomWebpack":true,"hasStaticDirs":false,"hasStorybookEslint":true,"refCount":0,"metaFramework":{"name":"vue-cli","packageName":"@vue/cli-service","version":"5.0.4"},"packageManager":{"type":"yarn","version":"1.22.19"},"storybookVersion":"6.5.13","language":"typescript","storybookPackages":{"@storybook/builder-webpack5":{"version":"6.5.13"},"@storybook/manager-webpack5":{"version":"6.5.13"},"@storybook/vue3":{"version":"6.5.13"},"eslint-plugin-storybook":{"version":"0.6.6"}},"framework":{"name":"vue3"},"addons":{"@storybook/addon-actions":{"version":"6.5.16"},"@storybook/addon-docs":{"version":"6.5.15"},"@storybook/addon-controls":{"version":"6.5.15"},"@storybook/addon-storysource":{"version":"6.5.15"},"@storybook/addon-viewport":{"version":"6.5.15"},"storybook-addon-designs":{"version":"6.3.1"}}}
@@ -0,0 +1 @@
1
+ (()=>{"use strict";var deferred,leafPrototypes,getProto,inProgress,__webpack_modules__={},__webpack_module_cache__={};function __webpack_require__(moduleId){var cachedModule=__webpack_module_cache__[moduleId];if(void 0!==cachedModule)return cachedModule.exports;var module=__webpack_module_cache__[moduleId]={id:moduleId,loaded:!1,exports:{}};return __webpack_modules__[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.loaded=!0,module.exports}__webpack_require__.m=__webpack_modules__,deferred=[],__webpack_require__.O=(result,chunkIds,fn,priority)=>{if(!chunkIds){var notFulfilled=1/0;for(i=0;i<deferred.length;i++){for(var[chunkIds,fn,priority]=deferred[i],fulfilled=!0,j=0;j<chunkIds.length;j++)(!1&priority||notFulfilled>=priority)&&Object.keys(__webpack_require__.O).every((key=>__webpack_require__.O[key](chunkIds[j])))?chunkIds.splice(j--,1):(fulfilled=!1,priority<notFulfilled&&(notFulfilled=priority));if(fulfilled){deferred.splice(i--,1);var r=fn();void 0!==r&&(result=r)}}return result}priority=priority||0;for(var i=deferred.length;i>0&&deferred[i-1][2]>priority;i--)deferred[i]=deferred[i-1];deferred[i]=[chunkIds,fn,priority]},__webpack_require__.n=module=>{var getter=module&&module.__esModule?()=>module.default:()=>module;return __webpack_require__.d(getter,{a:getter}),getter},getProto=Object.getPrototypeOf?obj=>Object.getPrototypeOf(obj):obj=>obj.__proto__,__webpack_require__.t=function(value,mode){if(1&mode&&(value=this(value)),8&mode)return value;if("object"==typeof value&&value){if(4&mode&&value.__esModule)return value;if(16&mode&&"function"==typeof value.then)return value}var ns=Object.create(null);__webpack_require__.r(ns);var def={};leafPrototypes=leafPrototypes||[null,getProto({}),getProto([]),getProto(getProto)];for(var current=2&mode&&value;"object"==typeof current&&!~leafPrototypes.indexOf(current);current=getProto(current))Object.getOwnPropertyNames(current).forEach((key=>def[key]=()=>value[key]));return def.default=()=>value,__webpack_require__.d(ns,def),ns},__webpack_require__.d=(exports,definition)=>{for(var key in definition)__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)&&Object.defineProperty(exports,key,{enumerable:!0,get:definition[key]})},__webpack_require__.f={},__webpack_require__.e=chunkId=>Promise.all(Object.keys(__webpack_require__.f).reduce(((promises,key)=>(__webpack_require__.f[key](chunkId,promises),promises)),[])),__webpack_require__.u=chunkId=>chunkId+"."+{117:"1156a7c503a067ad8241",255:"721b3744029f102ac772",295:"4e52f65e605e88f7b915",317:"bb9fa3422a439c11ef07",363:"5eecfb3735eae61195ab",407:"e7bfe1ea814fec553911",600:"5586e4df861d64de85f8",977:"a265714880f883237672"}[chunkId]+".manager.bundle.js",__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),__webpack_require__.hmd=module=>((module=Object.create(module)).children||(module.children=[]),Object.defineProperty(module,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+module.id)}}),module),__webpack_require__.o=(obj,prop)=>Object.prototype.hasOwnProperty.call(obj,prop),inProgress={},__webpack_require__.l=(url,done,key,chunkId)=>{if(inProgress[url])inProgress[url].push(done);else{var script,needAttach;if(void 0!==key)for(var scripts=document.getElementsByTagName("script"),i=0;i<scripts.length;i++){var s=scripts[i];if(s.getAttribute("src")==url||s.getAttribute("data-webpack")=="@bethinkpl/design-system:"+key){script=s;break}}script||(needAttach=!0,(script=document.createElement("script")).charset="utf-8",script.timeout=120,__webpack_require__.nc&&script.setAttribute("nonce",__webpack_require__.nc),script.setAttribute("data-webpack","@bethinkpl/design-system:"+key),script.src=url),inProgress[url]=[done];var onScriptComplete=(prev,event)=>{script.onerror=script.onload=null,clearTimeout(timeout);var doneFns=inProgress[url];if(delete inProgress[url],script.parentNode&&script.parentNode.removeChild(script),doneFns&&doneFns.forEach((fn=>fn(event))),prev)return prev(event)},timeout=setTimeout(onScriptComplete.bind(null,void 0,{type:"timeout",target:script}),12e4);script.onerror=onScriptComplete.bind(null,script.onerror),script.onload=onScriptComplete.bind(null,script.onload),needAttach&&document.head.appendChild(script)}},__webpack_require__.r=exports=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(exports,"__esModule",{value:!0})},__webpack_require__.nmd=module=>(module.paths=[],module.children||(module.children=[]),module),__webpack_require__.p="",(()=>{var installedChunks={303:0};__webpack_require__.f.j=(chunkId,promises)=>{var installedChunkData=__webpack_require__.o(installedChunks,chunkId)?installedChunks[chunkId]:void 0;if(0!==installedChunkData)if(installedChunkData)promises.push(installedChunkData[2]);else if(303!=chunkId){var promise=new Promise(((resolve,reject)=>installedChunkData=installedChunks[chunkId]=[resolve,reject]));promises.push(installedChunkData[2]=promise);var url=__webpack_require__.p+__webpack_require__.u(chunkId),error=new Error;__webpack_require__.l(url,(event=>{if(__webpack_require__.o(installedChunks,chunkId)&&(0!==(installedChunkData=installedChunks[chunkId])&&(installedChunks[chunkId]=void 0),installedChunkData)){var errorType=event&&("load"===event.type?"missing":event.type),realSrc=event&&event.target&&event.target.src;error.message="Loading chunk "+chunkId+" failed.\n("+errorType+": "+realSrc+")",error.name="ChunkLoadError",error.type=errorType,error.request=realSrc,installedChunkData[1](error)}}),"chunk-"+chunkId,chunkId)}else installedChunks[chunkId]=0},__webpack_require__.O.j=chunkId=>0===installedChunks[chunkId];var webpackJsonpCallback=(parentChunkLoadingFunction,data)=>{var moduleId,chunkId,[chunkIds,moreModules,runtime]=data,i=0;if(chunkIds.some((id=>0!==installedChunks[id]))){for(moduleId in moreModules)__webpack_require__.o(moreModules,moduleId)&&(__webpack_require__.m[moduleId]=moreModules[moduleId]);if(runtime)var result=runtime(__webpack_require__)}for(parentChunkLoadingFunction&&parentChunkLoadingFunction(data);i<chunkIds.length;i++)chunkId=chunkIds[i],__webpack_require__.o(installedChunks,chunkId)&&installedChunks[chunkId]&&installedChunks[chunkId][0](),installedChunks[chunkId]=0;return __webpack_require__.O(result)},chunkLoadingGlobal=self.webpackChunk_bethinkpl_design_system=self.webpackChunk_bethinkpl_design_system||[];chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null,0)),chunkLoadingGlobal.push=webpackJsonpCallback.bind(null,chunkLoadingGlobal.push.bind(chunkLoadingGlobal))})(),__webpack_require__.nc=void 0})();
@@ -0,0 +1 @@
1
+ (()=>{"use strict";var deferred,leafPrototypes,getProto,inProgress,__webpack_modules__={},__webpack_module_cache__={};function __webpack_require__(moduleId){var cachedModule=__webpack_module_cache__[moduleId];if(void 0!==cachedModule)return cachedModule.exports;var module=__webpack_module_cache__[moduleId]={id:moduleId,loaded:!1,exports:{}};return __webpack_modules__[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.loaded=!0,module.exports}__webpack_require__.m=__webpack_modules__,deferred=[],__webpack_require__.O=(result,chunkIds,fn,priority)=>{if(!chunkIds){var notFulfilled=1/0;for(i=0;i<deferred.length;i++){for(var[chunkIds,fn,priority]=deferred[i],fulfilled=!0,j=0;j<chunkIds.length;j++)(!1&priority||notFulfilled>=priority)&&Object.keys(__webpack_require__.O).every((key=>__webpack_require__.O[key](chunkIds[j])))?chunkIds.splice(j--,1):(fulfilled=!1,priority<notFulfilled&&(notFulfilled=priority));if(fulfilled){deferred.splice(i--,1);var r=fn();void 0!==r&&(result=r)}}return result}priority=priority||0;for(var i=deferred.length;i>0&&deferred[i-1][2]>priority;i--)deferred[i]=deferred[i-1];deferred[i]=[chunkIds,fn,priority]},__webpack_require__.n=module=>{var getter=module&&module.__esModule?()=>module.default:()=>module;return __webpack_require__.d(getter,{a:getter}),getter},getProto=Object.getPrototypeOf?obj=>Object.getPrototypeOf(obj):obj=>obj.__proto__,__webpack_require__.t=function(value,mode){if(1&mode&&(value=this(value)),8&mode)return value;if("object"==typeof value&&value){if(4&mode&&value.__esModule)return value;if(16&mode&&"function"==typeof value.then)return value}var ns=Object.create(null);__webpack_require__.r(ns);var def={};leafPrototypes=leafPrototypes||[null,getProto({}),getProto([]),getProto(getProto)];for(var current=2&mode&&value;"object"==typeof current&&!~leafPrototypes.indexOf(current);current=getProto(current))Object.getOwnPropertyNames(current).forEach((key=>def[key]=()=>value[key]));return def.default=()=>value,__webpack_require__.d(ns,def),ns},__webpack_require__.d=(exports,definition)=>{for(var key in definition)__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)&&Object.defineProperty(exports,key,{enumerable:!0,get:definition[key]})},__webpack_require__.f={},__webpack_require__.e=chunkId=>Promise.all(Object.keys(__webpack_require__.f).reduce(((promises,key)=>(__webpack_require__.f[key](chunkId,promises),promises)),[])),__webpack_require__.u=chunkId=>chunkId+"."+{39:"bfc720d8",247:"6eaf240e",286:"23828fb3",594:"bb1a9f64",651:"3a01b956",690:"46a1e07a",701:"691b9947",935:"19d3d944",962:"ec348c19"}[chunkId]+".iframe.bundle.js",__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),__webpack_require__.hmd=module=>((module=Object.create(module)).children||(module.children=[]),Object.defineProperty(module,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+module.id)}}),module),__webpack_require__.o=(obj,prop)=>Object.prototype.hasOwnProperty.call(obj,prop),inProgress={},__webpack_require__.l=(url,done,key,chunkId)=>{if(inProgress[url])inProgress[url].push(done);else{var script,needAttach;if(void 0!==key)for(var scripts=document.getElementsByTagName("script"),i=0;i<scripts.length;i++){var s=scripts[i];if(s.getAttribute("src")==url||s.getAttribute("data-webpack")=="@bethinkpl/design-system:"+key){script=s;break}}script||(needAttach=!0,(script=document.createElement("script")).charset="utf-8",script.timeout=120,__webpack_require__.nc&&script.setAttribute("nonce",__webpack_require__.nc),script.setAttribute("data-webpack","@bethinkpl/design-system:"+key),script.src=url),inProgress[url]=[done];var onScriptComplete=(prev,event)=>{script.onerror=script.onload=null,clearTimeout(timeout);var doneFns=inProgress[url];if(delete inProgress[url],script.parentNode&&script.parentNode.removeChild(script),doneFns&&doneFns.forEach((fn=>fn(event))),prev)return prev(event)},timeout=setTimeout(onScriptComplete.bind(null,void 0,{type:"timeout",target:script}),12e4);script.onerror=onScriptComplete.bind(null,script.onerror),script.onload=onScriptComplete.bind(null,script.onload),needAttach&&document.head.appendChild(script)}},__webpack_require__.r=exports=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(exports,"__esModule",{value:!0})},__webpack_require__.nmd=module=>(module.paths=[],module.children||(module.children=[]),module),__webpack_require__.p="",(()=>{var installedChunks={303:0};__webpack_require__.f.j=(chunkId,promises)=>{var installedChunkData=__webpack_require__.o(installedChunks,chunkId)?installedChunks[chunkId]:void 0;if(0!==installedChunkData)if(installedChunkData)promises.push(installedChunkData[2]);else if(303!=chunkId){var promise=new Promise(((resolve,reject)=>installedChunkData=installedChunks[chunkId]=[resolve,reject]));promises.push(installedChunkData[2]=promise);var url=__webpack_require__.p+__webpack_require__.u(chunkId),error=new Error;__webpack_require__.l(url,(event=>{if(__webpack_require__.o(installedChunks,chunkId)&&(0!==(installedChunkData=installedChunks[chunkId])&&(installedChunks[chunkId]=void 0),installedChunkData)){var errorType=event&&("load"===event.type?"missing":event.type),realSrc=event&&event.target&&event.target.src;error.message="Loading chunk "+chunkId+" failed.\n("+errorType+": "+realSrc+")",error.name="ChunkLoadError",error.type=errorType,error.request=realSrc,installedChunkData[1](error)}}),"chunk-"+chunkId,chunkId)}else installedChunks[chunkId]=0},__webpack_require__.O.j=chunkId=>0===installedChunks[chunkId];var webpackJsonpCallback=(parentChunkLoadingFunction,data)=>{var moduleId,chunkId,[chunkIds,moreModules,runtime]=data,i=0;if(chunkIds.some((id=>0!==installedChunks[id]))){for(moduleId in moreModules)__webpack_require__.o(moreModules,moduleId)&&(__webpack_require__.m[moduleId]=moreModules[moduleId]);if(runtime)var result=runtime(__webpack_require__)}for(parentChunkLoadingFunction&&parentChunkLoadingFunction(data);i<chunkIds.length;i++)chunkId=chunkIds[i],__webpack_require__.o(installedChunks,chunkId)&&installedChunks[chunkId]&&installedChunks[chunkId][0](),installedChunks[chunkId]=0;return __webpack_require__.O(result)},chunkLoadingGlobal=self.webpackChunk_bethinkpl_design_system=self.webpackChunk_bethinkpl_design_system||[];chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null,0)),chunkLoadingGlobal.push=webpackJsonpCallback.bind(null,chunkLoadingGlobal.push.bind(chunkLoadingGlobal))})(),__webpack_require__.nc=void 0})();
package/jest.config.js CHANGED
@@ -12,17 +12,14 @@ module.exports = {
12
12
  transform: {
13
13
  '^.+\\.js$': 'babel-jest',
14
14
  '^.+\\.ts$': 'ts-jest',
15
- '.*\\.(vue)$': 'vue-jest',
15
+ '.*\\.(vue)$': '@vue/vue3-jest',
16
16
  '^.+\\.scss': '<rootDir>/lib/js/tests/emptyTransformer.ts',
17
17
  '^.+\\.svg$': '<rootDir>/lib/js/tests/emptyTransformer.ts',
18
18
  },
19
19
  moduleFileExtensions: ['js', 'vue', 'json', 'ts'],
20
20
 
21
21
  setupFilesAfterEnv: ['<rootDir>/lib/js/typings.d.ts', '<rootDir>/lib/js/tests/globals.ts'],
22
- globals: {
23
- 'ts-jest': {
24
- tsconfig: './tsconfig.json',
25
- isolatedModules: true,
26
- },
22
+ testEnvironmentOptions: {
23
+ customExportConditions: ['node', 'node-addons'],
27
24
  },
28
25
  };
@@ -1,20 +1,15 @@
1
- import { createLocalVue, shallowMount } from '@vue/test-utils';
1
+ import { shallowMount } from '@vue/test-utils';
2
2
 
3
3
  import Badge from './Badge.vue';
4
4
  import { BADGE_COLORS } from './Badge.consts';
5
5
 
6
6
  describe('Badge', () => {
7
7
  const createComponent = ({ label = '' } = {}) => {
8
- const localVue = createLocalVue();
9
-
10
8
  return shallowMount(Badge, {
11
- localVue,
12
- mocks: {},
13
- propsData: {
9
+ props: {
14
10
  label,
15
11
  color: BADGE_COLORS.NEUTRAL,
16
- },
17
- stubs: {},
12
+ } as any,
18
13
  });
19
14
  };
20
15
 
@@ -1,16 +1,18 @@
1
1
  import Badge from './Badge.vue';
2
2
  import { BADGE_COLORS } from './Badge.consts';
3
3
 
4
- import { Args, ArgTypes, Meta, StoryFn } from '@storybook/vue';
4
+ import { Args, ArgTypes, Meta, StoryFn } from '@storybook/vue3';
5
5
 
6
6
  export default {
7
7
  title: 'Components/Badges/Badge',
8
8
  component: Badge,
9
9
  } as Meta<typeof Badge>;
10
10
 
11
- const StoryTemplate: StoryFn<typeof Badge> = (argTypes) => ({
11
+ const StoryTemplate: StoryFn<typeof Badge> = (args) => ({
12
12
  components: { Badge },
13
- props: Object.keys(argTypes),
13
+ setup() {
14
+ return { ...args };
15
+ },
14
16
  template:
15
17
  '<div style="display: flex"><Badge :color="color" :label="label"><img alt="Badge" style="width: 100%; height: 100%" :src="iconUrl" /></Badge></div>',
16
18
  });
@@ -1,4 +1,4 @@
1
- import { createLocalVue, shallowMount } from '@vue/test-utils';
1
+ import { shallowMount } from '@vue/test-utils';
2
2
 
3
3
  import BadgeScore from './BadgeScore.vue';
4
4
  import { BADGE_SCORE_COLORS, BADGE_SCORE_SIZES } from './BadgeScore.consts';
@@ -9,16 +9,12 @@ describe('BadgeScore', () => {
9
9
  color = BADGE_SCORE_COLORS.SUCCESS as string,
10
10
  size = BADGE_SCORE_SIZES.MEDIUM as string,
11
11
  } = {}) => {
12
- const localVue = createLocalVue();
13
-
14
12
  return shallowMount(BadgeScore, {
15
- localVue,
16
- mocks: {},
17
- propsData: {
13
+ props: {
18
14
  color,
19
15
  size,
20
16
  text,
21
- },
17
+ } as any,
22
18
  });
23
19
  };
24
20
 
@@ -2,7 +2,7 @@ import BadgeScore from './BadgeScore.vue';
2
2
  import { BADGE_SCORE_COLORS, BADGE_SCORE_SIZES } from './BadgeScore.consts';
3
3
  import { ICONS } from '../../Icons/Icon';
4
4
 
5
- import { Meta, StoryFn } from '@storybook/vue';
5
+ import { Meta, StoryFn } from '@storybook/vue3';
6
6
 
7
7
  export default {
8
8
  title: 'Components/Badges/BadgeScore',
@@ -17,9 +17,11 @@ const StoryTemplate: StoryFn<{
17
17
  size: string;
18
18
  icon: string;
19
19
  fullWidth: boolean;
20
- }> = (argTypes) => ({
20
+ }> = (args) => ({
21
21
  components: { BadgeScore },
22
- props: Object.keys(argTypes),
22
+ setup() {
23
+ return { ...args };
24
+ },
23
25
  template:
24
26
  '<badge-score :color="color" :suffix="suffix" :text="text" :size="size" :icon="ICONS[icon]" :fullWidth="fullWidth" />',
25
27
  data() {
@@ -62,9 +64,11 @@ Interactive.parameters = {
62
64
  };
63
65
 
64
66
  /* STATIC STORIES */
65
- const StaticStoryTemplate: StoryFn<{}> = (argTypes) => ({
67
+ const StaticStoryTemplate: StoryFn<{}> = (args) => ({
66
68
  components: { BadgeScore },
67
- props: Object.keys(argTypes),
69
+ setup() {
70
+ return { ...args };
71
+ },
68
72
  template:
69
73
  '<badge-score :color="BADGE_SCORE_COLORS.WARNING" suffix="%" text="1" :full-width="fullWidth" />',
70
74
  data() {
@@ -134,6 +134,7 @@ $badge-score-colors: (
134
134
 
135
135
  min-width: $badge-score-small-min-width;
136
136
  padding: $space-xxs $space-xxs;
137
+
137
138
  #{$self}__suffix {
138
139
  @include label-l-default-bold;
139
140
  }
@@ -159,7 +160,7 @@ $badge-score-colors: (
159
160
  <script lang="ts">
160
161
  import { BADGE_SCORE_COLORS, BADGE_SCORE_SIZES } from './BadgeScore.consts';
161
162
  import WnlIcon, { ICONS, ICON_SIZES } from '../../Icons/Icon';
162
- import { VueConstructor } from 'vue';
163
+ import { toRaw } from 'vue';
163
164
 
164
165
  export default {
165
166
  name: 'BadgeScore',
@@ -186,8 +187,8 @@ export default {
186
187
  icon: {
187
188
  type: Object,
188
189
  default: null,
189
- validator(icon: VueConstructor) {
190
- return Object.values(ICONS).includes(icon);
190
+ validator(icon) {
191
+ return Object.values(ICONS).includes(toRaw(icon));
191
192
  },
192
193
  },
193
194
  size: {
@@ -2,16 +2,18 @@ import Banner from './Banner.vue';
2
2
  import { BANNER_COLORS, BANNER_LAYOUTS } from './Banner.consts';
3
3
  import { ICONS } from '../Icons/Icon';
4
4
 
5
- import { Args, ArgTypes, Meta, StoryFn } from '@storybook/vue';
5
+ import { Args, ArgTypes, Meta, StoryFn } from '@storybook/vue3';
6
6
 
7
7
  export default {
8
8
  title: 'Components/Banner',
9
9
  component: Banner,
10
10
  } as Meta<typeof Banner>;
11
11
 
12
- const StoryTemplate: StoryFn<typeof Banner> = (argTypes, { updateArgs }) => ({
12
+ const StoryTemplate: StoryFn<typeof Banner> = (args, { updateArgs }) => ({
13
13
  components: { Banner },
14
- props: Object.keys(argTypes),
14
+ setup() {
15
+ return { ...args };
16
+ },
15
17
  data() {
16
18
  return {
17
19
  ICONS: Object.freeze(ICONS),
@@ -24,25 +26,26 @@ const StoryTemplate: StoryFn<typeof Banner> = (argTypes, { updateArgs }) => ({
24
26
  });
25
27
  },
26
28
  },
27
- template: `<banner
28
- :closable='closable'
29
- :icon='ICONS[icon]'
30
- :color='color'
31
- :title='title'
32
- :buttonText='buttonText'
33
- :layout='layout'
34
- :is-expanded='isExpanded'
35
- :is-icon-hidden-on-mobile='isIconHiddenOnMobile'
36
- @update:isExpanded='onIsExpandedUpdated'
37
- >
38
- <template v-slot:defaultText><span v-if='defaultText' v-html='defaultText'/></template>
39
- <template v-slot:expandedText>
40
- <div v-if='expandedText' v-html='expandedText'/>
41
- </template>
42
- <template v-slot:rightSlot>
43
- <div v-if='rightSlot' v-html='rightSlot'/>
44
- </template>
45
- </banner>`,
29
+ template: `
30
+ <banner
31
+ :closable="closable"
32
+ :icon="ICONS[icon]"
33
+ :color="color"
34
+ :title="title"
35
+ :buttonText="buttonText"
36
+ :layout="layout"
37
+ :is-expanded="isExpanded"
38
+ :is-icon-hidden-on-mobile="isIconHiddenOnMobile"
39
+ @update:isExpanded="onIsExpandedUpdated"
40
+ >
41
+ <template #defaultText><span v-html="defaultText" /></template>
42
+ <template v-if="expandedText" #expandedText>
43
+ <div v-html="expandedText" />
44
+ </template>
45
+ <template v-if="rightSlot" #rightSlot>
46
+ <div v-html="rightSlot" />
47
+ </template>
48
+ </banner>`,
46
49
  });
47
50
 
48
51
  export const Interactive = StoryTemplate.bind({});
@@ -14,10 +14,7 @@
14
14
  <div class="ds-banner__textWrapper">
15
15
  <div class="ds-banner__titleWrapper">
16
16
  <div class="ds-banner__title" v-text="title" />
17
- <div
18
- v-if="$slots.defaultText && $slots.defaultText.length > 0"
19
- class="ds-banner__defaultText"
20
- >
17
+ <div v-if="$slots.defaultText" class="ds-banner__defaultText">
21
18
  <slot name="defaultText" />
22
19
  </div>
23
20
  </div>
@@ -28,50 +25,38 @@
28
25
  :color="BUTTON_COLORS.NEUTRAL"
29
26
  :type="BUTTON_TYPES.OUTLINED"
30
27
  :size="BUTTON_SIZES.SMALL"
31
- @click.native="$emit('button-clicked')"
28
+ @click="$emit('button-clicked')"
32
29
  >{{ buttonText }}
33
30
  </ds-button>
34
31
  </div>
35
- <div
36
- v-if="$slots.rightSlot && $slots.rightSlot.length > 0"
37
- class="ds-banner__rightSlot"
38
- >
32
+ <div v-if="$slots.rightSlot" class="ds-banner__rightSlot">
39
33
  <slot name="rightSlot" />
40
34
  </div>
41
35
  </div>
42
36
  </div>
43
37
  </div>
44
- <div
45
- v-if="$slots.expandedText && $slots.expandedText.length > 0"
46
- class="ds-banner__expander"
47
- >
38
+ <div v-if="$slots.expandedText" class="ds-banner__expander">
48
39
  <ds-icon-button
49
40
  :size="ICON_BUTTON_SIZES.SMALL"
50
41
  :icon="isExpandedInternal ? ICONS.FA_CHEVRON_UP : ICONS.FA_CHEVRON_DOWN"
51
42
  :color="ICON_BUTTON_COLORS.NEUTRAL"
52
43
  :radius="BUTTON_RADIUSES.CAPSULE"
53
44
  :touchable="false"
54
- @click.native="toggleExpandedText"
45
+ @click="toggleExpandedText"
55
46
  />
56
47
  </div>
57
- <div
58
- v-if="!($slots.expandedText && $slots.expandedText.length > 0) && closable"
59
- class="ds-banner__close"
60
- >
48
+ <div v-if="!$slots.expandedText && closable" class="ds-banner__close">
61
49
  <ds-icon-button
62
50
  :size="ICON_BUTTON_SIZES.SMALL"
63
51
  :icon="ICONS.FA_XMARK"
64
52
  :color="ICON_BUTTON_COLORS.NEUTRAL"
65
53
  :radius="BUTTON_RADIUSES.CAPSULE"
66
54
  :touchable="false"
67
- @click.native="$emit('close')"
55
+ @click="$emit('close')"
68
56
  />
69
57
  </div>
70
58
  </div>
71
- <div
72
- v-if="$slots.expandedText && $slots.expandedText.length > 0 && isExpandedInternal"
73
- class="ds-banner__expandedContainer"
74
- >
59
+ <div v-if="$slots.expandedText && isExpandedInternal" class="ds-banner__expandedContainer">
75
60
  <ds-divider :prominence="DIVIDER_PROMINENCES.STRONG" />
76
61
  <div class="ds-banner__expandedText">
77
62
  <slot name="expandedText" />
@@ -299,9 +284,6 @@
299
284
  </style>
300
285
 
301
286
  <script lang="ts">
302
- import { VueConstructor } from 'vue';
303
-
304
- import { Prop } from 'vue/types/options';
305
287
  import DsButton, {
306
288
  BUTTON_RADIUSES,
307
289
  BUTTON_TYPES,
@@ -313,6 +295,7 @@ import DsIcon from '../Icons/Icon';
313
295
  import DsIconButton, { ICON_BUTTON_COLORS, ICON_BUTTON_SIZES } from '../Buttons/IconButton';
314
296
  import { ICONS } from '../Icons/Icon';
315
297
  import { BANNER_COLORS, BANNER_LAYOUTS } from './Banner.consts';
298
+ import { toRaw } from 'vue';
316
299
 
317
300
  export default {
318
301
  name: 'Banner',
@@ -324,9 +307,9 @@ export default {
324
307
  },
325
308
  props: {
326
309
  icon: {
327
- type: Object as Prop<VueConstructor>,
310
+ type: Object,
328
311
  default: null,
329
- validator: (icon: VueConstructor) => Object.values(ICONS).includes(icon),
312
+ validator: (icon) => Object.values(ICONS).includes(toRaw(icon)),
330
313
  },
331
314
  buttonText: {
332
315
  type: String,
@@ -11,9 +11,9 @@ import {
11
11
  import { ICONS } from '../../Icons/Icon';
12
12
 
13
13
  describe('Button', () => {
14
- const createComponent = (props = {}) => {
14
+ const createComponent = (props = {} as any) => {
15
15
  return shallowMount(Button, {
16
- propsData: props,
16
+ props,
17
17
  slots: {
18
18
  default: 'Hello',
19
19
  },
@@ -52,13 +52,17 @@ describe('Button', () => {
52
52
  });
53
53
 
54
54
  it('should render icon', () => {
55
- const leftIcon = createComponent({ 'icon-left': ICONS.FA_XMARK });
55
+ const leftIcon = createComponent({ 'icon-left': Object.freeze(ICONS.FA_XMARK) });
56
56
  expect(leftIcon.find('.a-button__icon.-left').exists()).toBe(true);
57
- expect(leftIcon.find('.a-button__icon.-left').props().icon).toBe(ICONS.FA_XMARK);
57
+ expect(leftIcon.findComponent<typeof Button>('.a-button__icon.-left').props().icon).toEqual(
58
+ ICONS.FA_XMARK,
59
+ );
58
60
 
59
- const rightIcon = createComponent({ 'icon-right': ICONS.FA_CLOCK });
61
+ const rightIcon = createComponent({ 'icon-right': Object.freeze(ICONS.FA_CLOCK) });
60
62
  expect(rightIcon.find('.a-button__icon.-right').exists()).toBe(true);
61
- expect(rightIcon.find('.a-button__icon.-right').props().icon).toBe(ICONS.FA_CLOCK);
63
+ expect(
64
+ rightIcon.findComponent<typeof Button>('.a-button__icon.-right').props().icon,
65
+ ).toEqual(ICONS.FA_CLOCK);
62
66
  });
63
67
 
64
68
  it('correct slot content', () => {
@@ -9,30 +9,33 @@ import {
9
9
  } from './Button.consts';
10
10
  import { ICONS } from '../../Icons/Icon';
11
11
 
12
- import { Args, ArgTypes, Meta, StoryFn } from '@storybook/vue';
12
+ import { Args, ArgTypes, Meta, StoryFn } from '@storybook/vue3';
13
13
 
14
14
  export default {
15
15
  title: 'Components/Buttons/Button',
16
16
  component: Button,
17
17
  } as Meta<typeof Button>;
18
18
 
19
- const StoryTemplate: StoryFn<typeof Button> = (argTypes) => ({
19
+ const StoryTemplate: StoryFn<typeof Button> = (args) => ({
20
20
  components: { Button },
21
- props: Object.keys(argTypes),
22
- template: `<div :class="{ contrastBackground: isInverted }">
23
- <Button
24
- :size="size"
25
- :type="type"
26
- :state="state"
27
- :radius="radius"
28
- :color="color"
29
- :elevation="elevation"
30
- :icon-left="ICONS[iconLeft]"
31
- :icon-right="ICONS[iconRight]"
32
- >
33
- {{slotText}}
34
- </Button>
35
- </div>`,
21
+ setup() {
22
+ return { ...args };
23
+ },
24
+ template: `
25
+ <div :class="{ contrastBackground: isInverted }">
26
+ <Button
27
+ :size="size"
28
+ :type="type"
29
+ :state="state"
30
+ :radius="radius"
31
+ :color="color"
32
+ :elevation="elevation"
33
+ :icon-left="ICONS[iconLeft]"
34
+ :icon-right="ICONS[iconRight]"
35
+ >
36
+ {{ slotText }}
37
+ </Button>
38
+ </div>`,
36
39
  computed: {
37
40
  isInverted() {
38
41
  return this.color === 'inverted';
@@ -90,6 +93,9 @@ Interactive.argTypes = argTypes;
90
93
  Interactive.args = args;
91
94
 
92
95
  Interactive.parameters = {
96
+ actions: {
97
+ handles: ['click'],
98
+ },
93
99
  design: {
94
100
  type: 'figma',
95
101
  url: 'https://www.figma.com/file/izQdYyiBR1GQgFkaOIfIJI/LMS---DS---Components?node-id=138%3A2373',
@@ -21,7 +21,6 @@
21
21
  '-elevation-x-small': elevation === ELEVATIONS.X_SMALL,
22
22
  '-elevation-small': elevation === ELEVATIONS.SMALL,
23
23
  }"
24
- @click="$emit('click')"
25
24
  >
26
25
  <span class="a-button__content">
27
26
  <wnl-icon
@@ -52,9 +51,7 @@
52
51
  </style>
53
52
 
54
53
  <script lang="ts">
55
- import { VueConstructor } from 'vue';
56
54
  import Ripple from 'vue-ripple-directive';
57
-
58
55
  import { Value } from '../../../utils/type.utils';
59
56
 
60
57
  import WnlIcon, { ICONS, ICON_SIZES } from '../../Icons/Icon';
@@ -68,6 +65,7 @@ import {
68
65
  } from './Button.consts';
69
66
 
70
67
  import { ICON_BUTTON_COLORS } from '../IconButton/IconButton.consts';
68
+ import { toRaw } from 'vue';
71
69
 
72
70
  export default {
73
71
  // eslint-disable-next-line vue/no-reserved-component-names
@@ -117,15 +115,15 @@ export default {
117
115
  iconLeft: {
118
116
  type: Object,
119
117
  default: null,
120
- validator(icon: VueConstructor) {
121
- return Object.values(ICONS).includes(icon);
118
+ validator(icon) {
119
+ return Object.values(ICONS).includes(toRaw(icon));
122
120
  },
123
121
  },
124
122
  iconRight: {
125
123
  type: Object,
126
124
  default: null,
127
- validator(icon: VueConstructor) {
128
- return Object.values(ICONS).includes(icon);
125
+ validator(icon) {
126
+ return Object.values(ICONS).includes(toRaw(icon));
129
127
  },
130
128
  },
131
129
  elevation: {
@@ -9,16 +9,18 @@ import {
9
9
  import { BUTTON_ELEVATIONS, BUTTON_RADIUSES } from '../Button';
10
10
  import { ICONS } from '../../Icons/Icon';
11
11
 
12
- import { Args, ArgTypes, Meta, StoryFn } from '@storybook/vue';
12
+ import { Args, ArgTypes, Meta, StoryFn } from '@storybook/vue3';
13
13
 
14
14
  export default {
15
15
  title: 'Components/Buttons/IconButton',
16
16
  component: IconButton,
17
17
  } as Meta<typeof IconButton>;
18
18
 
19
- const StoryTemplate: StoryFn<typeof IconButton> = (argTypes) => ({
19
+ const StoryTemplate: StoryFn<typeof IconButton> = (args) => ({
20
20
  components: { IconButton },
21
- props: Object.keys(argTypes),
21
+ setup() {
22
+ return { ...args };
23
+ },
22
24
  computed: {
23
25
  isInverted() {
24
26
  return this.color === 'inverted';
@@ -98,6 +100,9 @@ Interactive.argTypes = argTypes;
98
100
  Interactive.args = args;
99
101
 
100
102
  Interactive.parameters = {
103
+ actions: {
104
+ handles: ['click'],
105
+ },
101
106
  design: {
102
107
  type: 'figma',
103
108
  url: 'https://www.figma.com/file/izQdYyiBR1GQgFkaOIfIJI/LMS---DS---Components?node-id=180%3A2709',
@@ -137,9 +142,11 @@ const argTypesDisabled = {
137
142
  },
138
143
  } as ArgTypes;
139
144
 
140
- const StoryFilledWithLabelTemplate: StoryFn<typeof IconButton> = (argTypes) => ({
145
+ const StoryFilledWithLabelTemplate: StoryFn<typeof IconButton> = (args) => ({
141
146
  components: { IconButton },
142
- props: Object.keys(argTypes),
147
+ setup() {
148
+ return { ...args };
149
+ },
143
150
  template:
144
151
  '<icon-button :icon="ICONS.FA_XMARK" :type="ICON_BUTTON_TYPES.FILLED" >Zamknij</icon-button>',
145
152
  data() {
@@ -153,9 +160,11 @@ const StoryFilledWithLabelTemplate: StoryFn<typeof IconButton> = (argTypes) => (
153
160
  export const FilledWithLabel = StoryFilledWithLabelTemplate.bind({});
154
161
  FilledWithLabel.argTypes = argTypesDisabled;
155
162
 
156
- const StoryOutlinedRoundedTemplate: StoryFn<typeof IconButton> = (argTypes) => ({
163
+ const StoryOutlinedRoundedTemplate: StoryFn<typeof IconButton> = (args) => ({
157
164
  components: { IconButton },
158
- props: Object.keys(argTypes),
165
+ setup() {
166
+ return { ...args };
167
+ },
159
168
  template:
160
169
  '<icon-button :icon="ICONS.FA_CHEVRON_RIGHT" :type="ICON_BUTTON_TYPES.OUTLINED" :radius="BUTTON_RADIUSES.ROUNDED" />',
161
170
  data() {
@@ -170,9 +179,11 @@ const StoryOutlinedRoundedTemplate: StoryFn<typeof IconButton> = (argTypes) => (
170
179
  export const OutlinedRounded = StoryOutlinedRoundedTemplate.bind({});
171
180
  OutlinedRounded.argTypes = argTypesDisabled;
172
181
 
173
- const StoryFilledPrimaryTemplate: StoryFn<typeof IconButton> = (argTypes) => ({
182
+ const StoryFilledPrimaryTemplate: StoryFn<typeof IconButton> = (args) => ({
174
183
  components: { IconButton },
175
- props: Object.keys(argTypes),
184
+ setup() {
185
+ return { ...args };
186
+ },
176
187
  template:
177
188
  '<icon-button :icon="ICONS.FA_XMARK" :type="ICON_BUTTON_TYPES.FILLED" :color="ICON_BUTTON_COLORS.PRIMARY" :size="ICON_BUTTON_SIZES.X_SMALL" />',
178
189
  data() {
@@ -188,9 +199,11 @@ const StoryFilledPrimaryTemplate: StoryFn<typeof IconButton> = (argTypes) => ({
188
199
  export const FilledPrimary = StoryFilledPrimaryTemplate.bind({});
189
200
  FilledPrimary.argTypes = argTypesDisabled;
190
201
 
191
- const StoryIconOnlyInfoTemplate: StoryFn<typeof IconButton> = (argTypes) => ({
202
+ const StoryIconOnlyInfoTemplate: StoryFn<typeof IconButton> = (args) => ({
192
203
  components: { IconButton },
193
- props: Object.keys(argTypes),
204
+ setup() {
205
+ return { ...args };
206
+ },
194
207
  template:
195
208
  '<icon-button :icon="ICONS.FA_FLAG" :color="ICON_BUTTON_COLORS.INFO" :size="ICON_BUTTON_SIZES.MEDIUM" />',
196
209
  data() {
@@ -205,9 +218,11 @@ const StoryIconOnlyInfoTemplate: StoryFn<typeof IconButton> = (argTypes) => ({
205
218
  export const IconOnlyInfo = StoryIconOnlyInfoTemplate.bind({});
206
219
  IconOnlyInfo.argTypes = argTypesDisabled;
207
220
 
208
- const StoryIconOnlyWarningTemplate: StoryFn<typeof IconButton> = (argTypes) => ({
221
+ const StoryIconOnlyWarningTemplate: StoryFn<typeof IconButton> = (args) => ({
209
222
  components: { IconButton },
210
- props: Object.keys(argTypes),
223
+ setup() {
224
+ return { ...args };
225
+ },
211
226
  template:
212
227
  '<icon-button :icon="ICONS.HEAD_WITH_QUESTION_MARK" :color="ICON_BUTTON_COLORS.WARNING" :size="ICON_BUTTON_SIZES.MEDIUM" />',
213
228
  data() {