@salesforcedevs/dx-components 0.54.1 → 0.54.6-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 (146) hide show
  1. package/lwc.config.json +19 -19
  2. package/package.json +6 -5
  3. package/src/assets/svg/login-widget-bg.png +0 -0
  4. package/src/modules/dx/avatarButton/avatarButton.css +128 -0
  5. package/src/modules/dx/avatarButton/avatarButton.html +145 -0
  6. package/src/modules/dx/avatarButton/avatarButton.ts +78 -0
  7. package/src/modules/dx/banner/banner.css +3 -3
  8. package/src/modules/dx/breadcrumbs/breadcrumbs.css +2 -2
  9. package/src/modules/dx/breadcrumbs/breadcrumbs.ts +27 -26
  10. package/src/modules/dx/button/button.css +10 -1
  11. package/src/modules/dx/button/button.ts +1 -1
  12. package/src/modules/dx/cardBlogPost/cardBlogPost.css +1 -1
  13. package/src/modules/dx/cardCallout/cardCallout.css +3 -3
  14. package/src/modules/dx/cardCallout/cardCallout.ts +2 -2
  15. package/src/modules/dx/cardContent/cardContent.css +3 -3
  16. package/src/modules/dx/cardContent/cardContent.ts +2 -2
  17. package/src/modules/dx/cardDemo/cardDemo.css +1 -1
  18. package/src/modules/dx/cardDocs/cardDocs.css +3 -3
  19. package/src/modules/dx/cardDocs/cardDocs.ts +1 -1
  20. package/src/modules/dx/cardEvent/cardEvent.css +3 -3
  21. package/src/modules/dx/cardExpanded/cardExpanded.css +1 -1
  22. package/src/modules/dx/cardExpanded/cardExpanded.ts +1 -1
  23. package/src/modules/dx/cardMinimal/cardMinimal.css +2 -2
  24. package/src/modules/dx/cardMinimal/cardMinimal.ts +1 -1
  25. package/src/modules/dx/cardNews/cardNews.css +3 -3
  26. package/src/modules/dx/cardNews/cardNews.ts +2 -2
  27. package/src/modules/dx/cardPodcastEpisode/cardPodcastEpisode.css +3 -3
  28. package/src/modules/dx/cardSmall/cardSmall.css +3 -3
  29. package/src/modules/dx/cardSmall/cardSmall.ts +1 -1
  30. package/src/modules/dx/cardTitle/cardTitle.css +2 -2
  31. package/src/modules/dx/cardTrailheadModule/cardTrailheadModule.css +1 -1
  32. package/src/modules/dx/cardTrial/cardTrial.css +3 -3
  33. package/src/modules/dx/cardTrial/cardTrial.ts +1 -1
  34. package/src/modules/dx/cardVideoPreview/cardVideoPreview.css +1 -1
  35. package/src/modules/dx/checkbox/checkbox.css +2 -2
  36. package/src/modules/dx/checkboxGroup/checkboxGroup.css +1 -1
  37. package/src/modules/dx/checkboxGroup/checkboxGroup.ts +1 -1
  38. package/src/modules/dx/codeBlock/codeBlock.css +2 -2
  39. package/src/modules/dx/codeBlock/codeBlock.ts +2 -2
  40. package/src/modules/dx/dropdown/dropdown.css +1 -1
  41. package/src/modules/dx/dropdown/dropdown.ts +4 -4
  42. package/src/modules/dx/dropdownOption/dropdownOption.css +1 -1
  43. package/src/modules/dx/dropdownOption/dropdownOption.ts +3 -3
  44. package/src/modules/dx/emptyState/emptyState.css +2 -2
  45. package/src/modules/dx/feature/feature.css +2 -2
  46. package/src/modules/dx/featuredContentHeader/featuredContentHeader.css +4 -4
  47. package/src/modules/dx/featuredContentHeader/featuredContentHeader.ts +2 -2
  48. package/src/modules/dx/featuresList/featuresList.css +2 -2
  49. package/src/modules/dx/featuresList/featuresList.ts +1 -1
  50. package/src/modules/dx/filterMenu/filterMenu.css +1 -1
  51. package/src/modules/dx/footer/footer.css +2 -2
  52. package/src/modules/dx/footer/footer.ts +4 -4
  53. package/src/modules/dx/footerOption/footerOption.ts +1 -1
  54. package/src/modules/dx/formattedDateTime/formattedDateTime.ts +5 -0
  55. package/src/modules/dx/groupText/groupText.css +2 -2
  56. package/src/modules/dx/groupText/groupText.ts +3 -3
  57. package/src/modules/dx/header/header.css +1 -1
  58. package/src/modules/dx/header/header.html +1 -0
  59. package/src/modules/dx/header/header.ts +4 -4
  60. package/src/modules/dx/headerMobileNavMenu/headerMobileNavMenu.css +1 -1
  61. package/src/modules/dx/headerMobileNavMenu/headerMobileNavMenu.ts +5 -5
  62. package/src/modules/dx/headerMobileNavMenuOption/headerMobileNavMenuOption.ts +1 -1
  63. package/src/modules/dx/headerNav/headerNav.css +1 -1
  64. package/src/modules/dx/headerNav/headerNav.ts +5 -5
  65. package/src/modules/dx/headerSearch/headerSearch.css +1 -1
  66. package/src/modules/dx/headerSearch/headerSearch.ts +3 -3
  67. package/src/modules/dx/helmet/helmet.css +2 -2
  68. package/src/modules/dx/hr/hr.css +2 -2
  69. package/src/modules/dx/icon/icon.css +1 -1
  70. package/src/modules/dx/icon/icon.ts +1 -1
  71. package/src/modules/dx/iconBadge/iconBadge.css +1 -1
  72. package/src/modules/dx/iconBadge/iconBadge.ts +1 -1
  73. package/src/modules/dx/imageAndLabel/imageAndLabel.css +3 -3
  74. package/src/modules/dx/input/input.css +2 -2
  75. package/src/modules/dx/input/input.ts +1 -1
  76. package/src/modules/dx/logo/logo.css +2 -2
  77. package/src/modules/dx/logo/logo.ts +1 -1
  78. package/src/modules/dx/modalDrawer/modalDrawer.ts +1 -1
  79. package/src/modules/dx/pagination/pagination.css +1 -1
  80. package/src/modules/dx/pagination/pagination.ts +1 -1
  81. package/src/modules/dx/podcastHost/podcastHost.css +2 -2
  82. package/src/modules/dx/popover/popover.css +1 -1
  83. package/src/modules/dx/popover/popover.ts +1 -1
  84. package/src/modules/dx/radioGroup/radioGroup.css +1 -1
  85. package/src/modules/dx/radioGroup/radioGroup.ts +1 -1
  86. package/src/modules/dx/section/section.css +2 -2
  87. package/src/modules/dx/section/section.ts +1 -1
  88. package/src/modules/dx/select/select.css +181 -8
  89. package/src/modules/dx/select/select.html +51 -54
  90. package/src/modules/dx/select/select.ts +128 -10
  91. package/src/modules/dx/sidebar/sidebar.css +2 -2
  92. package/src/modules/dx/sidebar/sidebar.ts +4 -4
  93. package/src/modules/dx/sidebarOld/sidebarOld.css +2 -2
  94. package/src/modules/dx/sidebarOld/sidebarOld.ts +3 -3
  95. package/src/modules/dx/sidebarSearch/sidebarSearch.ts +3 -3
  96. package/src/modules/dx/sidebarSearchResult/sidebarSearchResult.css +3 -3
  97. package/src/modules/dx/skipNavLink/skipNavLink.css +1 -1
  98. package/src/modules/dx/socials/socials.ts +1 -1
  99. package/src/modules/dx/tab/tab.css +1 -1
  100. package/src/modules/dx/tab/tab.ts +2 -2
  101. package/src/modules/dx/toc/toc.css +2 -2
  102. package/src/modules/dx/toc/toc.ts +1 -1
  103. package/src/modules/dx/topics/topics.ts +1 -1
  104. package/src/modules/dx/tree/tree.css +1 -1
  105. package/src/modules/dx/tree/tree.ts +1 -1
  106. package/src/modules/dx/treeItem/treeItem.css +1 -1
  107. package/src/modules/dx/treeItem/treeItem.ts +2 -2
  108. package/src/modules/dx/treeTile/treeTile.css +2 -2
  109. package/src/modules/dx/typeBadge/typeBadge.css +1 -1
  110. package/src/modules/dx/typeBadge/typeBadge.ts +1 -1
  111. package/src/modules/dx/typeBadgeGroup/typeBadgeGroup.ts +1 -1
  112. package/src/modules/dx/vimeoPlayer/vimeoPlayer.css +1 -1
  113. package/src/modules/{base-elements → dxBaseElements}/archiveCard/archiveCard.ts +0 -0
  114. package/src/modules/{base-elements → dxBaseElements}/headerBase/headerBase.ts +5 -5
  115. package/src/modules/{base-elements → dxBaseElements}/matchMediaElement/matchMediaElement.ts +1 -1
  116. package/src/modules/{base-elements → dxBaseElements}/sidebarBase/sidebarBase.ts +0 -0
  117. package/src/modules/{helpers → dxHelpers}/animations/animations.css +0 -0
  118. package/src/modules/{helpers → dxHelpers}/button/button.css +0 -0
  119. package/src/modules/{helpers → dxHelpers}/card/card.css +1 -1
  120. package/src/modules/{helpers → dxHelpers}/code/code.css +0 -0
  121. package/src/modules/{helpers → dxHelpers}/commonHeader/commonHeader.css +2 -2
  122. package/src/modules/{helpers → dxHelpers}/reset/reset.css +0 -0
  123. package/src/modules/{helpers → dxHelpers}/sidebar/sidebar.css +0 -0
  124. package/src/modules/{helpers → dxHelpers}/table/table.css +0 -0
  125. package/src/modules/{helpers → dxHelpers}/text/text.css +0 -0
  126. package/src/modules/{utils → dxUtils}/analytics/analytics.ts +0 -0
  127. package/src/modules/{utils → dxUtils}/browser/browser.ts +0 -0
  128. package/src/modules/{utils → dxUtils}/constants/breakpoints.ts +0 -0
  129. package/src/modules/{utils → dxUtils}/constants/constants.ts +0 -0
  130. package/src/modules/{utils → dxUtils}/coveo/coveo.ts +0 -0
  131. package/src/modules/{utils → dxUtils}/css/css.ts +0 -0
  132. package/src/modules/{utils → dxUtils}/dates/dates.ts +0 -0
  133. package/src/modules/{utils → dxUtils}/devices/devices.ts +0 -0
  134. package/src/modules/{utils → dxUtils}/highlight/highlight.ts +1 -1
  135. package/src/modules/{utils → dxUtils}/normalizers/normalizers.ts +9 -21
  136. package/src/modules/{utils → dxUtils}/options/options.ts +13 -9
  137. package/src/modules/{utils → dxUtils}/prismjs/prismjs.html +0 -0
  138. package/src/modules/{utils → dxUtils}/prismjs/prismjs.ts +0 -0
  139. package/src/modules/{utils → dxUtils}/queryCoordinator/queryCoordinator.ts +0 -0
  140. package/src/modules/{utils → dxUtils}/recentSearches/recentSearches.ts +0 -0
  141. package/src/modules/{utils → dxUtils}/regexps/regexps.ts +0 -0
  142. package/src/modules/{utils → dxUtils}/seo/seo.ts +0 -0
  143. package/src/modules/{utils → dxUtils}/slot/slot.ts +0 -0
  144. package/src/modules/{utils → dxUtils}/wordpress/wordpress.ts +0 -0
  145. package/LICENSE +0 -12
  146. package/src/modules/helpers/slds/slds.css +0 -191
@@ -1,5 +1,5 @@
1
1
  import { api } from "lwc";
2
- import { ArchiveCard } from "base-elements/archiveCard";
2
+ import { ArchiveCard } from "dxBaseElements/archiveCard";
3
3
  import cx from "classnames";
4
4
 
5
5
  export default class ExpandedCard extends ArchiveCard {
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  :host {
5
5
  display: block;
@@ -1,3 +1,3 @@
1
- import { ArchiveCard } from "base-elements/archiveCard";
1
+ import { ArchiveCard } from "dxBaseElements/archiveCard";
2
2
 
3
3
  export default class MinimalCard extends ArchiveCard {}
@@ -1,6 +1,6 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
3
- @import "helpers/card";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
+ @import "dxHelpers/card";
4
4
 
5
5
  .dx-card-news {
6
6
  position: relative;
@@ -1,6 +1,6 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import cx from "classnames";
3
- import { toDxColor } from "utils/css";
3
+ import { toDxColor } from "dxUtils/css";
4
4
  import {
5
5
  ButtonTextColor,
6
6
  CardNewsButtonType,
@@ -9,7 +9,7 @@ import {
9
9
  CardNewsSize,
10
10
  CardNewsTextContainerSize
11
11
  } from "typings/custom";
12
- import { track } from "utils/analytics";
12
+ import { track } from "dxUtils/analytics";
13
13
 
14
14
  export default class CardNews extends LightningElement {
15
15
  @api backgroundColor?: string = "indigo-vibrant-40";
@@ -1,6 +1,6 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
3
- @import "helpers/card";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
+ @import "dxHelpers/card";
4
4
 
5
5
  .card-podcast-episode {
6
6
  display: flex;
@@ -1,6 +1,6 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
3
- @import "helpers/card";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
+ @import "dxHelpers/card";
4
4
 
5
5
  :host {
6
6
  --heading-offset: var(--dx-g-spacing-sm);
@@ -6,7 +6,7 @@ import {
6
6
  IconSymbol,
7
7
  IconBadgeShape
8
8
  } from "typings/custom";
9
- import { isSlotEmpty, stopPropagationOnSlotted } from "utils/slot";
9
+ import { isSlotEmpty, stopPropagationOnSlotted } from "dxUtils/slot";
10
10
 
11
11
  export default class CardSmall extends LightningElement {
12
12
  @api badgeBackgroundColor?: string = "indigo-vibrant-50";
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  :host {
5
5
  --dx-c-card-title-color: var(--dx-g-text-heading-color);
@@ -1,4 +1,4 @@
1
- @import "helpers/card";
1
+ @import "dxHelpers/card";
2
2
 
3
3
  .badge {
4
4
  --badge-size: var(--dx-g-spacing-5xl);
@@ -1,6 +1,6 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
3
- @import "helpers/card";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
+ @import "dxHelpers/card";
4
4
 
5
5
  .card-trial {
6
6
  position: relative;
@@ -1,6 +1,6 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import cx from "classnames";
3
- import { toJson } from "utils/normalizers";
3
+ import { toJson } from "dxUtils/normalizers";
4
4
 
5
5
  export default class CardTrial extends LightningElement {
6
6
  @api badgeBackgroundColor?: string = "indigo-vibrant-90";
@@ -1,4 +1,4 @@
1
- @import "helpers/card";
1
+ @import "dxHelpers/card";
2
2
 
3
3
  .dx-play-button {
4
4
  position: absolute;
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  :host {
5
5
  display: block;
@@ -1,4 +1,4 @@
1
- @import "helpers/reset";
1
+ @import "dxHelpers/reset";
2
2
 
3
3
  fieldset {
4
4
  display: grid;
@@ -1,5 +1,5 @@
1
1
  import { LightningElement, api } from "lwc";
2
- import { toJson } from "utils/normalizers";
2
+ import { toJson } from "dxUtils/normalizers";
3
3
 
4
4
  type Option = {
5
5
  value: string;
@@ -1,5 +1,5 @@
1
- @import "helpers/code";
2
- @import "helpers/text";
1
+ @import "dxHelpers/code";
2
+ @import "dxHelpers/text";
3
3
  @import "./darkTheme.css";
4
4
  @import "./lightTheme.css";
5
5
 
@@ -1,12 +1,12 @@
1
1
  import { LightningElement, api, wire, track } from "lwc";
2
2
  import { CodeBlockTheme, CodeBlockLanguage } from "typings/custom";
3
3
  import cx from "classnames";
4
- import Prism from "utils/prismjs";
4
+ import Prism from "dxUtils/prismjs";
5
5
  import {
6
6
  getLocalStorageData,
7
7
  setLocalStorageData
8
8
  } from "@sfdocs-internal/wires";
9
- import { track as gtmTrack } from "utils/analytics";
9
+ import { track as gtmTrack } from "dxUtils/analytics";
10
10
 
11
11
  // Used por remove enclosing <pre> tag's (if occurs)
12
12
  const preTagRegexp: RegExp = /^<pre.*?>(.*)<\/pre>$/is;
@@ -1,4 +1,4 @@
1
- @import "helpers/reset";
1
+ @import "dxHelpers/reset";
2
2
 
3
3
  .menu-nested::part(content) {
4
4
  padding-top: var(--dx-g-spacing-sm);
@@ -1,11 +1,11 @@
1
- import { Option, PopperPlacement } from "typings/custom";
1
+ import { OptionWithNested, PopperPlacement } from "typings/custom";
2
2
  import { LightningElement, api, track } from "lwc";
3
3
  import cx from "classnames";
4
4
  import get from "lodash.get";
5
- import { deepmapOptions } from "utils/options";
6
- import { toJson } from "utils/normalizers";
5
+ import { deepmapOptions } from "dxUtils/options";
6
+ import { toJson } from "dxUtils/normalizers";
7
7
 
8
- interface DropdownOption extends Option {
8
+ interface DropdownOption extends OptionWithNested {
9
9
  // link that gets shown as a highlighted link at end of option group
10
10
  calloutLink?: {
11
11
  href: string;
@@ -1,4 +1,4 @@
1
- @import "helpers/reset";
1
+ @import "dxHelpers/reset";
2
2
 
3
3
  .option {
4
4
  display: flex;
@@ -1,10 +1,10 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import cx from "classnames";
3
- import { Option } from "typings/custom";
4
- import { track } from "utils/analytics";
3
+ import { OptionWithNested } from "typings/custom";
4
+ import { track } from "dxUtils/analytics";
5
5
 
6
6
  export default class DropdownOption extends LightningElement {
7
- @api option!: Option;
7
+ @api option!: OptionWithNested;
8
8
  @api suppressGtmNavHeadings: boolean = false;
9
9
  @api keyValue!: string;
10
10
  @api active: boolean = false;
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  :host {
5
5
  --dx-c-empty-state-background: var(--dx-g-gray-95);
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  :host {
5
5
  --dx-c-feature-img-box-shadow: 0 6px 30px 0 rgba(0, 20, 45, 0.4);
@@ -1,7 +1,7 @@
1
- @import "helpers/button";
2
- @import "helpers/reset";
3
- @import "helpers/text";
4
- @import "helpers/card";
1
+ @import "dxHelpers/button";
2
+ @import "dxHelpers/reset";
3
+ @import "dxHelpers/text";
4
+ @import "dxHelpers/card";
5
5
 
6
6
  :host {
7
7
  width: 100%;
@@ -1,8 +1,8 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import cx from "classnames";
3
3
  import { LightningSlotElement } from "typings/custom";
4
- import { isSlotEmpty } from "utils/slot";
5
- import { toJson } from "utils/normalizers";
4
+ import { isSlotEmpty } from "dxUtils/slot";
5
+ import { toJson } from "dxUtils/normalizers";
6
6
  import { ImageAndLabel } from "../imageAndLabel";
7
7
  import svgs from "./svgs";
8
8
 
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  .dx-text-heading-5 {
5
5
  display: inline-flex;
@@ -1,6 +1,6 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import { FeatureItem } from "typings/custom";
3
- import { toJson } from "utils/normalizers";
3
+ import { toJson } from "dxUtils/normalizers";
4
4
 
5
5
  /**
6
6
  * @element dx-features-list
@@ -1,4 +1,4 @@
1
- @import "helpers/reset";
1
+ @import "dxHelpers/reset";
2
2
 
3
3
  :host {
4
4
  --dx-c-filter-menu-margin: 0;
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  .content-container {
5
5
  padding: 0 var(--dx-g-page-padding-horizontal);
@@ -1,7 +1,7 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import cx from "classnames";
3
- import { toJson } from "utils/normalizers";
4
- import { FooterVariant, Option } from "typings/custom";
3
+ import { FooterVariant, OptionWithLink } from "typings/custom";
4
+ import { toJson } from "dxUtils/normalizers";
5
5
  import {
6
6
  generalLinks,
7
7
  termsLinks,
@@ -9,7 +9,7 @@ import {
9
9
  privacyHref,
10
10
  intellectualHref
11
11
  } from "./links";
12
- import { track } from "utils/analytics";
12
+ import { track } from "dxUtils/analytics";
13
13
 
14
14
  const PATH = "/newsletter";
15
15
  const createNewsletterSignupHref = (email: string): string =>
@@ -31,7 +31,7 @@ export default class Footer extends LightningElement {
31
31
  this._locales = toJson(value);
32
32
  }
33
33
 
34
- private _locales?: Option[] | null = null;
34
+ private _locales?: OptionWithLink[] | null = null;
35
35
  private termsLinks = termsLinks;
36
36
  private generalLinks = generalLinks;
37
37
  private socialLinks = socialLinks;
@@ -1,5 +1,5 @@
1
1
  import { LightningElement, api } from "lwc";
2
- import { track } from "utils/analytics";
2
+ import { track } from "dxUtils/analytics";
3
3
 
4
4
  export default class FooterOption extends LightningElement {
5
5
  @api href: string | null = null;
@@ -28,6 +28,11 @@ export default class FormattedDateTime extends LightningElement {
28
28
  }
29
29
 
30
30
  this._unformattedDate = new Date(value);
31
+
32
+ if (this._unformattedDate.toString() === "Invalid Date") {
33
+ // this is a fix for Safari since it doesn't support date strings with 'yyyy/mm/dd' patterns
34
+ this._unformattedDate = new Date(value.replace(/-/g, "/"));
35
+ }
31
36
  }
32
37
  get value() {
33
38
  const options = this.getOptions();
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  :host {
5
5
  display: block;
@@ -1,9 +1,9 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import cx from "classnames";
3
3
  import { LightningSlotElement, Link } from "typings/custom";
4
- import { isSlotEmpty } from "utils/slot";
5
- import { toJson } from "utils/normalizers";
6
- import { track } from "utils/analytics";
4
+ import { isSlotEmpty } from "dxUtils/slot";
5
+ import { toJson } from "dxUtils/normalizers";
6
+ import { track } from "dxUtils/analytics";
7
7
 
8
8
  type OptionalLink = Link | null;
9
9
 
@@ -1,4 +1,4 @@
1
- @import "helpers/commonHeader";
1
+ @import "dxHelpers/commonHeader";
2
2
 
3
3
  :host {
4
4
  --dx-c-header-search-width: 316px;
@@ -26,6 +26,7 @@
26
26
  onstatechange={handleStateChange}
27
27
  ></dx-header-search>
28
28
  </div>
29
+ <dx-avatar-button></dx-avatar-button>
29
30
  <div if:true={showSignup} class="header-login-signup">
30
31
  <dx-button
31
32
  aria-label="Sign Up For Salesforce Developer Edition"
@@ -1,10 +1,10 @@
1
1
  import { api } from "lwc";
2
- import { HeaderBase } from "base-elements/headerBase";
3
- import { toJson } from "utils/normalizers";
4
- import type { Option } from "typings/custom";
2
+ import type { OptionWithNested } from "typings/custom";
3
+ import { HeaderBase } from "dxBaseElements/headerBase";
4
+ import { toJson } from "dxUtils/normalizers";
5
5
 
6
6
  export default class Header extends HeaderBase {
7
- private _breadcrumbs!: Option[];
7
+ private _breadcrumbs!: OptionWithNested[];
8
8
 
9
9
  @api
10
10
  get breadcrumbs() {
@@ -1,4 +1,4 @@
1
- @import "helpers/reset";
1
+ @import "dxHelpers/reset";
2
2
 
3
3
  :host {
4
4
  --dx-c-color-background: var(--dx-g-brand-default-color-background);
@@ -1,7 +1,7 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import cx from "classnames";
3
- import { Option } from "typings/custom";
4
- import { deepmapOptions } from "utils/options";
3
+ import { OptionWithNested } from "typings/custom";
4
+ import { deepmapOptions } from "dxUtils/options";
5
5
 
6
6
  export default class HeaderMobileNavMenu extends LightningElement {
7
7
  @api open: boolean = false;
@@ -9,7 +9,7 @@ export default class HeaderMobileNavMenu extends LightningElement {
9
9
  @api pathname: string | null = null;
10
10
 
11
11
  @api
12
- set navItems(_navItems: Option[]) {
12
+ set navItems(_navItems: OptionWithNested[]) {
13
13
  this._navItems = _navItems;
14
14
  }
15
15
  get navItems() {
@@ -24,7 +24,7 @@ export default class HeaderMobileNavMenu extends LightningElement {
24
24
  // then we use deepmapper to affect the actual root options (actual links)
25
25
  return deepmapOptions(
26
26
  navItems,
27
- (app: Option, index: number, level: number) => {
27
+ (app: OptionWithNested, index: number, level: number) => {
28
28
  const active = app.link
29
29
  ? app.link.href === this.pathname
30
30
  : false;
@@ -47,7 +47,7 @@ export default class HeaderMobileNavMenu extends LightningElement {
47
47
  );
48
48
  }
49
49
 
50
- private _navItems: Option[] = [];
50
+ private _navItems: OptionWithNested[] = [];
51
51
  private navElement: HTMLElement | null = null;
52
52
  private wasOpen: boolean = false;
53
53
  private showScrollShadow: boolean = false;
@@ -1,5 +1,5 @@
1
1
  import { LightningElement, api } from "lwc";
2
- import { track } from "utils/analytics";
2
+ import { track } from "dxUtils/analytics";
3
3
 
4
4
  export default class HeaderMobileNavMenuOption extends LightningElement {
5
5
  @api href: string | null = null;
@@ -1,4 +1,4 @@
1
- @import "helpers/reset";
1
+ @import "dxHelpers/reset";
2
2
 
3
3
  a {
4
4
  text-decoration: none;
@@ -1,18 +1,18 @@
1
1
  import { LightningElement, api } from "lwc";
2
- import { TabVariant, Option } from "typings/custom";
2
+ import { TabVariant, OptionWithNested } from "typings/custom";
3
3
  export default class HeaderNav extends LightningElement {
4
4
  @api pathname: string | null = null;
5
5
  @api variant: TabVariant = "default";
6
6
  @api ariaLabel: string = "Primary Navigation";
7
7
 
8
8
  @api
9
- set navItems(_navItems: Option[]) {
9
+ set navItems(_navItems: OptionWithNested[]) {
10
10
  this._navItems = _navItems;
11
11
  }
12
12
 
13
13
  get navItems() {
14
14
  const activeItem = this._navItems
15
- .filter((navItem: Option) => {
15
+ .filter((navItem: OptionWithNested) => {
16
16
  if (!navItem.link || navItem.link.href === "/") {
17
17
  return false;
18
18
  }
@@ -31,7 +31,7 @@ export default class HeaderNav extends LightningElement {
31
31
  (b.link?.href.length || 0) - (a.link?.href.length || 0)
32
32
  )[0];
33
33
 
34
- const items = this._navItems.map((navItem: Option) =>
34
+ const items = this._navItems.map((navItem: OptionWithNested) =>
35
35
  navItem.link
36
36
  ? {
37
37
  ...navItem,
@@ -45,7 +45,7 @@ export default class HeaderNav extends LightningElement {
45
45
  return items;
46
46
  }
47
47
 
48
- private _navItems: Option[] = [];
48
+ private _navItems: OptionWithNested[] = [];
49
49
 
50
50
  private requestOpenNavMenu(e: PointerEvent) {
51
51
  const detail = (<HTMLButtonElement>e.currentTarget).getAttribute(
@@ -1,4 +1,4 @@
1
- @import "helpers/reset";
1
+ @import "dxHelpers/reset";
2
2
 
3
3
  /* DESKTOP */
4
4
 
@@ -1,7 +1,7 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import cx from "classnames";
3
- import { PopoverRequestCloseType, Option } from "typings/custom";
4
- import { buildSearchEngine } from "utils/coveo";
3
+ import { PopoverRequestCloseType, OptionWithLink } from "typings/custom";
4
+ import { buildSearchEngine } from "dxUtils/coveo";
5
5
  import {
6
6
  StandaloneSearchBox as StandaloneSearchBoxType,
7
7
  StandaloneSearchBoxState,
@@ -28,7 +28,7 @@ export default class HeaderSearch extends LightningElement {
28
28
  return this.mobile ? null : "desktop_search-container";
29
29
  }
30
30
 
31
- private get suggestions(): Option[] {
31
+ private get suggestions(): OptionWithLink[] {
32
32
  if (this.searchState) {
33
33
  return this.searchState.suggestions.map(
34
34
  ({ highlightedValue }: { highlightedValue: string }) => ({
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  span {
5
5
  font-family: var(--dx-g-font-sans);
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  :host {
5
5
  --dx-c-hr-padding-horizontal: var(--dx-g-page-padding-horizontal);
@@ -1,4 +1,4 @@
1
- @import "helpers/reset";
1
+ @import "dxHelpers/reset";
2
2
 
3
3
  :host {
4
4
  display: block;
@@ -1,6 +1,6 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import { IconSprite, IconSize, IconSymbol } from "typings/custom";
3
- import { toDxColor } from "utils/css";
3
+ import { toDxColor } from "dxUtils/css";
4
4
 
5
5
  const fetches = new Map<string, Promise<any>>();
6
6
 
@@ -1,4 +1,4 @@
1
- @import "helpers/reset";
1
+ @import "dxHelpers/reset";
2
2
 
3
3
  :host {
4
4
  display: block;
@@ -1,7 +1,7 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import cx from "classnames";
3
3
  import { IconSprite, IconSymbol, IconBadgeShape } from "typings/custom";
4
- import { toDxColor } from "utils/css";
4
+ import { toDxColor } from "dxUtils/css";
5
5
 
6
6
  const validShapes = ["square", "circle"];
7
7
 
@@ -1,6 +1,6 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
3
- @import "helpers/button";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
+ @import "dxHelpers/button";
4
4
 
5
5
  :host {
6
6
  --dx-c-image-and-label-text-color: var(--dx-g-text-label-color);
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  :host {
5
5
  --dx-c-input-background-active: white;
@@ -1,7 +1,7 @@
1
1
  import { LightningElement, api } from "lwc";
2
2
  import cx from "classnames";
3
3
  import { IconSize, IconSymbol } from "typings/custom";
4
- import { isMac } from "utils/devices";
4
+ import { isMac } from "dxUtils/devices";
5
5
  import { isValidEmail } from "./validators";
6
6
 
7
7
  type ValidatorMap = {
@@ -1,5 +1,5 @@
1
- @import "helpers/reset";
2
- @import "helpers/text";
1
+ @import "dxHelpers/reset";
2
+ @import "dxHelpers/text";
3
3
 
4
4
  :host {
5
5
  --dx-c-logo-label-color: var(--dx-g-blue-vibrant-20);