@salesforcedevs/dx-components 0.26.2 → 0.26.3-alpha.1

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 (261) hide show
  1. package/lwc.config.json +2 -1
  2. package/package.json +2 -7
  3. package/src/modules/{utils-internal → base-elements}/archiveCard/archiveCard.ts +0 -0
  4. package/src/modules/{utils-internal → base-elements}/headerBase/headerBase.ts +0 -0
  5. package/src/modules/dx/cardBlogPostProvider/cardBlogPostProvider.ts +1 -1
  6. package/src/modules/dx/cardCallout/cardCallout.ts +1 -1
  7. package/src/modules/dx/cardContent/cardContent.ts +2 -2
  8. package/src/modules/dx/cardDocs/cardDocs.ts +1 -1
  9. package/src/modules/dx/cardExpanded/cardExpanded.ts +1 -1
  10. package/src/modules/dx/cardMinimal/cardMinimal.ts +1 -1
  11. package/src/modules/dx/cardNews/cardNews.ts +1 -1
  12. package/src/modules/dx/cardPodcastEpisodeProvider/cardPodcastEpisodeProvider.ts +1 -1
  13. package/src/modules/dx/cardSmall/cardSmall.ts +1 -1
  14. package/src/modules/dx/codeBlock/codeBlock.ts +1 -1
  15. package/src/modules/dx/dropdown/dropdown.ts +1 -1
  16. package/src/modules/dx/featuredContentHeader/featuredContentHeader.ts +1 -1
  17. package/src/modules/dx/groupText/groupText.ts +1 -1
  18. package/src/modules/dx/header/header.ts +1 -1
  19. package/src/modules/dx/headerMobileNavMenu/headerMobileNavMenu.ts +1 -1
  20. package/src/modules/dx/headerSearch/headerSearch.ts +1 -1
  21. package/src/modules/dx/icon/icon.ts +1 -1
  22. package/src/modules/dx/iconBadge/iconBadge.ts +1 -1
  23. package/src/modules/dx/input/input.ts +1 -1
  24. package/src/modules/dx/modalDrawer/modalDrawer.css +40 -0
  25. package/src/modules/dx/modalDrawer/modalDrawer.html +11 -0
  26. package/src/modules/dx/modalDrawer/modalDrawer.ts +27 -0
  27. package/src/modules/dx/newsletterForm/newsletterForm.html +3 -3
  28. package/src/modules/dx/popover/popover.ts +1 -1
  29. package/src/modules/dx/section/section.ts +1 -1
  30. package/src/modules/dx/sidebar/sidebar.ts +1 -1
  31. package/src/modules/dx/sidebarOld/sidebarOld.html +1 -1
  32. package/src/modules/dx/sidebarOld/sidebarOld.ts +22 -7
  33. package/src/modules/dx/sidebarSearch/sidebarSearch.ts +41 -25
  34. package/src/modules/dx/slackCta/slackCta.css +1 -1
  35. package/src/modules/dx/tooltip/microtip.css +1 -0
  36. package/src/modules/dx/tooltip/tooltip.css +1 -0
  37. package/src/modules/dx/typeBadge/typeBadge.ts +1 -1
  38. package/src/modules/{utils-internal → utils}/coveo/coveo.ts +0 -0
  39. package/src/modules/{utils-internal → utils}/css/css.ts +0 -0
  40. package/src/modules/{utils-internal → utils}/devices/devices.ts +0 -0
  41. package/src/modules/utils/highlight/highlight.ts +28 -15
  42. package/src/modules/{utils-internal → utils}/options/options.ts +0 -0
  43. package/src/modules/{utils-internal → utils}/prismjs/prismjs.html +0 -0
  44. package/src/modules/{utils-internal → utils}/prismjs/prismjs.ts +0 -0
  45. package/src/modules/{utils-internal → utils}/recentSearches/recentSearches.ts +0 -0
  46. package/src/modules/utils/regexps/regexps.ts +12 -0
  47. package/src/modules/{utils-internal → utils}/seo/seo.ts +0 -0
  48. package/src/modules/{utils-internal → utils}/slot/slot.ts +0 -0
  49. package/src/modules/{utils-internal → utils}/wordpress/wordpress.ts +0 -0
  50. package/LICENSE +0 -12
  51. package/src/modules/dx/banner/__tests__/banner.test.ts +0 -33
  52. package/src/modules/dx/brandThemeProvider/__tests__/brandThemeProvider.test.ts +0 -49
  53. package/src/modules/dx/brandThemeProvider/brandThemeProvider.stories.ts +0 -321
  54. package/src/modules/dx/breadcrumbs/__tests__/breadcrumbs.test.ts +0 -140
  55. package/src/modules/dx/breadcrumbs/__tests__/mockProps.ts +0 -28
  56. package/src/modules/dx/breadcrumbs/breadcrumbs.stories.ts +0 -39
  57. package/src/modules/dx/button/__tests__/button.test.ts +0 -107
  58. package/src/modules/dx/button/button.stories.ts +0 -150
  59. package/src/modules/dx/cardBlogPost/__tests__/cardBlogPost.test.ts +0 -26
  60. package/src/modules/dx/cardBlogPost/__tests__/mockProps.ts +0 -12
  61. package/src/modules/dx/cardBlogPost/cardBlogPost.stories.ts +0 -164
  62. package/src/modules/dx/cardBlogPostProvider/__tests__/cardBlogPostProvider.test.ts +0 -34
  63. package/src/modules/dx/cardBlogPostProvider/__tests__/mockWordpressPosts.ts +0 -44
  64. package/src/modules/dx/cardCallout/__tests__/cardCallout.test.ts +0 -20
  65. package/src/modules/dx/cardCallout/__tests__/mockProps.ts +0 -7
  66. package/src/modules/dx/cardCallout/cardCallout.stories.ts +0 -33
  67. package/src/modules/dx/cardContent/__tests__/cardContent.test.ts +0 -100
  68. package/src/modules/dx/cardContent/__tests__/mockProps.ts +0 -13
  69. package/src/modules/dx/cardContent/cardContent.stories.ts +0 -127
  70. package/src/modules/dx/cardDemo/cardDemo.stories.ts +0 -115
  71. package/src/modules/dx/cardDocs/__tests__/cardDocs.test.ts +0 -48
  72. package/src/modules/dx/cardDocs/__tests__/mockProps.ts +0 -9
  73. package/src/modules/dx/cardDocs/cardDocs.stories.ts +0 -299
  74. package/src/modules/dx/cardEvent/__tests__/cardEvent.test.ts +0 -95
  75. package/src/modules/dx/cardEvent/__tests__/mockProps.ts +0 -10
  76. package/src/modules/dx/cardEvent/cardEvent.stories.ts +0 -153
  77. package/src/modules/dx/cardExpanded/__tests__/cardExpanded.test.ts +0 -193
  78. package/src/modules/dx/cardExpanded/__tests__/mockProps.ts +0 -21
  79. package/src/modules/dx/cardExpanded/cardExpanded.stories.ts +0 -59
  80. package/src/modules/dx/cardGrid/__tests__/cardMockProps.ts +0 -431
  81. package/src/modules/dx/cardGrid/__tests__/mockProps.ts +0 -15
  82. package/src/modules/dx/cardGrid/cardGrid.stories.ts +0 -111
  83. package/src/modules/dx/cardMinimal/__tests__/cardMinimal.test.ts +0 -87
  84. package/src/modules/dx/cardMinimal/__tests__/mockProps.ts +0 -10
  85. package/src/modules/dx/cardMinimal/cardMinimal.stories.ts +0 -32
  86. package/src/modules/dx/cardNews/__tests__/cardNews.test.ts +0 -58
  87. package/src/modules/dx/cardNews/__tests__/mockProps.ts +0 -7
  88. package/src/modules/dx/cardNews/cardNews.stories.ts +0 -115
  89. package/src/modules/dx/cardPodcastEpisode/__tests__/cardPodcastEpisode.test.ts +0 -68
  90. package/src/modules/dx/cardPodcastEpisode/cardPodcastEpisode.stories.ts +0 -31
  91. package/src/modules/dx/cardPodcastEpisodeProvider/__tests__/cardPodcastEpisodeProvider.test.ts +0 -36
  92. package/src/modules/dx/cardPodcastEpisodeProvider/__tests__/mockWordpressEpisodes.ts +0 -50
  93. package/src/modules/dx/cardSmall/__tests__/cardSmall.test.ts +0 -66
  94. package/src/modules/dx/cardSmall/__tests__/mockProps.ts +0 -8
  95. package/src/modules/dx/cardSmall/cardSmall.stories.ts +0 -166
  96. package/src/modules/dx/cardTitle/__tests__/cardTitle.test.ts +0 -46
  97. package/src/modules/dx/cardTrailheadModule/__tests__/cardTrailheadModule.test.ts +0 -18
  98. package/src/modules/dx/cardTrailheadModule/__tests__/mockProps.ts +0 -11
  99. package/src/modules/dx/cardTrailheadModule/cardTrailheadModule.stories.ts +0 -122
  100. package/src/modules/dx/cardVideoPreview/__tests__/cardVideoPreview.test.ts +0 -22
  101. package/src/modules/dx/cardVideoPreview/__tests__/mockProps.ts +0 -11
  102. package/src/modules/dx/cardVideoPreview/cardVideoPreview.stories.ts +0 -147
  103. package/src/modules/dx/checkbox/__tests__/checkbox.test.ts +0 -85
  104. package/src/modules/dx/checkbox/__tests__/mockProps.ts +0 -5
  105. package/src/modules/dx/checkbox/checkbox.stories.ts +0 -38
  106. package/src/modules/dx/checkboxGroup/__tests__/checkboxGroup.test.ts +0 -80
  107. package/src/modules/dx/checkboxGroup/__tests__/mockProps.ts +0 -14
  108. package/src/modules/dx/checkboxGroup/checkboxGroup.stories.ts +0 -33
  109. package/src/modules/dx/codeBlock/__tests__/codeBlock.test.ts +0 -238
  110. package/src/modules/dx/codeBlock/__tests__/mockProps.ts +0 -160
  111. package/src/modules/dx/codeBlock/codeBlock.stories.ts +0 -143
  112. package/src/modules/dx/dropdown/__tests__/dropdown.test.ts +0 -165
  113. package/src/modules/dx/dropdown/__tests__/mockNestedOptions.ts +0 -96
  114. package/src/modules/dx/dropdown/__tests__/mockOptions.ts +0 -10
  115. package/src/modules/dx/dropdown/__tests__/mockProps.ts +0 -6
  116. package/src/modules/dx/dropdown/dropdown.stories.ts +0 -89
  117. package/src/modules/dx/dropdownOption/__tests__/dropdownOption.test.ts +0 -112
  118. package/src/modules/dx/dropdownOption/__tests__/mockProps.ts +0 -20
  119. package/src/modules/dx/emptyState/__tests__/emptyState.test.ts +0 -52
  120. package/src/modules/dx/emptyState/__tests__/mockProps.ts +0 -4
  121. package/src/modules/dx/emptyState/emptyState.stories.ts +0 -45
  122. package/src/modules/dx/feature/__tests__/feature.test.ts +0 -51
  123. package/src/modules/dx/feature/__tests__/mockProps.ts +0 -8
  124. package/src/modules/dx/featureGrid/__tests__/featureGrid.test.ts +0 -21
  125. package/src/modules/dx/featureGrid/featureGrid.stories.ts +0 -120
  126. package/src/modules/dx/featuredContentHeader/__tests__/featuredContentHeader.test.ts +0 -178
  127. package/src/modules/dx/featuredContentHeader/__tests__/mockProps.ts +0 -73
  128. package/src/modules/dx/featuredContentHeader/featuredContentHeader.stories.ts +0 -153
  129. package/src/modules/dx/featuresList/__tests__/featuresList.test.ts +0 -43
  130. package/src/modules/dx/featuresList/__tests__/mockProps.ts +0 -17
  131. package/src/modules/dx/featuresList/featuresList.stories.ts +0 -30
  132. package/src/modules/dx/footer/__tests__/footer.test.ts +0 -147
  133. package/src/modules/dx/footer/__tests__/mockLocales.ts +0 -7
  134. package/src/modules/dx/footer/footer.stories.ts +0 -88
  135. package/src/modules/dx/footerOption/__tests__/footerOption.test.ts +0 -34
  136. package/src/modules/dx/footerOption/__tests__/mockProps.ts +0 -7
  137. package/src/modules/dx/formattedDateTime/__tests__/formattedDateTime.test.ts +0 -25
  138. package/src/modules/dx/formattedDateTime/__tests__/mockProps.ts +0 -13
  139. package/src/modules/dx/formattedDateTime/formattedDateTime.stories.ts +0 -103
  140. package/src/modules/dx/grid/__tests__/grid.test.ts +0 -32
  141. package/src/modules/dx/grid/grid.stories.ts +0 -134
  142. package/src/modules/dx/groupBio/__tests__/groupBio.test.ts +0 -82
  143. package/src/modules/dx/groupBio/__tests__/mockProps.ts +0 -15
  144. package/src/modules/dx/groupBio/groupBio.stories.ts +0 -66
  145. package/src/modules/dx/groupText/__tests__/groupText.test.ts +0 -69
  146. package/src/modules/dx/groupText/__tests__/mockProps.ts +0 -35
  147. package/src/modules/dx/groupText/groupText.stories.ts +0 -81
  148. package/src/modules/dx/header/__tests__/header.test.ts +0 -236
  149. package/src/modules/dx/header/__tests__/mockNavArchitects.ts +0 -169
  150. package/src/modules/dx/header/__tests__/mockNavDevelopers.ts +0 -419
  151. package/src/modules/dx/header/__tests__/mockNavs.ts +0 -115
  152. package/src/modules/dx/header/__tests__/mockProps.ts +0 -164
  153. package/src/modules/dx/header/header.stories.ts +0 -172
  154. package/src/modules/dx/headerMobileNavMenu/__tests__/headerMobileNavMenu.test.ts +0 -123
  155. package/src/modules/dx/headerMobileNavMenuOption/__tests__/headerMobileNavMenuOption.test.ts +0 -38
  156. package/src/modules/dx/headerNav/__tests__/headerNav.test.ts +0 -49
  157. package/src/modules/dx/headerSearch/__tests__/headerSearch.test.ts +0 -182
  158. package/src/modules/dx/headerSearch/__tests__/mockData.ts +0 -11
  159. package/src/modules/dx/headerSearch/__tests__/mockProps.ts +0 -6
  160. package/src/modules/dx/helmet/__tests__/helmet.test.ts +0 -52
  161. package/src/modules/dx/helmet/helmet.stories.ts +0 -53
  162. package/src/modules/dx/hr/__tests__/hr.test.ts +0 -53
  163. package/src/modules/dx/hr/__tests__/mockProps.ts +0 -16
  164. package/src/modules/dx/hr/hr.stories.ts +0 -50
  165. package/src/modules/dx/icon/__tests__/icon.test.ts +0 -54
  166. package/src/modules/dx/icon/icon.stories.ts +0 -100
  167. package/src/modules/dx/iconBadge/__tests__/iconBadge.test.ts +0 -17
  168. package/src/modules/dx/iconBadge/iconBadge.stories.ts +0 -32
  169. package/src/modules/dx/imageAndLabel/__tests__/imageAndLabel.test.ts +0 -39
  170. package/src/modules/dx/imageAndLabel/__tests__/mockProps.ts +0 -6
  171. package/src/modules/dx/imageAndLabel/imageAndLabel.stories.ts +0 -48
  172. package/src/modules/dx/input/__tests__/input.test.ts +0 -357
  173. package/src/modules/dx/input/input.stories.ts +0 -102
  174. package/src/modules/dx/instrumentation/__tests__/instrumentation.test.ts +0 -86
  175. package/src/modules/dx/interactiveImage/__tests__/interactiveImage.test.ts +0 -83
  176. package/src/modules/dx/interactiveImage/__tests__/mockProps.ts +0 -39
  177. package/src/modules/dx/interactiveImage/interactiveImage.stories.ts +0 -31
  178. package/src/modules/dx/lazy/__tests__/lazy.test.ts +0 -43
  179. package/src/modules/dx/lazy/lazy.stories.ts +0 -132
  180. package/src/modules/dx/pagination/__tests__/pagination.test.ts +0 -121
  181. package/src/modules/dx/pagination/pagination.stories.ts +0 -88
  182. package/src/modules/dx/podcastHost/__tests__/mockProps.ts +0 -8
  183. package/src/modules/dx/podcastHost/__tests__/podcastHost.test.ts +0 -21
  184. package/src/modules/dx/podcastHost/podcastHost.stories.ts +0 -17
  185. package/src/modules/dx/podcastPlayer/__tests__/podcastPlayer.test.ts +0 -20
  186. package/src/modules/dx/podcastPlayer/podcastPlayer.stories.ts +0 -13
  187. package/src/modules/dx/podcastSubscription/__tests__/podcastSubscription.test.ts +0 -16
  188. package/src/modules/dx/podcastSubscription/podcastSubscription.stories.ts +0 -23
  189. package/src/modules/dx/popover/__tests__/mockProps.ts +0 -8
  190. package/src/modules/dx/popover/__tests__/popover.test.ts +0 -313
  191. package/src/modules/dx/popover/popover.stories.ts +0 -82
  192. package/src/modules/dx/radioGroup/__tests__/mockProps.ts +0 -12
  193. package/src/modules/dx/radioGroup/__tests__/radioGroup.test.ts +0 -42
  194. package/src/modules/dx/radioGroup/radioGroup.stories.ts +0 -25
  195. package/src/modules/dx/relativeDateTime/__tests__/mockProps.ts +0 -55
  196. package/src/modules/dx/relativeDateTime/__tests__/relativeDateTime.test.ts +0 -52
  197. package/src/modules/dx/relativeDateTime/relativeDateTime.stories.ts +0 -83
  198. package/src/modules/dx/searchResults/searchResults.stories.ts +0 -36
  199. package/src/modules/dx/section/__tests__/section.test.ts +0 -17
  200. package/src/modules/dx/section/section.stories.ts +0 -381
  201. package/src/modules/dx/sectionSignup/__tests__/sectionSignup.test.ts +0 -66
  202. package/src/modules/dx/sectionSignup/sectionSignup.stories.ts +0 -49
  203. package/src/modules/dx/select/select.stories.ts +0 -59
  204. package/src/modules/dx/sidebar/__tests__/mockProps.ts +0 -181
  205. package/src/modules/dx/sidebar/__tests__/mockSearchChangeEmptyEvent.ts +0 -6
  206. package/src/modules/dx/sidebar/__tests__/mockSearchChangeEvent.ts +0 -527
  207. package/src/modules/dx/sidebar/__tests__/sidebar.test.ts +0 -568
  208. package/src/modules/dx/sidebar/sidebar.stories.ts +0 -188
  209. package/src/modules/dx/sidebarOld/__tests__/mockProps.ts +0 -178
  210. package/src/modules/dx/sidebarOld/__tests__/sidebarOld.test.ts +0 -570
  211. package/src/modules/dx/sidebarOld/sidebarOld.stories.ts +0 -139
  212. package/src/modules/dx/sidebarSearch/__tests__/mockPreloadedState.ts +0 -1686
  213. package/src/modules/dx/sidebarSearch/__tests__/sidebarSearch.test.ts +0 -175
  214. package/src/modules/dx/sidebarSearchResult/__tests__/sidebarSearchResult.test.ts +0 -96
  215. package/src/modules/dx/slackCta/__tests__/slackCta.test.ts +0 -36
  216. package/src/modules/dx/slackCta/slackCta.stories.ts +0 -25
  217. package/src/modules/dx/socials/__tests__/socials.test.ts +0 -114
  218. package/src/modules/dx/socials/socials.stories.ts +0 -24
  219. package/src/modules/dx/spinner/__tests__/spinner.test.ts +0 -37
  220. package/src/modules/dx/spinner/spinner.stories.ts +0 -69
  221. package/src/modules/dx/tab/__tests__/tab.test.ts +0 -129
  222. package/src/modules/dx/tab/tab.stories.ts +0 -57
  223. package/src/modules/dx/toc/__tests__/mockProps.ts +0 -28
  224. package/src/modules/dx/toc/__tests__/toc.test.ts +0 -109
  225. package/src/modules/dx/toc/toc.stories.ts +0 -26
  226. package/src/modules/dx/tooltip/__tests__/tooltip.test.ts +0 -22
  227. package/src/modules/dx/tooltip/tooltip.stories.ts +0 -46
  228. package/src/modules/dx/topics/__tests__/mockProps.ts +0 -3
  229. package/src/modules/dx/topics/__tests__/topics.test.ts +0 -31
  230. package/src/modules/dx/tree/__tests__/mockProps.ts +0 -215
  231. package/src/modules/dx/tree/__tests__/tree.test.ts +0 -346
  232. package/src/modules/dx/tree/__tests__/treeHandler.test.ts +0 -194
  233. package/src/modules/dx/tree/tree.stories.ts +0 -65
  234. package/src/modules/dx/treeItem/__tests__/mockProps.ts +0 -46
  235. package/src/modules/dx/treeItem/__tests__/treeItem.test.ts +0 -377
  236. package/src/modules/dx/treeTile/__tests__/mockProps.ts +0 -16
  237. package/src/modules/dx/treeTile/__tests__/treeTile.test.ts +0 -168
  238. package/src/modules/dx/typeBadge/__tests__/typeBadge.test.ts +0 -77
  239. package/src/modules/dx/typeBadge/typeBadge.stories.ts +0 -114
  240. package/src/modules/dx/typeBadgeGroup/__tests__/mockProps.ts +0 -11
  241. package/src/modules/dx/typeBadgeGroup/__tests__/typeBadgeGroup.test.ts +0 -72
  242. package/src/modules/dx/typeBadgeGroup/typeBadgeGroup.stories.ts +0 -19
  243. package/src/modules/test-components/buttonTest/buttonTest.html +0 -3
  244. package/src/modules/test-components/buttonTest/buttonTest.ts +0 -3
  245. package/src/modules/test-components/codeBlockTest/codeBlockTest.js +0 -4
  246. package/src/modules/test-components/featureGridTest/featureGridTest.html +0 -7
  247. package/src/modules/test-components/featureGridTest/featureGridTest.ts +0 -5
  248. package/src/modules/test-components/instrumentationTest/instrumentationTest.html +0 -4
  249. package/src/modules/test-components/instrumentationTest/instrumentationTest.ts +0 -8
  250. package/src/modules/test-components/popoverTest/popoverTest.html +0 -6
  251. package/src/modules/test-components/popoverTest/popoverTest.ts +0 -5
  252. package/src/modules/test-components/slackCtaTest/slackCtaTest.html +0 -3
  253. package/src/modules/test-components/slackCtaTest/slackCtaTest.ts +0 -3
  254. package/src/modules/utils/highlight/__tests__/highlight.test.ts +0 -108
  255. package/src/modules/utils/highlight/__tests__/mockProps.ts +0 -45
  256. package/src/modules/utils-internal/jest/jest.ts +0 -58
  257. package/src/modules/utils-internal/recentSearches/__tests__/recentSearches.test.ts +0 -83
  258. package/src/modules/utils-internal/regexps/regexps.ts +0 -5
  259. package/src/modules/utils-internal/storybook/storybook.ts +0 -32
  260. package/src/modules/utils-internal/tests/tests.ts +0 -38
  261. package/src/modules/utils-internal/wordpress/__tests__/wordpress.test.ts +0 -15
@@ -1,193 +0,0 @@
1
- import CardTitle from "dx/cardTitle";
2
- import CardExpanded from "dx/cardExpanded";
3
- import FormattedDateTime from "dx/formattedDateTime";
4
- import ImageAndLabel from "dx/imageAndLabel";
5
- import Topics from "dx/topics";
6
- import TypeBadge from "dx/typeBadge";
7
- import { createMediaMock } from "utils-internal/jest";
8
- import { createRenderComponent } from "utils-internal/tests";
9
- import mockProps, { podcastMock } from "./mockProps";
10
-
11
- const MOBILE_QUERY = "(max-width: 640px)";
12
- const TAG = "dx-card-expanded";
13
- const render = createRenderComponent(TAG, CardExpanded);
14
-
15
- describe(TAG, () => {
16
- describe("render", () => {
17
- it("renders blog content type", () => {
18
- const component = render(mockProps);
19
-
20
- const container: HTMLElement =
21
- component.shadowRoot.querySelector(".card-container");
22
- expect(container).not.toBeNull();
23
- expect(container.classList).toHaveLength(1);
24
-
25
- const typeBadge: TypeBadge =
26
- component.shadowRoot.querySelector("dx-type-badge");
27
- expect(typeBadge).not.toBeNull();
28
- expect(typeBadge.color).toBe("teal");
29
- expect(typeBadge.value).toBe("Blog");
30
- expect(typeBadge.size).toBe("default");
31
-
32
- const title: CardTitle =
33
- component.shadowRoot.querySelector("dx-card-title");
34
- expect(title).not.toBeNull();
35
- expect(title.href).toBe(mockProps.href);
36
- expect(title.target).toBe("_self");
37
-
38
- const imageAndLabel: ImageAndLabel =
39
- component.shadowRoot.querySelector("dx-image-and-label");
40
- expect(imageAndLabel).not.toBeNull();
41
- expect(imageAndLabel.href).toBe(mockProps.authorHref);
42
- expect(imageAndLabel.imgSrc).toBe(mockProps.authorImgSrc);
43
- expect(imageAndLabel.label).toBe(mockProps.authorLabel);
44
-
45
- expect(
46
- component.shadowRoot.querySelector(".card-dot-separator")
47
- ).not.toBeNull();
48
-
49
- const formatedDate: FormattedDateTime =
50
- component.shadowRoot.querySelector("dx-formatted-date-time");
51
- expect(formatedDate).not.toBeNull();
52
- expect(formatedDate.value).toBe("February 20, 2021");
53
-
54
- const body: HTMLSpanElement = component.shadowRoot.querySelector(
55
- ".card-container > span"
56
- );
57
- expect(body).not.toBeNull();
58
- expect(body.textContent).toBe(mockProps.body);
59
-
60
- const topics: Topics =
61
- component.shadowRoot.querySelector("dx-topics");
62
- expect(topics).not.toBeNull();
63
- expect(topics.topics).toEqual(mockProps.topics);
64
-
65
- expect(window.matchMedia).toBeCalledTimes(1);
66
- expect(window.matchMedia).toBeCalledWith(MOBILE_QUERY);
67
-
68
- return expect(component).toBeAccessible();
69
- });
70
-
71
- it("renders with no props", () => {
72
- const component = render();
73
-
74
- const container: HTMLElement =
75
- component.shadowRoot.querySelector(".card-container");
76
- expect(container).not.toBeNull();
77
- expect(container.classList).toHaveLength(1);
78
-
79
- const typeBadge: TypeBadge =
80
- component.shadowRoot.querySelector("dx-type-badge");
81
- expect(typeBadge).not.toBeNull();
82
- expect(typeBadge.color).toBe("teal");
83
- expect(typeBadge.value).toBe("Blog");
84
- expect(typeBadge.size).toBe("default");
85
-
86
- expect(
87
- component.shadowRoot.querySelector("dx-card-title")
88
- ).toBeNull();
89
- expect(
90
- component.shadowRoot.querySelector("dx-image-and-label")
91
- ).toBeNull();
92
- expect(
93
- component.shadowRoot.querySelector(".card-dot-separator")
94
- ).toBeNull();
95
- expect(
96
- component.shadowRoot.querySelector("dx-formatted-date-time")
97
- ).toBeNull();
98
- expect(
99
- component.shadowRoot.querySelector("span:last-of-type")
100
- ).toBeNull();
101
- expect(component.shadowRoot.querySelector("dx-topics")).toBeNull();
102
-
103
- expect(window.matchMedia).toBeCalledTimes(1);
104
- expect(window.matchMedia).toBeCalledWith(MOBILE_QUERY);
105
- });
106
-
107
- it("renders Podcast content type", () => {
108
- const component = render(podcastMock);
109
-
110
- const container: HTMLElement =
111
- component.shadowRoot.querySelector(".card-container");
112
- expect(container).not.toBeNull();
113
- expect(container.classList).toHaveLength(1);
114
-
115
- const typeBadge: TypeBadge =
116
- component.shadowRoot.querySelector("dx-type-badge");
117
- expect(typeBadge).not.toBeNull();
118
- expect(typeBadge.color).toBe("blue");
119
- expect(typeBadge.value).toBe("Podcast");
120
- expect(typeBadge.size).toBe("default");
121
-
122
- const title: CardTitle =
123
- component.shadowRoot.querySelector("dx-card-title");
124
- expect(title).not.toBeNull();
125
- expect(title.href).toBe(podcastMock.href);
126
- expect(title.target).toBe("_self");
127
-
128
- expect(
129
- component.shadowRoot.querySelector("dx-image-and-label")
130
- ).toBeNull();
131
-
132
- const lengthSpan: HTMLSpanElement =
133
- component.shadowRoot.querySelector(".card-extra-info > span");
134
- expect(lengthSpan).not.toBeNull();
135
- expect(lengthSpan.textContent).toBe(podcastMock.length);
136
-
137
- expect(
138
- component.shadowRoot.querySelector(".card-dot-separator")
139
- ).not.toBeNull();
140
-
141
- const formatedDate: FormattedDateTime =
142
- component.shadowRoot.querySelector("dx-formatted-date-time");
143
- expect(formatedDate).not.toBeNull();
144
- expect(formatedDate.value).toBe("February 20, 2021");
145
-
146
- const body: HTMLSpanElement = component.shadowRoot.querySelector(
147
- ".card-container > span"
148
- );
149
- expect(body).not.toBeNull();
150
- expect(body.textContent).toBe(podcastMock.body);
151
-
152
- const topics: Topics =
153
- component.shadowRoot.querySelector("dx-topics");
154
- expect(topics).not.toBeNull();
155
- expect(topics.topics).toEqual(podcastMock.topics);
156
-
157
- expect(window.matchMedia).toBeCalledTimes(1);
158
- expect(window.matchMedia).toBeCalledWith(MOBILE_QUERY);
159
-
160
- return expect(component).toBeAccessible();
161
- });
162
- });
163
-
164
- describe("mobile render", () => {
165
- beforeAll(() => {
166
- window.matchMedia = createMediaMock(true);
167
- });
168
-
169
- it("renders blog content type as mobile", () => {
170
- const component = render(mockProps);
171
-
172
- const container: HTMLElement =
173
- component.shadowRoot.querySelector(".card-container");
174
- expect(container).not.toBeNull();
175
- expect(container.classList).toHaveLength(2);
176
- expect(container.classList).toContain("card-mobile");
177
-
178
- const typeBadge: TypeBadge =
179
- component.shadowRoot.querySelector("dx-type-badge");
180
- expect(typeBadge).not.toBeNull();
181
- expect(typeBadge.size).toBe("small");
182
-
183
- const imageAndLabel: ImageAndLabel =
184
- component.shadowRoot.querySelector("dx-image-and-label");
185
- expect(imageAndLabel).not.toBeNull();
186
- expect(imageAndLabel.href).toBe(mockProps.authorHref);
187
- expect(imageAndLabel.imgSrc).toBe("");
188
- expect(imageAndLabel.label).toBe(mockProps.authorLabel);
189
-
190
- return expect(component).toBeAccessible();
191
- });
192
- });
193
- });
@@ -1,21 +0,0 @@
1
- export default {
2
- authorHref: "/",
3
- authorImgSrc: "https://placekitten.com/300/300",
4
- authorLabel: "Author Name",
5
- contentType: "Blog",
6
- href: "/awesome-blog-post",
7
- date: "02/20/2021",
8
- title: "Lightning Web Components for your Inbox",
9
- body: "Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptate nulla inventore, quis enim dignissimos culpa assumenda non sed corporis similique praesentium ex quasi, cumque quia sequi rerum ab asperiores fugiat!",
10
- topics: ["mobile", "performance"]
11
- };
12
-
13
- export const podcastMock = {
14
- body: "Lorem ipsum dolor sit amet consectetur adipisicing elit. Voluptate nulla inventore, quis enim dignissimos culpa assumenda non sed corporis similique praesentium ex quasi, cumque quia sequi rerum ab asperiores fugiat!",
15
- contentType: "Podcast",
16
- date: "02/20/2021",
17
- href: "/awesome-blog-post",
18
- length: "40 min",
19
- title: "Lightning Web Components for your Inbox",
20
- topics: ["mobile", "performance"]
21
- };
@@ -1,59 +0,0 @@
1
- import { html } from "lit-html";
2
- import mockProps, { podcastMock } from "./__tests__/mockProps";
3
-
4
- export default {
5
- title: "dx/dx-card-expanded",
6
- component: "dx-card-expanded",
7
- argTypes: {
8
- contentType: {
9
- control: {
10
- options: ["Blog", "Podcast"],
11
- type: "select"
12
- }
13
- }
14
- }
15
- };
16
-
17
- const style = html`
18
- <style>
19
- dx-card-expanded {
20
- width: clamp(400px, 80%, 800px);
21
- }
22
- </style>
23
- `;
24
-
25
- type CardExpandedProps = {
26
- authorHref?: string;
27
- authorImgSrc?: string;
28
- authorLabel?: string;
29
- body: string;
30
- contentType: "Blog" | "Podcast";
31
- date: string;
32
- href: string;
33
- title: string;
34
- length?: string;
35
- topics: Array<string>;
36
- };
37
-
38
- const Template = (args: CardExpandedProps) => html`
39
- ${style}
40
- <dx-card-expanded
41
- author-href="${args.authorHref || ""}"
42
- author-img-src="${args.authorImgSrc || ""}"
43
- author-label="${args.authorLabel || ""}"
44
- body="${args.body}"
45
- content-type=${args.contentType || "Blog"}
46
- date="${args.date}"
47
- href="${args.href}"
48
- length="${args.length || ""}"
49
- title="${args.title}"
50
- topics=${JSON.stringify(args.topics)}
51
- ></dx-card>-expanded
52
- `;
53
-
54
- export const BlogPost = (args: CardExpandedProps) => Template(args);
55
-
56
- BlogPost.args = mockProps;
57
-
58
- export const PodcastPost = (args: CardExpandedProps) => Template(args);
59
- PodcastPost.args = podcastMock;