@salesforcedevs/docs-components 1.3.209-lang4-alpha → 1.3.209-lang6-alpha

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lwc.config.json CHANGED
@@ -18,7 +18,6 @@
18
18
  "doc/overview",
19
19
  "doc/phase",
20
20
  "doc/xmlContent",
21
- "doc/sidebarFooterNav",
22
21
  "docUtils/utils"
23
22
  ]
24
23
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salesforcedevs/docs-components",
3
- "version": "1.3.209-lang4-alpha",
3
+ "version": "1.3.209-lang6-alpha",
4
4
  "description": "Docs Lightning web components for DSC",
5
5
  "license": "MIT",
6
6
  "main": "index.js",
@@ -1,44 +0,0 @@
1
- @import "dxHelpers/reset";
2
-
3
- :host {
4
- --button-primary-color: var(--dx-g-blue-vibrant-50);
5
- --button-primary-color-hover: var(--dx-g-cloud-blue-vibrant-95);
6
- }
7
-
8
- .footer-display {
9
- display: flex;
10
- }
11
-
12
- .footer_lang-dropdown {
13
- display: flex;
14
- padding: 0 var(--dx-g-spacing-md);
15
- margin-left: var(--dx-g-spacing-sm);
16
- height: var(--dx-g-spacing-xl);
17
- border-radius: var(--dx-g-spacing-xs);
18
- align-items: center;
19
- }
20
-
21
- .footer_lang-dropdown > dx-button {
22
- --dx-c-button-primary-color: var(--button-primary-color);
23
- --dx-c-slot-empty-width: min-content;
24
- --border-color: var(--button-primary-color);
25
- }
26
-
27
- .footer_lang-dropdown:hover,
28
- .footer_lang-dropdown:active,
29
- .footer_lang-dropdown:focus,
30
- .pdf_bail-link:hover {
31
- background-color: var(--button-primary-color-hover);
32
-
33
- --border-color: var(--button-primary-color-hover);
34
- }
35
-
36
- .pdf_bail-link {
37
- --dx-c-button-horizontal-spacing: var(--dx-g-spacing-sm);
38
-
39
- padding: 0 var(--dx-g-spacing-md);
40
- border-radius: var(--dx-g-spacing-xs);
41
- display: flex;
42
- height: var(--dx-g-spacing-xl);
43
- align-items: center;
44
- }
@@ -1,59 +0,0 @@
1
- <template>
2
- <div if:false={mobile} class="footer-display">
3
- <dx-button
4
- if:true={hasBailLink}
5
- aria-label={bailLabel}
6
- class="pdf_bail-link"
7
- href={bailHref}
8
- onclick={handleBailClick}
9
- variant="inline"
10
- icon-size="medium"
11
- icon-symbol="new_window"
12
- target="_blank"
13
- >
14
- {bailLabel}
15
- </dx-button>
16
- <dx-dropdown
17
- if:true={hasLanguages}
18
- class="footer_lang-dropdown"
19
- options={languages}
20
- small
21
- value-path={langValuePath}
22
- value={language}
23
- onchange={onLangChange}
24
- variant="docoption"
25
- lang-picker="true"
26
- >
27
- <dx-button
28
- aria-label="Select Language"
29
- variant="inline"
30
- icon-size="medium"
31
- icon-symbol="world"
32
- >
33
- {languageLabel}
34
- </dx-button>
35
- </dx-dropdown>
36
- </div>
37
- <div if:true={mobile} class="footer-display">
38
- <dx-dropdown
39
- if:true={hasLanguages}
40
- class="footer_lang-dropdown"
41
- options={languages}
42
- small
43
- value-path={langValuePath}
44
- value={language}
45
- onchange={onLangChange}
46
- variant="docoption"
47
- lang-picker="true"
48
- >
49
- <dx-button
50
- aria-label="Select Language"
51
- variant="inline"
52
- icon-size="small"
53
- icon-symbol="world"
54
- >
55
- {languageLabel}
56
- </dx-button>
57
- </dx-dropdown>
58
- </div>
59
- </template>
@@ -1,109 +0,0 @@
1
- /* eslint-disable @lwc/lwc/no-document-query */
2
- import { LightningElement, api } from "lwc";
3
- import type { OptionWithLink } from "typings/custom";
4
- import { toJson } from "dxUtils/normalizers";
5
- import get from "lodash.get";
6
- import { track } from "dxUtils/analytics";
7
-
8
- const MOBILE_SIZE_MATCH = "768px";
9
-
10
- export default class SidebarFooterNav extends LightningElement {
11
- @api langValuePath: string = "id";
12
- @api bailHref?: string | null = null;
13
- @api bailLabel?: string | null = null;
14
-
15
- @api
16
- get languages() {
17
- return this._languages;
18
- }
19
-
20
- set languages(value) {
21
- this._languages = toJson(value);
22
- }
23
-
24
- @api
25
- get language() {
26
- return this._language;
27
- }
28
-
29
- set language(value) {
30
- if (this._language !== value) {
31
- this._language = value;
32
- }
33
- }
34
-
35
- private _languages!: OptionWithLink[];
36
- private _language: string | null = null;
37
- private mobile: boolean = false;
38
- private matchMedia!: MediaQueryList;
39
-
40
- private get hasLanguages(): boolean {
41
- return !!(this.languages && this.languages.length > 1);
42
- }
43
-
44
- private get languageLabel(): string {
45
- return (
46
- (this.language &&
47
- this.languages.find(
48
- (lang) => get(lang, this.langValuePath) === this.language
49
- )?.label) ||
50
- this.languages[0].label
51
- );
52
- }
53
-
54
- get hasBailLink(): boolean {
55
- return !!(this.bailHref && this.bailLabel);
56
- }
57
-
58
- private onLangChange(event: CustomEvent<string>): void {
59
- const { detail } = event;
60
- this._language = detail;
61
-
62
- this.dispatchEvent(
63
- new CustomEvent("langchange", {
64
- detail,
65
- bubbles: true,
66
- composed: true
67
- })
68
- );
69
- }
70
-
71
- private getFilename = function (path: string) {
72
- return path.substring(path.lastIndexOf("/") + 1);
73
- };
74
-
75
- private handleBailClick(event: Event) {
76
- const payload = {
77
- click_text: "pdf",
78
- click_url: this.bailHref,
79
- element_title: "pdf",
80
- element_type: "link",
81
- content_category: "download"
82
- };
83
- track(event.target!, "custEv_pdfDownload", {
84
- ...payload,
85
- file_name: this.getFilename(this.bailHref!),
86
- file_extension: "pdf"
87
- });
88
-
89
- track(event.target!, "custEv_linkClick", {
90
- ...payload
91
- });
92
- }
93
-
94
- connectedCallback() {
95
- this.matchMedia = window.matchMedia(
96
- `(max-width: ${MOBILE_SIZE_MATCH})`
97
- );
98
- this.onMediaChange(this.matchMedia);
99
- this.matchMedia.addEventListener("change", this.onMediaChange);
100
- }
101
-
102
- disconnectedCallback() {
103
- this.matchMedia.removeEventListener("change", this.onMediaChange);
104
- }
105
-
106
- private onMediaChange = (event: MediaQueryListEvent | MediaQueryList) => {
107
- this.mobile = event.matches;
108
- };
109
- }