@salesforcedevs/dx-components 1.3.53-alpha → 1.3.53
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 +2 -0
- package/package.json +7 -3
- package/src/assets/icons/salesforcebrand-sprite/svg/symbols.svg +125 -7
- package/src/assets/svg/privacyicon.png +0 -0
- package/src/modules/dx/banner/banner.ts +1 -1
- package/src/modules/dx/cardBlogPost/cardBlogPost.html +1 -3
- package/src/modules/dx/cardBlogPost/cardBlogPost.ts +1 -3
- package/src/modules/dx/cardContent/cardContent.css +5 -0
- package/src/modules/dx/cardContent/cardContent.html +10 -6
- package/src/modules/dx/cardContent/cardContent.ts +22 -7
- package/src/modules/dx/cardExpanded/cardExpanded.css +15 -5
- package/src/modules/dx/cardExpanded/cardExpanded.html +9 -5
- package/src/modules/dx/cardExpanded/cardExpanded.ts +24 -8
- package/src/modules/dx/cardNews/cardNews.css +14 -0
- package/src/modules/dx/cardNews/cardNews.ts +2 -1
- package/src/modules/dx/cardTrial/cardTrial.html +2 -0
- package/src/modules/dx/cardTrial/cardTrial.ts +32 -1
- package/src/modules/dx/cardTrialExpanded/cardTrialExpanded.css +5 -0
- package/src/modules/dx/cardTrialExpanded/cardTrialExpanded.html +1 -0
- package/src/modules/dx/cardTrialExpanded/cardTrialExpanded.ts +13 -0
- package/src/modules/dx/codeBlock/codeBlock.ts +6 -1
- package/src/modules/dx/codeBlock/darkTheme.css +8 -1
- package/src/modules/dx/codeBlock/lightTheme.css +8 -2
- package/src/modules/dx/dropdownOption/dropdownOption.html +2 -2
- package/src/modules/dx/featuredContentHeader/featuredContentHeader.css +18 -10
- package/src/modules/dx/featuredContentHeader/featuredContentHeader.html +109 -107
- package/src/modules/dx/featuredContentHeader/featuredContentHeader.ts +17 -9
- package/src/modules/dx/footer/footer.css +9 -0
- package/src/modules/dx/footer/footer.html +6 -0
- package/src/modules/dx/footer/footer.ts +5 -2
- package/src/modules/dx/footer/links.ts +11 -0
- package/src/modules/dx/formattedDateTime/formattedDateTime.ts +3 -3
- package/src/modules/dx/header/header.html +2 -2
- package/src/modules/dx/header/header.ts +4 -0
- package/src/modules/dx/headerSearch/headerSearch.html +0 -2
- package/src/modules/dx/headerSearch/headerSearch.ts +0 -1
- package/src/modules/dx/hr/hr.css +0 -3
- package/src/modules/dx/hr/hr.ts +7 -1
- package/src/modules/dx/input/input.ts +0 -2
- package/src/modules/dx/mainContentHeader/mainContentHeader.css +102 -0
- package/src/modules/dx/mainContentHeader/mainContentHeader.html +23 -0
- package/src/modules/dx/mainContentHeader/mainContentHeader.ts +35 -0
- package/src/modules/dx/scrollManager/scrollManager.html +1 -0
- package/src/modules/dx/scrollManager/scrollManager.ts +110 -0
- package/src/modules/dx/searchResults/searchResults.css +2 -2
- package/src/modules/dx/section/section.css +9 -0
- package/src/modules/dx/section/section.html +10 -0
- package/src/modules/dx/section/section.ts +5 -0
- package/src/modules/dx/sidebar/sidebar.css +4 -0
- package/src/modules/dx/sidebar/sidebar.html +1 -0
- package/src/modules/dx/sidebar/sidebar.ts +8 -0
- package/src/modules/dx/sidebarOld/sidebarOld.ts +2 -0
- package/src/modules/dx/sidebarSearch/sidebarSearch.html +0 -1
- package/src/modules/dx/sidebarSearch/sidebarSearch.ts +5 -1
- package/src/modules/dx/tbidAvatarButton/tbidAvatarButton.css +2 -2
- package/src/modules/dx/tbidAvatarButton/tbidAvatarButton.ts +3 -2
- package/src/modules/dx/toc/toc.ts +13 -0
- package/src/modules/dx/treeItem/treeItem.html +3 -2
- package/src/modules/dx/treeItem/treeItem.ts +18 -8
- package/src/modules/dx/typeBadge/typeBadge.ts +2 -2
- package/src/modules/dxBaseElements/headerBase/headerBase.ts +18 -8
- package/src/modules/dxHelpers/card/card.css +4 -0
- package/src/modules/dxHelpers/table/table.css +1 -10
- package/src/modules/dxUtils/dates/dates.ts +22 -1
- package/src/modules/dxUtils/normalizers/normalizers.ts +1 -3
- package/src/modules/dxUtils/prismjs/prismjs.ts +132 -14
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { LightningElement, api } from "lwc";
|
|
2
2
|
import { InternalTreeNode } from "typings/custom";
|
|
3
3
|
import { track } from "dxUtils/analytics";
|
|
4
|
-
import { SidebarGtmAction } from "typings/custom";
|
|
5
4
|
import { isInViewport } from "dxUtils/browser";
|
|
6
5
|
|
|
7
6
|
const DEFAULT_TARGET = "_self";
|
|
@@ -9,6 +8,7 @@ const DEFAULT_TARGET = "_self";
|
|
|
9
8
|
export default class TreeItem extends LightningElement {
|
|
10
9
|
@api selectedKey?: string;
|
|
11
10
|
@api isRoot: boolean = false;
|
|
11
|
+
@api parentName?: string = "";
|
|
12
12
|
|
|
13
13
|
@api
|
|
14
14
|
public get treeNode() {
|
|
@@ -94,20 +94,28 @@ export default class TreeItem extends LightningElement {
|
|
|
94
94
|
private onIconClick(event: CustomEvent): void {
|
|
95
95
|
const isSelectAction = false;
|
|
96
96
|
this.doExpand(isSelectAction);
|
|
97
|
-
this.sendGtm(event
|
|
97
|
+
this.sendGtm(event);
|
|
98
98
|
}
|
|
99
99
|
|
|
100
|
-
private
|
|
101
|
-
if
|
|
100
|
+
private preventDefaultLinkBehavior(event: Event) {
|
|
101
|
+
// prevent page refresh if href isn't present or link is already active
|
|
102
|
+
if (
|
|
103
|
+
!this._treeNode.link?.href ||
|
|
104
|
+
this._treeNode.link?.href === window.location.pathname
|
|
105
|
+
) {
|
|
102
106
|
event.preventDefault();
|
|
103
107
|
}
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
private onLinkClick(event: Event): void {
|
|
111
|
+
this.preventDefaultLinkBehavior(event);
|
|
104
112
|
|
|
105
113
|
if (this.isParent) {
|
|
106
114
|
const isSelectAction = true;
|
|
107
115
|
this.doExpand(isSelectAction);
|
|
108
116
|
}
|
|
109
117
|
|
|
110
|
-
this.sendGtm(event
|
|
118
|
+
this.sendGtm(event);
|
|
111
119
|
this.fireEvent("tileselected", { name: this._treeNode.name });
|
|
112
120
|
}
|
|
113
121
|
|
|
@@ -137,10 +145,12 @@ export default class TreeItem extends LightningElement {
|
|
|
137
145
|
this.isExpanded = value;
|
|
138
146
|
}
|
|
139
147
|
|
|
140
|
-
private sendGtm(event: Event
|
|
141
|
-
track(event.currentTarget!, "
|
|
148
|
+
private sendGtm(event: Event) {
|
|
149
|
+
track(event.currentTarget!, "custEv_leftNavClick", {
|
|
150
|
+
navType: "left nav bar",
|
|
142
151
|
clickText: this._treeNode.label,
|
|
143
|
-
|
|
152
|
+
clickUrl: this.href,
|
|
153
|
+
navItem: this.parentName
|
|
144
154
|
});
|
|
145
155
|
}
|
|
146
156
|
}
|
|
@@ -149,8 +149,8 @@ export default class TypeBadge extends LightningElement {
|
|
|
149
149
|
private get style(): string {
|
|
150
150
|
if (this.dark) {
|
|
151
151
|
return buildStyleColorVariables({
|
|
152
|
-
background:
|
|
153
|
-
color:
|
|
152
|
+
background: "--dx-g-purple-vibrant-40",
|
|
153
|
+
color: "--dx-g-brand-default-color-background"
|
|
154
154
|
});
|
|
155
155
|
}
|
|
156
156
|
if (this.variantColorScope) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { LightningElement, api } from "lwc";
|
|
2
2
|
import cx from "classnames";
|
|
3
3
|
import { Brand, OptionWithLink, OptionWithNested } from "typings/custom";
|
|
4
|
-
import { toJson } from "dxUtils/normalizers";
|
|
4
|
+
import { toJson, normalizeBoolean } from "dxUtils/normalizers";
|
|
5
5
|
import { track } from "dxUtils/analytics";
|
|
6
6
|
|
|
7
7
|
const VALID_BRANDS = [
|
|
@@ -21,11 +21,11 @@ const VALID_BRANDS = [
|
|
|
21
21
|
];
|
|
22
22
|
|
|
23
23
|
export const ANALYTICS_INFO = {
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
click_text: "Sign Up",
|
|
25
|
+
element_title: "Sign Up Header Button",
|
|
26
26
|
elementType: "button",
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
element_type: "internal",
|
|
28
|
+
content_category: "cta"
|
|
29
29
|
};
|
|
30
30
|
|
|
31
31
|
export abstract class HeaderBase extends LightningElement {
|
|
@@ -42,7 +42,7 @@ export abstract class HeaderBase extends LightningElement {
|
|
|
42
42
|
@api title: string = "Salesforce";
|
|
43
43
|
@api version?: string | null = null;
|
|
44
44
|
@api bannerMarkup =
|
|
45
|
-
'
|
|
45
|
+
'<span><a href="https://forms.gle/oWYTbH9RvGyt9uxx7" target="blank">Share your feedback</a>about our new site.</span>';
|
|
46
46
|
|
|
47
47
|
@api
|
|
48
48
|
get navItems() {
|
|
@@ -61,6 +61,15 @@ export abstract class HeaderBase extends LightningElement {
|
|
|
61
61
|
this._versions = toJson(value);
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
+
@api
|
|
65
|
+
get showBanner() {
|
|
66
|
+
return this._showBanner && this.bannerMarkup;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
set showBanner(value) {
|
|
70
|
+
this._showBanner = normalizeBoolean(value);
|
|
71
|
+
}
|
|
72
|
+
|
|
64
73
|
private _navItems!: OptionWithNested[];
|
|
65
74
|
private _versions!: OptionWithLink[];
|
|
66
75
|
private matchMedia!: MediaQueryList;
|
|
@@ -69,6 +78,7 @@ export abstract class HeaderBase extends LightningElement {
|
|
|
69
78
|
private showMobileNavMenu: boolean = false;
|
|
70
79
|
private showNavScrollShadow: boolean = false;
|
|
71
80
|
protected isSearchOpen: boolean = false;
|
|
81
|
+
private _showBanner?: boolean = false;
|
|
72
82
|
|
|
73
83
|
get url() {
|
|
74
84
|
return this.href ? new URL(this.href!) : window.location;
|
|
@@ -191,9 +201,9 @@ export abstract class HeaderBase extends LightningElement {
|
|
|
191
201
|
};
|
|
192
202
|
|
|
193
203
|
private handleSignUpClick(e: PointerEvent) {
|
|
194
|
-
track(e.currentTarget!, "
|
|
204
|
+
track(e.currentTarget!, "custEv_browseTrialsClick", {
|
|
195
205
|
...ANALYTICS_INFO,
|
|
196
|
-
|
|
206
|
+
click_url: this.signupLink
|
|
197
207
|
});
|
|
198
208
|
}
|
|
199
209
|
|
|
@@ -28,17 +28,13 @@ th {
|
|
|
28
28
|
border-bottom: 3px solid var(--dx-g-indigo-vibrant-30);
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
td {
|
|
32
|
-
vertical-align: top;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
31
|
tr th,
|
|
36
32
|
tr td {
|
|
37
33
|
text-align: left;
|
|
34
|
+
vertical-align: top;
|
|
38
35
|
}
|
|
39
36
|
|
|
40
37
|
table tbody tr td {
|
|
41
|
-
vertical-align: middle;
|
|
42
38
|
border-bottom: 1px solid var(--dx-g-gray-90);
|
|
43
39
|
}
|
|
44
40
|
|
|
@@ -96,11 +92,6 @@ td :is(.li, p, .p, dd) {
|
|
|
96
92
|
font-size: var(--table-cell-text-base);
|
|
97
93
|
}
|
|
98
94
|
|
|
99
|
-
td :is(ul) {
|
|
100
|
-
font-size: var(--table-cell-text-base) !important;
|
|
101
|
-
margin-left: 0 !important;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
95
|
td doc-content-callout :is(.li, p, .p, dd) {
|
|
105
96
|
/* Override/reset for callouts -- see https://gus.lightning.force.com/lightning/r/ADM_Work__c/a07EE0000081MGTYA2/view */
|
|
106
97
|
font-size: var(--dx-g-text-base);
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { DateTime } from "luxon";
|
|
2
|
+
|
|
1
3
|
const MONTHS = {
|
|
2
4
|
January: 0,
|
|
3
5
|
February: 1,
|
|
@@ -20,7 +22,6 @@ const MONTHS = {
|
|
|
20
22
|
"January 2022": [ *array of dates for this month* ],
|
|
21
23
|
}
|
|
22
24
|
*/
|
|
23
|
-
|
|
24
25
|
export function sortSplittedPostsByMonth(postsByMonth: any) {
|
|
25
26
|
const sortedPostsByMonth: { [key: string]: Array<{}> } = {};
|
|
26
27
|
|
|
@@ -58,3 +59,23 @@ export function sortSplittedPostsByMonth(postsByMonth: any) {
|
|
|
58
59
|
|
|
59
60
|
return sortedPostsByMonth;
|
|
60
61
|
}
|
|
62
|
+
|
|
63
|
+
export function convertForDaylightSavings(
|
|
64
|
+
date: string,
|
|
65
|
+
zone: string = "local"
|
|
66
|
+
) {
|
|
67
|
+
if (!hasDST(zone)) {
|
|
68
|
+
return DateTime.fromISO(date).setZone(zone);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return DateTime.fromISO(date).setZone(zone).isInDST
|
|
72
|
+
? DateTime.fromISO(date).setZone(zone)
|
|
73
|
+
: DateTime.fromISO(date).setZone(zone).plus({ hour: 1 });
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export function hasDST(zone: string = "local") {
|
|
77
|
+
return (
|
|
78
|
+
DateTime.fromISO("2022-01-01").setZone(zone).isInDST !==
|
|
79
|
+
DateTime.fromISO("2022-06-01").setZone(zone).isInDST
|
|
80
|
+
);
|
|
81
|
+
}
|
|
@@ -58,9 +58,7 @@ export const normalizePost = ({
|
|
|
58
58
|
body: description,
|
|
59
59
|
datetime: date,
|
|
60
60
|
href: url,
|
|
61
|
-
|
|
62
|
-
authorImgSrc: get(authors, "[0].avatar_urls.48"),
|
|
63
|
-
authorName: get(authors, "[0].name"),
|
|
61
|
+
authors: authors,
|
|
64
62
|
imgAlt: "Blogpost image",
|
|
65
63
|
imgSrc: featuredImage,
|
|
66
64
|
id,
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/* eslint-disable */
|
|
2
|
+
/* prettier-ignore */
|
|
2
3
|
var commonjsGlobal =
|
|
3
4
|
typeof globalThis !== "undefined"
|
|
4
5
|
? globalThis
|
|
@@ -32,11 +33,10 @@ function commonjsRequire() {
|
|
|
32
33
|
"Dynamic requires are not currently supported by @rollup/plugin-commonjs"
|
|
33
34
|
);
|
|
34
35
|
}
|
|
35
|
-
/* eslint-disable */
|
|
36
36
|
//Start autogenerated code
|
|
37
37
|
var prism = createCommonjsModule(function (module) {
|
|
38
|
-
/* PrismJS 1.
|
|
39
|
-
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript+apex+aspnet+bash+basic+c+csharp+cpp+css-extras+java+javadoc+javadoclike+jsdoc+js-extras+json+json5+jsonp+jsstacktrace+kotlin+markdown+markup-templating+php+phpdoc+php-extras+plsql+python+regex+sql+swift+typescript+typoscript+uri+vbnet+yaml&plugins=line-numbers+unescaped-markup+match-braces */
|
|
38
|
+
/* PrismJS 1.29.0
|
|
39
|
+
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript+apex+aspnet+bash+basic+c+csharp+cpp+css-extras+java+javadoc+javadoclike+jsdoc+js-extras+json+json5+jsonp+jsstacktrace+kotlin+markdown+markup-templating+php+phpdoc+php-extras+plsql+python+jsx+regex+sql+swift+typescript+typoscript+uri+vbnet+yaml&plugins=line-numbers+unescaped-markup+match-braces */
|
|
40
40
|
var _self =
|
|
41
41
|
"undefined" != typeof window
|
|
42
42
|
? window
|
|
@@ -1332,14 +1332,14 @@ https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javasc
|
|
|
1332
1332
|
!(function (e) {
|
|
1333
1333
|
var t =
|
|
1334
1334
|
"\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",
|
|
1335
|
-
|
|
1335
|
+
a = {
|
|
1336
1336
|
pattern: /(^(["']?)\w+\2)[ \t]+\S.*/,
|
|
1337
1337
|
lookbehind: !0,
|
|
1338
1338
|
alias: "punctuation",
|
|
1339
1339
|
inside: null
|
|
1340
1340
|
},
|
|
1341
|
-
|
|
1342
|
-
bash:
|
|
1341
|
+
n = {
|
|
1342
|
+
bash: a,
|
|
1343
1343
|
environment: { pattern: RegExp("\\$" + t), alias: "constant" },
|
|
1344
1344
|
variable: [
|
|
1345
1345
|
{
|
|
@@ -1419,31 +1419,31 @@ https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javasc
|
|
|
1419
1419
|
pattern: /((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,
|
|
1420
1420
|
lookbehind: !0,
|
|
1421
1421
|
greedy: !0,
|
|
1422
|
-
inside:
|
|
1422
|
+
inside: n
|
|
1423
1423
|
},
|
|
1424
1424
|
{
|
|
1425
1425
|
pattern:
|
|
1426
1426
|
/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,
|
|
1427
1427
|
lookbehind: !0,
|
|
1428
1428
|
greedy: !0,
|
|
1429
|
-
inside: { bash:
|
|
1429
|
+
inside: { bash: a }
|
|
1430
1430
|
},
|
|
1431
1431
|
{
|
|
1432
1432
|
pattern:
|
|
1433
1433
|
/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,
|
|
1434
1434
|
lookbehind: !0,
|
|
1435
1435
|
greedy: !0,
|
|
1436
|
-
inside:
|
|
1436
|
+
inside: n
|
|
1437
1437
|
},
|
|
1438
1438
|
{ pattern: /(^|[^$\\])'[^']*'/, lookbehind: !0, greedy: !0 },
|
|
1439
1439
|
{
|
|
1440
1440
|
pattern: /\$'(?:[^'\\]|\\[\s\S])*'/,
|
|
1441
1441
|
greedy: !0,
|
|
1442
|
-
inside: { entity:
|
|
1442
|
+
inside: { entity: n.entity }
|
|
1443
1443
|
}
|
|
1444
1444
|
],
|
|
1445
1445
|
environment: { pattern: RegExp("\\$?" + t), alias: "constant" },
|
|
1446
|
-
variable:
|
|
1446
|
+
variable: n.variable,
|
|
1447
1447
|
function: {
|
|
1448
1448
|
pattern:
|
|
1449
1449
|
/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,
|
|
@@ -1478,7 +1478,7 @@ https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javasc
|
|
|
1478
1478
|
lookbehind: !0
|
|
1479
1479
|
}
|
|
1480
1480
|
}),
|
|
1481
|
-
(
|
|
1481
|
+
(a.inside = e.languages.bash);
|
|
1482
1482
|
for (
|
|
1483
1483
|
var s = [
|
|
1484
1484
|
"comment",
|
|
@@ -1497,13 +1497,14 @@ https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javasc
|
|
|
1497
1497
|
"punctuation",
|
|
1498
1498
|
"number"
|
|
1499
1499
|
],
|
|
1500
|
-
o =
|
|
1500
|
+
o = n.variable[1].inside,
|
|
1501
1501
|
i = 0;
|
|
1502
1502
|
i < s.length;
|
|
1503
1503
|
i++
|
|
1504
1504
|
)
|
|
1505
1505
|
o[s[i]] = e.languages.bash[s[i]];
|
|
1506
|
-
e.languages.
|
|
1506
|
+
(e.languages.sh = e.languages.bash),
|
|
1507
|
+
(e.languages.shell = e.languages.bash);
|
|
1507
1508
|
})(Prism);
|
|
1508
1509
|
Prism.languages.basic = {
|
|
1509
1510
|
comment: { pattern: /(?:!|REM\b).+/i, inside: { keyword: /^REM/i } },
|
|
@@ -3205,6 +3206,123 @@ https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javasc
|
|
|
3205
3206
|
"string-interpolation"
|
|
3206
3207
|
].inside.interpolation.inside.rest = Prism.languages.python),
|
|
3207
3208
|
(Prism.languages.py = Prism.languages.python);
|
|
3209
|
+
!(function (t) {
|
|
3210
|
+
var n = t.util.clone(t.languages.javascript),
|
|
3211
|
+
e = "(?:\\{<S>*\\.{3}(?:[^{}]|<BRACES>)*\\})";
|
|
3212
|
+
function a(t, n) {
|
|
3213
|
+
return (
|
|
3214
|
+
(t = t
|
|
3215
|
+
.replace(/<S>/g, function () {
|
|
3216
|
+
return "(?:\\s|//.*(?!.)|/\\*(?:[^*]|\\*(?!/))\\*/)";
|
|
3217
|
+
})
|
|
3218
|
+
.replace(/<BRACES>/g, function () {
|
|
3219
|
+
return "(?:\\{(?:\\{(?:\\{[^{}]*\\}|[^{}])*\\}|[^{}])*\\})";
|
|
3220
|
+
})
|
|
3221
|
+
.replace(/<SPREAD>/g, function () {
|
|
3222
|
+
return e;
|
|
3223
|
+
})),
|
|
3224
|
+
RegExp(t, n)
|
|
3225
|
+
);
|
|
3226
|
+
}
|
|
3227
|
+
(e = a(e).source),
|
|
3228
|
+
(t.languages.jsx = t.languages.extend("markup", n)),
|
|
3229
|
+
(t.languages.jsx.tag.pattern = a(
|
|
3230
|
+
"</?(?:[\\w.:-]+(?:<S>+(?:[\\w.:$-]+(?:=(?:\"(?:\\\\[^]|[^\\\\\"])*\"|'(?:\\\\[^]|[^\\\\'])*'|[^\\s{'\"/>=]+|<BRACES>))?|<SPREAD>))*<S>*/?)?>"
|
|
3231
|
+
)),
|
|
3232
|
+
(t.languages.jsx.tag.inside.tag.pattern = /^<\/?[^\s>\/]*/),
|
|
3233
|
+
(t.languages.jsx.tag.inside["attr-value"].pattern =
|
|
3234
|
+
/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/),
|
|
3235
|
+
(t.languages.jsx.tag.inside.tag.inside["class-name"] =
|
|
3236
|
+
/^[A-Z]\w*(?:\.[A-Z]\w*)*$/),
|
|
3237
|
+
(t.languages.jsx.tag.inside.comment = n.comment),
|
|
3238
|
+
t.languages.insertBefore(
|
|
3239
|
+
"inside",
|
|
3240
|
+
"attr-name",
|
|
3241
|
+
{ spread: { pattern: a("<SPREAD>"), inside: t.languages.jsx } },
|
|
3242
|
+
t.languages.jsx.tag
|
|
3243
|
+
),
|
|
3244
|
+
t.languages.insertBefore(
|
|
3245
|
+
"inside",
|
|
3246
|
+
"special-attr",
|
|
3247
|
+
{
|
|
3248
|
+
script: {
|
|
3249
|
+
pattern: a("=<BRACES>"),
|
|
3250
|
+
alias: "language-javascript",
|
|
3251
|
+
inside: {
|
|
3252
|
+
"script-punctuation": {
|
|
3253
|
+
pattern: /^=(?=\{)/,
|
|
3254
|
+
alias: "punctuation"
|
|
3255
|
+
},
|
|
3256
|
+
rest: t.languages.jsx
|
|
3257
|
+
}
|
|
3258
|
+
}
|
|
3259
|
+
},
|
|
3260
|
+
t.languages.jsx.tag
|
|
3261
|
+
);
|
|
3262
|
+
var s = function (t) {
|
|
3263
|
+
return t
|
|
3264
|
+
? "string" == typeof t
|
|
3265
|
+
? t
|
|
3266
|
+
: "string" == typeof t.content
|
|
3267
|
+
? t.content
|
|
3268
|
+
: t.content.map(s).join("")
|
|
3269
|
+
: "";
|
|
3270
|
+
},
|
|
3271
|
+
g = function (n) {
|
|
3272
|
+
for (var e = [], a = 0; a < n.length; a++) {
|
|
3273
|
+
var o = n[a],
|
|
3274
|
+
i = !1;
|
|
3275
|
+
if (
|
|
3276
|
+
("string" != typeof o &&
|
|
3277
|
+
("tag" === o.type &&
|
|
3278
|
+
o.content[0] &&
|
|
3279
|
+
"tag" === o.content[0].type
|
|
3280
|
+
? "</" === o.content[0].content[0].content
|
|
3281
|
+
? e.length > 0 &&
|
|
3282
|
+
e[e.length - 1].tagName ===
|
|
3283
|
+
s(o.content[0].content[1]) &&
|
|
3284
|
+
e.pop()
|
|
3285
|
+
: "/>" ===
|
|
3286
|
+
o.content[o.content.length - 1]
|
|
3287
|
+
.content ||
|
|
3288
|
+
e.push({
|
|
3289
|
+
tagName: s(o.content[0].content[1]),
|
|
3290
|
+
openedBraces: 0
|
|
3291
|
+
})
|
|
3292
|
+
: e.length > 0 &&
|
|
3293
|
+
"punctuation" === o.type &&
|
|
3294
|
+
"{" === o.content
|
|
3295
|
+
? e[e.length - 1].openedBraces++
|
|
3296
|
+
: e.length > 0 &&
|
|
3297
|
+
e[e.length - 1].openedBraces > 0 &&
|
|
3298
|
+
"punctuation" === o.type &&
|
|
3299
|
+
"}" === o.content
|
|
3300
|
+
? e[e.length - 1].openedBraces--
|
|
3301
|
+
: (i = !0)),
|
|
3302
|
+
(i || "string" == typeof o) &&
|
|
3303
|
+
e.length > 0 &&
|
|
3304
|
+
0 === e[e.length - 1].openedBraces)
|
|
3305
|
+
) {
|
|
3306
|
+
var r = s(o);
|
|
3307
|
+
a < n.length - 1 &&
|
|
3308
|
+
("string" == typeof n[a + 1] ||
|
|
3309
|
+
"plain-text" === n[a + 1].type) &&
|
|
3310
|
+
((r += s(n[a + 1])), n.splice(a + 1, 1)),
|
|
3311
|
+
a > 0 &&
|
|
3312
|
+
("string" == typeof n[a - 1] ||
|
|
3313
|
+
"plain-text" === n[a - 1].type) &&
|
|
3314
|
+
((r = s(n[a - 1]) + r),
|
|
3315
|
+
n.splice(a - 1, 1),
|
|
3316
|
+
a--),
|
|
3317
|
+
(n[a] = new t.Token("plain-text", r, null, r));
|
|
3318
|
+
}
|
|
3319
|
+
o.content && "string" != typeof o.content && g(o.content);
|
|
3320
|
+
}
|
|
3321
|
+
};
|
|
3322
|
+
t.hooks.add("after-tokenize", function (t) {
|
|
3323
|
+
("jsx" !== t.language && "tsx" !== t.language) || g(t.tokens);
|
|
3324
|
+
});
|
|
3325
|
+
})(Prism);
|
|
3208
3326
|
!(function (a) {
|
|
3209
3327
|
var e = { pattern: /\\[\\(){}[\]^$+*?|.]/, alias: "escape" },
|
|
3210
3328
|
n =
|