@nvidia-elements/core 0.0.12 → 0.1.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.
- package/CHANGELOG.md +19 -0
- package/dist/accordion/accordion2.js +4 -4
- package/dist/alert/alert-group2.js +1 -1
- package/dist/alert/alert2.js +1 -1
- package/dist/avatar/avatar-group2.js +1 -1
- package/dist/avatar/avatar2.js +1 -1
- package/dist/badge/badge2.js +1 -1
- package/dist/breadcrumb/breadcrumb2.js +1 -1
- package/dist/bundle.d.ts +1 -0
- package/dist/bundles/index.d.ts +86 -0
- package/dist/bundles/index.js +3 -3
- package/dist/button/button2.js +1 -1
- package/dist/button-group/button-group2.js +1 -1
- package/dist/card/card2.js +4 -4
- package/dist/chat-message/chat-message2.js +1 -1
- package/dist/checkbox/checkbox-group2.js +1 -1
- package/dist/checkbox/checkbox2.js +1 -1
- package/dist/color/color2.js +1 -1
- package/dist/combobox/combobox2.js +1 -1
- package/dist/copy-button/copy-button2.js +1 -1
- package/dist/custom-elements-jsx.d.ts +50 -0
- package/dist/custom-elements-vue.d.ts +50 -0
- package/dist/custom-elements.json +788 -2
- package/dist/data.html.json +119 -1
- package/dist/data.snippets.json +2 -2
- package/dist/date/date2.js +1 -1
- package/dist/datetime/datetime2.js +1 -1
- package/dist/dialog/dialog-footer2.js +1 -1
- package/dist/dialog/dialog-header2.js +1 -1
- package/dist/dialog/dialog2.js +1 -1
- package/dist/divider/divider2.js +1 -1
- package/dist/dot/dot2.js +1 -1
- package/dist/drawer/drawer-content2.js +1 -1
- package/dist/drawer/drawer-footer2.js +1 -1
- package/dist/drawer/drawer-header2.js +1 -1
- package/dist/drawer/drawer2.js +1 -1
- package/dist/dropdown/dropdown-footer2.js +1 -1
- package/dist/dropdown/dropdown-header2.js +1 -1
- package/dist/dropdown/dropdown2.js +1 -1
- package/dist/dropdown-group/dropdown-group.js +1 -1
- package/dist/dropzone/dropzone2.js +1 -1
- package/dist/file/file2.js +1 -1
- package/dist/format-datetime/format-datetime2.js +1 -1
- package/dist/format-number/define.d.ts +6 -0
- package/dist/format-number/define.js +7 -0
- package/dist/format-number/define.js.map +1 -0
- package/dist/format-number/format-number.d.ts +87 -0
- package/dist/format-number/format-number.examples.js +6 -0
- package/dist/format-number/format-number.examples.js.map +1 -0
- package/dist/format-number/format-number.examples.json +87 -0
- package/dist/format-number/format-number.js +6 -0
- package/dist/format-number/format-number.js.map +1 -0
- package/dist/format-number/format-number2.js +111 -0
- package/dist/format-number/format-number2.js.map +1 -0
- package/dist/format-number/index.d.ts +1 -0
- package/dist/format-number/index.js +2 -0
- package/dist/format-relative-time/format-relative-time2.js +1 -1
- package/dist/forms/control/control2.js +1 -1
- package/dist/forms/control-group/control-group2.js +1 -1
- package/dist/forms/control-message/control-message2.js +1 -1
- package/dist/grid/cell/cell2.js +1 -1
- package/dist/grid/column/column2.js +1 -1
- package/dist/grid/footer/footer2.js +1 -1
- package/dist/grid/grid2.js +1 -1
- package/dist/grid/header/header2.js +1 -1
- package/dist/grid/placeholder/placeholder2.js +1 -1
- package/dist/grid/row/row2.js +1 -1
- package/dist/icon/icon2.js +2 -2
- package/dist/icon-button/icon-button2.js +1 -1
- package/dist/index.js +1 -1
- package/dist/input/input-group2.js +1 -1
- package/dist/input/input2.js +1 -1
- package/dist/internal/services/global.service.js +1 -1
- package/dist/logo/logo.examples.js.map +1 -1
- package/dist/logo/logo.examples.json +4 -4
- package/dist/logo/logo2.js +1 -1
- package/dist/menu/menu-item2.js +1 -1
- package/dist/menu/menu.examples.js.map +1 -1
- package/dist/menu/menu.examples.json +3 -3
- package/dist/menu/menu2.js +1 -1
- package/dist/month/month2.js +1 -1
- package/dist/notification/notification-group2.js +1 -1
- package/dist/notification/notification2.js +1 -1
- package/dist/page/page-panel/page-panel-content2.js +1 -1
- package/dist/page/page-panel/page-panel-footer2.js +1 -1
- package/dist/page/page-panel/page-panel-header2.js +1 -1
- package/dist/page/page-panel/page-panel2.js +1 -1
- package/dist/page/page2.js +1 -1
- package/dist/page-header/page-header2.js +1 -1
- package/dist/page-loader/page-loader2.js +1 -1
- package/dist/pagination/pagination2.js +1 -1
- package/dist/panel/panel2.js +4 -4
- package/dist/password/password2.js +1 -1
- package/dist/preferences-input/preferences-input.examples.js.map +1 -1
- package/dist/preferences-input/preferences-input.examples.json +1 -1
- package/dist/preferences-input/preferences-input2.js +1 -1
- package/dist/progress-bar/progress-bar2.js +1 -1
- package/dist/progress-ring/progress-ring2.js +1 -1
- package/dist/progressive-filter-chip/progressive-filter-chip2.js +1 -1
- package/dist/pulse/pulse2.js +1 -1
- package/dist/radio/radio-group2.js +1 -1
- package/dist/radio/radio2.js +1 -1
- package/dist/range/range2.js +1 -1
- package/dist/resize-handle/resize-handle2.js +1 -1
- package/dist/search/search2.js +1 -1
- package/dist/select/select2.js +1 -1
- package/dist/skeleton/skeleton2.js +1 -1
- package/dist/sort-button/sort-button2.js +1 -1
- package/dist/sparkline/sparkline2.js +1 -1
- package/dist/star-rating/star-rating2.js +1 -1
- package/dist/steps/steps2.js +2 -2
- package/dist/switch/switch-group2.js +1 -1
- package/dist/switch/switch2.js +1 -1
- package/dist/tabs/tabs-group2.js +1 -1
- package/dist/tabs/tabs2.js +2 -2
- package/dist/tag/tag2.js +1 -1
- package/dist/textarea/textarea2.js +1 -1
- package/dist/time/time2.js +1 -1
- package/dist/toast/toast2.js +1 -1
- package/dist/toggletip/toggletip-footer2.js +1 -1
- package/dist/toggletip/toggletip-header2.js +1 -1
- package/dist/toggletip/toggletip2.js +1 -1
- package/dist/toolbar/toolbar2.js +1 -1
- package/dist/tooltip/tooltip2.js +1 -1
- package/dist/tree/tree-node2.js +1 -1
- package/dist/tree/tree2.js +1 -1
- package/dist/week/week2.js +1 -1
- package/package.json +15 -3
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { LogService as e } from "../internal/services/log.service.js";
|
|
2
|
+
import { __decorate as t } from "../_virtual/_@oxc-project_runtime@0.123.0/helpers/decorate.js";
|
|
3
|
+
import { typeSSR as n } from "../internal/controllers/type-ssr.controller.js";
|
|
4
|
+
import { useStyles as r } from "../internal/styles/index.js";
|
|
5
|
+
import i from "./format-number.js";
|
|
6
|
+
import { LitElement as a, html as o } from "lit";
|
|
7
|
+
import { property as s } from "lit/decorators/property.js";
|
|
8
|
+
//#region src/format-number/format-number.ts
|
|
9
|
+
var c = [
|
|
10
|
+
["currency", "currency"],
|
|
11
|
+
["currencyDisplay", "currencyDisplay"],
|
|
12
|
+
["currencySign", "currencySign"],
|
|
13
|
+
["notation", "notation"],
|
|
14
|
+
["compactDisplay", "compactDisplay"],
|
|
15
|
+
["unit", "unit"],
|
|
16
|
+
["unitDisplay", "unitDisplay"],
|
|
17
|
+
["signDisplay", "signDisplay"]
|
|
18
|
+
], l = [
|
|
19
|
+
["minimumFractionDigits", "minimumFractionDigits"],
|
|
20
|
+
["maximumFractionDigits", "maximumFractionDigits"],
|
|
21
|
+
["minimumIntegerDigits", "minimumIntegerDigits"]
|
|
22
|
+
], u = class extends a {
|
|
23
|
+
constructor(...e) {
|
|
24
|
+
super(...e), this.formatStyle = "decimal";
|
|
25
|
+
}
|
|
26
|
+
static {
|
|
27
|
+
this.styles = r([i]);
|
|
28
|
+
}
|
|
29
|
+
static {
|
|
30
|
+
this.metadata = {
|
|
31
|
+
tag: "nve-format-number",
|
|
32
|
+
version: "0.1.0"
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
get #e() {
|
|
36
|
+
return this.number ?? this.textContent?.trim() ?? "";
|
|
37
|
+
}
|
|
38
|
+
get #t() {
|
|
39
|
+
return this.locale ?? (globalThis.document?.documentElement?.lang || void 0);
|
|
40
|
+
}
|
|
41
|
+
get #n() {
|
|
42
|
+
let t = this.#e;
|
|
43
|
+
if (!t) return null;
|
|
44
|
+
let n = Number(t);
|
|
45
|
+
return Number.isFinite(n) ? n : (e.warn(`format-number: invalid numeric value "${t}"`), null);
|
|
46
|
+
}
|
|
47
|
+
get #r() {
|
|
48
|
+
let e = { style: this.formatStyle };
|
|
49
|
+
for (let [t, n] of c) {
|
|
50
|
+
let r = this[t];
|
|
51
|
+
r !== void 0 && (e[n] = r);
|
|
52
|
+
}
|
|
53
|
+
for (let [t, n] of l) {
|
|
54
|
+
let r = this[t];
|
|
55
|
+
r !== void 0 && (e[n] = r);
|
|
56
|
+
}
|
|
57
|
+
return this.useGrouping !== void 0 && (e.useGrouping = this.useGrouping === "false" ? !1 : this.useGrouping === "true" ? !0 : this.useGrouping), e;
|
|
58
|
+
}
|
|
59
|
+
get #i() {
|
|
60
|
+
let t = this.#e;
|
|
61
|
+
if (!t) return "";
|
|
62
|
+
let n = this.#n;
|
|
63
|
+
if (n === null) return t;
|
|
64
|
+
try {
|
|
65
|
+
return new Intl.NumberFormat(this.#t, this.#r).format(n);
|
|
66
|
+
} catch (n) {
|
|
67
|
+
return e.warn(`format-number: ${n.message}`), t;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
render() {
|
|
71
|
+
return o`<data internal-host value="${this.#e}">${this.#i}<slot @slotchange="${this.#a}" hidden></slot></data>`;
|
|
72
|
+
}
|
|
73
|
+
#a() {
|
|
74
|
+
this.requestUpdate();
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
t([s({ type: String })], u.prototype, "number", void 0), t([s({ type: String })], u.prototype, "locale", void 0), t([s({
|
|
78
|
+
type: String,
|
|
79
|
+
attribute: "format-style"
|
|
80
|
+
})], u.prototype, "formatStyle", void 0), t([s({ type: String })], u.prototype, "currency", void 0), t([s({
|
|
81
|
+
type: String,
|
|
82
|
+
attribute: "currency-sign"
|
|
83
|
+
})], u.prototype, "currencySign", void 0), t([s({
|
|
84
|
+
type: String,
|
|
85
|
+
attribute: "currency-display"
|
|
86
|
+
})], u.prototype, "currencyDisplay", void 0), t([s({ type: String })], u.prototype, "unit", void 0), t([s({
|
|
87
|
+
type: String,
|
|
88
|
+
attribute: "unit-display"
|
|
89
|
+
})], u.prototype, "unitDisplay", void 0), t([s({ type: String })], u.prototype, "notation", void 0), t([s({
|
|
90
|
+
type: String,
|
|
91
|
+
attribute: "compact-display"
|
|
92
|
+
})], u.prototype, "compactDisplay", void 0), t([s({
|
|
93
|
+
type: String,
|
|
94
|
+
attribute: "sign-display"
|
|
95
|
+
})], u.prototype, "signDisplay", void 0), t([s({
|
|
96
|
+
type: String,
|
|
97
|
+
attribute: "use-grouping"
|
|
98
|
+
})], u.prototype, "useGrouping", void 0), t([s({
|
|
99
|
+
type: Number,
|
|
100
|
+
attribute: "minimum-fraction-digits"
|
|
101
|
+
})], u.prototype, "minimumFractionDigits", void 0), t([s({
|
|
102
|
+
type: Number,
|
|
103
|
+
attribute: "maximum-fraction-digits"
|
|
104
|
+
})], u.prototype, "maximumFractionDigits", void 0), t([s({
|
|
105
|
+
type: Number,
|
|
106
|
+
attribute: "minimum-integer-digits"
|
|
107
|
+
})], u.prototype, "minimumIntegerDigits", void 0), u = t([n()], u);
|
|
108
|
+
//#endregion
|
|
109
|
+
export { u as FormatNumber };
|
|
110
|
+
|
|
111
|
+
//# sourceMappingURL=format-number2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-number2.js","names":["#rawValue","#resolvedLocale","#parsedNumber","#formatOptions","#formattedNumber","#onSlotChange"],"sources":["../../src/format-number/format-number.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { useStyles, typeSSR, LogService } from '@nvidia-elements/core/internal';\nimport styles from './format-number.css?inline';\n\nexport type FormatNumberStyle = 'decimal' | 'currency' | 'percent' | 'unit';\nexport type CurrencyDisplayOption = 'symbol' | 'code' | 'name' | 'narrowSymbol';\nexport type CurrencySignOption = 'standard' | 'accounting';\nexport type NotationOption = 'standard' | 'scientific' | 'engineering' | 'compact';\nexport type CompactDisplayOption = 'short' | 'long';\nexport type UnitDisplayOption = 'short' | 'long' | 'narrow';\nexport type SignDisplayOption = 'auto' | 'never' | 'always' | 'exceptZero';\n\nconst STRING_KEYS: [keyof FormatNumber, string][] = [\n ['currency', 'currency'],\n ['currencyDisplay', 'currencyDisplay'],\n ['currencySign', 'currencySign'],\n ['notation', 'notation'],\n ['compactDisplay', 'compactDisplay'],\n ['unit', 'unit'],\n ['unitDisplay', 'unitDisplay'],\n ['signDisplay', 'signDisplay']\n];\n\nconst NUMBER_KEYS: [keyof FormatNumber, string][] = [\n ['minimumFractionDigits', 'minimumFractionDigits'],\n ['maximumFractionDigits', 'maximumFractionDigits'],\n ['minimumIntegerDigits', 'minimumIntegerDigits']\n];\n\n/**\n * @element nve-format-number\n * @description A localized number formatter for currencies, percentages, units, and compact notation, backed by Intl.NumberFormat.\n * Provide a `currency` attribute when `formatStyle` is `currency`, and a `unit` attribute when `formatStyle` is `unit`.\n * @since 0.0.0\n * @entrypoint \\@nvidia-elements/core/format-number\n * @slot - Numeric string to format (such as 1234567 or 1234.56). Serves as fallback before hydration.\n */\n@typeSSR()\nexport class FormatNumber extends LitElement {\n static styles = useStyles([styles]);\n\n static readonly metadata = {\n tag: 'nve-format-number',\n version: '0.0.0'\n };\n\n /**\n * Optional numeric string for values supplied by JavaScript or bound data.\n * By default, the component formats the element's text content, which also serves as the SSR fallback.\n * When both are present, this property takes precedence.\n */\n @property({ type: String }) number?: string;\n\n /**\n * Language tag (such as en-US, de-DE). Defaults to document.documentElement.lang or browser default.\n */\n @property({ type: String }) locale?: string;\n\n /**\n * Formatting style: 'decimal' | 'currency' | 'percent' | 'unit'.\n */\n @property({ type: String, attribute: 'format-style' }) formatStyle: FormatNumberStyle = 'decimal';\n\n /**\n * ISO 4217 currency code (such as USD or EUR). Required when formatStyle is currency.\n */\n @property({ type: String }) currency?: string;\n\n /**\n * Currency sign style: 'standard' | 'accounting'.\n */\n @property({ type: String, attribute: 'currency-sign' }) currencySign?: CurrencySignOption;\n\n /**\n * Currency display style: 'symbol' | 'code' | 'name' | 'narrowSymbol'.\n */\n @property({ type: String, attribute: 'currency-display' }) currencyDisplay?: CurrencyDisplayOption;\n\n /**\n * Unit identifier (such as kilometer or byte). Required when formatStyle is unit.\n */\n @property({ type: String }) unit?: string;\n\n /**\n * Unit display style: 'short' | 'long' | 'narrow'.\n */\n @property({ type: String, attribute: 'unit-display' }) unitDisplay?: UnitDisplayOption;\n\n /**\n * Number notation: 'standard' | 'scientific' | 'engineering' | 'compact'.\n */\n @property({ type: String }) notation?: NotationOption;\n\n /**\n * Compact notation display: 'short' | 'long'. Only applies when notation is compact.\n */\n @property({ type: String, attribute: 'compact-display' }) compactDisplay?: CompactDisplayOption;\n\n /**\n * Sign display: 'auto' | 'never' | 'always' | 'exceptZero'.\n */\n @property({ type: String, attribute: 'sign-display' }) signDisplay?: SignDisplayOption;\n\n /**\n * Grouping separators: 'auto' | 'always' | 'min2' | 'true' | 'false'.\n */\n @property({ type: String, attribute: 'use-grouping' }) useGrouping?: string;\n\n /**\n * Pad fraction output to at least this many digits (0-20).\n */\n @property({ type: Number, attribute: 'minimum-fraction-digits' }) minimumFractionDigits?: number;\n\n /**\n * Round fraction output to at most this many digits (0-20).\n */\n @property({ type: Number, attribute: 'maximum-fraction-digits' }) maximumFractionDigits?: number;\n\n /**\n * Pad integer output to at least this many digits (1-21).\n */\n @property({ type: Number, attribute: 'minimum-integer-digits' }) minimumIntegerDigits?: number;\n\n get #rawValue(): string {\n return this.number ?? this.textContent?.trim() ?? '';\n }\n\n get #resolvedLocale(): string | undefined {\n return this.locale ?? (globalThis.document?.documentElement?.lang || undefined);\n }\n\n get #parsedNumber(): number | null {\n const raw = this.#rawValue;\n if (!raw) return null;\n\n const numericValue = Number(raw);\n if (Number.isFinite(numericValue)) return numericValue;\n\n LogService.warn(`format-number: invalid numeric value \"${raw}\"`);\n return null;\n }\n\n get #formatOptions(): Intl.NumberFormatOptions {\n const options: Intl.NumberFormatOptions = { style: this.formatStyle };\n\n for (const [prop, key] of STRING_KEYS) {\n const value = this[prop] as string | undefined;\n if (value !== undefined) (options as Record<string, unknown>)[key] = value;\n }\n\n for (const [prop, key] of NUMBER_KEYS) {\n const value = this[prop] as number | undefined;\n if (value !== undefined) (options as Record<string, unknown>)[key] = value;\n }\n\n if (this.useGrouping !== undefined) {\n const grouping = this.useGrouping === 'false' ? false : this.useGrouping === 'true' ? true : this.useGrouping;\n (options as Record<string, unknown>).useGrouping = grouping;\n }\n\n return options;\n }\n\n get #formattedNumber(): string {\n const raw = this.#rawValue;\n if (!raw) return '';\n\n const numericValue = this.#parsedNumber;\n if (numericValue === null) return raw;\n\n try {\n return new Intl.NumberFormat(this.#resolvedLocale, this.#formatOptions).format(numericValue);\n } catch (e) {\n LogService.warn(`format-number: ${(e as Error).message}`);\n return raw;\n }\n }\n\n render() {\n return html`<data internal-host value=${this.#rawValue}>${this.#formattedNumber}<slot @slotchange=${this.#onSlotChange} hidden></slot></data>`;\n }\n\n #onSlotChange() {\n this.requestUpdate();\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './format-number.js';
|
package/dist/grid/cell/cell2.js
CHANGED
package/dist/grid/grid2.js
CHANGED
package/dist/grid/row/row2.js
CHANGED
package/dist/icon/icon2.js
CHANGED
|
@@ -16,7 +16,7 @@ var f = class e extends o {
|
|
|
16
16
|
static {
|
|
17
17
|
this.metadata = {
|
|
18
18
|
tag: "nve-icon",
|
|
19
|
-
version: "0.0
|
|
19
|
+
version: "0.1.0"
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
22
|
static {
|
|
@@ -86,7 +86,7 @@ n([l({
|
|
|
86
86
|
})], f.prototype, "name", void 0), n([d()], f.prototype, "svg", void 0);
|
|
87
87
|
function p(t) {
|
|
88
88
|
if (typeof globalThis.customElements?.get == "function") {
|
|
89
|
-
let n = e(t.metadata.version), r = e("0.0
|
|
89
|
+
let n = e(t.metadata.version), r = e("0.1.0");
|
|
90
90
|
n.minor <= r.minor && n.major <= r.major && (t._icons = {
|
|
91
91
|
...t._icons,
|
|
92
92
|
...i
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@ import { getThemeTokens as e } from "./internal/utils/dom.js";
|
|
|
2
2
|
import { I18nService as t } from "./internal/services/i18n.service.js";
|
|
3
3
|
import { statusIcons as n } from "./internal/types/index.js";
|
|
4
4
|
//#region src/index.ts
|
|
5
|
-
var r = "0.0
|
|
5
|
+
var r = "0.1.0", i = "@nvidia-elements";
|
|
6
6
|
//#endregion
|
|
7
7
|
export { t as I18nService, i as SCOPE, r as VERSION, e as getThemeTokens, n as statusIcons };
|
|
8
8
|
|
package/dist/input/input2.js
CHANGED
|
@@ -19,7 +19,7 @@ var a = class {
|
|
|
19
19
|
i18nRegistry: {},
|
|
20
20
|
audit: {}
|
|
21
21
|
}
|
|
22
|
-
}, globalThis.NVE_ELEMENTS.state.versions = Array.from(new Set([...globalThis.NVE_ELEMENTS.state.versions, "0.0
|
|
22
|
+
}, globalThis.NVE_ELEMENTS.state.versions = Array.from(new Set([...globalThis.NVE_ELEMENTS.state.versions, "0.1.0"])), globalThis.NVE_ELEMENTS.state.scopedRegistry ??= {}, globalThis.NVE_ELEMENTS.state.scopedRegistry["0.1.0"] = i(), globalThis.NVE_ELEMENTS.state.versions.length > 1 && globalThis.NVE_ELEMENTS.state.env !== "production" && console.warn(e(), `\n\n${JSON.stringify(globalThis.NVE_ELEMENTS.state.versions, null, 2)}`);
|
|
23
23
|
}
|
|
24
24
|
get state() {
|
|
25
25
|
return globalThis.NVE_ELEMENTS.state;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logo.examples.js","names":[],"sources":["../../src/logo/logo.examples.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html } from 'lit';\nimport '@nvidia-elements/core/logo/define.js';\n\nexport default {\n title: 'Elements/Logo',\n component: 'nve-logo',\n};\n\n/**\n * @summary Default NVIDIA logo with aria-label for accessibility. Use for brand identification in headers, footers, and loading states.\n */\nexport const Default = {\n render: () => html`\n <nve-logo aria-label=\"NVIDIA\"
|
|
1
|
+
{"version":3,"file":"logo.examples.js","names":[],"sources":["../../src/logo/logo.examples.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html } from 'lit';\nimport '@nvidia-elements/core/logo/define.js';\n\nexport default {\n title: 'Elements/Logo',\n component: 'nve-logo',\n};\n\n/**\n * @summary Default NVIDIA logo with aria-label for accessibility. Use for brand identification in headers, footers, and loading states.\n */\nexport const Default = {\n render: () => html`\n <nve-logo aria-label=\"NVIDIA\">NV</nve-logo>\n `\n};\n\n/**\n * @summary Logo size variants (sm, md, lg) for different contexts. Use smaller sizes for dense layouts like toolbars, larger sizes for prominent brand placement.\n * @tags test-case\n */\nexport const Size = {\n render: () => html`\n<div nve-layout=\"row gap:xs\">\n <nve-logo size=\"sm\" color=\"green-mint\" aria-label=\"green mint\">Gm</nve-logo>\n <nve-logo color=\"green-mint\" aria-label=\"green mint\">Gm</nve-logo>\n <nve-logo size=\"lg\" color=\"green-mint\" aria-label=\"green mint\">Gm</nve-logo>\n</div>\n `\n};\n\n/**\n * @summary Custom icons slotted into the logo container. Ideal for product icons, team badges, or custom brand marks within the standard logo shape.\n * @tags test-case\n */\nexport const SlottedIcons = {\n render: () => html`\n<div nve-layout=\"row gap:xs\">\n <nve-logo color=\"pink-rose\" aria-label=\"pink rose large\" size=\"lg\">\n <nve-icon name=\"star\"></nve-icon>\n </nve-logo>\n <nve-logo color=\"pink-rose\" aria-label=\"pink rose medium\" size=\"md\">\n <nve-icon name=\"star\"></nve-icon>\n </nve-logo>\n <nve-logo color=\"pink-rose\" aria-label=\"pink rose small\" size=\"sm\">\n <nve-icon name=\"star\"></nve-icon>\n </nve-logo>\n <nve-logo color=\"red-cardinal\" aria-label=\"red cardinal\">\n <nve-icon name=\"star\"></nve-icon>\n </nve-logo>\n <nve-logo color=\"green-grass\" aria-label=\"green grass\">\n <nve-icon name=\"star\"></nve-icon>\n </nve-logo>\n <nve-logo color=\"blue-cobalt\" aria-label=\"blue cobalt\">\n <nve-icon name=\"star\"></nve-icon>\n </nve-logo>\n</div>\n `\n};\n\n/**\n * @summary All available logo color options. Use colors to differentiate products, teams, or categories within NVIDIA applications.\n */\nexport const Color = {\n render: () => html`\n<div nve-layout=\"row gap:xs align:wrap\">\n <nve-logo aria-label=\"NVIDIA\">NV</nve-logo>\n <nve-logo color=\"red-cardinal\" aria-label=\"red cardinal\">Rc</nve-logo>\n <nve-logo color=\"gray-slate\" aria-label=\"gray slate\">Gs</nve-logo>\n <nve-logo color=\"gray-denim\" aria-label=\"gray denim\">Gd</nve-logo>\n <nve-logo color=\"blue-indigo\" aria-label=\"blue indigo\">Bi</nve-logo>\n <nve-logo color=\"blue-cobalt\" aria-label=\"blue cobalt\">Bc</nve-logo>\n <nve-logo color=\"blue-sky\" aria-label=\"blue sky\">Bs</nve-logo>\n <nve-logo color=\"teal-cyan\" aria-label=\"teal cyan\">Tc</nve-logo>\n <nve-logo color=\"green-mint\" aria-label=\"green mint\">Gm</nve-logo>\n <nve-logo color=\"teal-seafoam\" aria-label=\"teal seafoam\">Ts</nve-logo>\n <nve-logo color=\"green-grass\" aria-label=\"green grass\">Gg</nve-logo>\n <nve-logo color=\"yellow-amber\" aria-label=\"yellow amber\">Ya</nve-logo>\n <nve-logo color=\"orange-pumpkin\" aria-label=\"orange pumpkin\">Op</nve-logo>\n <nve-logo color=\"red-tomato\" aria-label=\"red tomato\">Rt</nve-logo>\n <nve-logo color=\"pink-magenta\" aria-label=\"pink magenta\">Pm</nve-logo>\n <nve-logo color=\"purple-plum\" aria-label=\"purple plum\">Pp</nve-logo>\n <nve-logo color=\"purple-violet\" aria-label=\"purple violet\">Pv</nve-logo>\n <nve-logo color=\"purple-lavender\" aria-label=\"purple lavender\">Pl</nve-logo>\n <nve-logo color=\"pink-rose\" aria-label=\"pink rose\">Pr</nve-logo>\n <nve-logo color=\"green-jade\" aria-label=\"green jade\">Gj</nve-logo>\n <nve-logo color=\"lime-pear\" aria-label=\"lime pear\">Lp</nve-logo>\n <nve-logo color=\"yellow-nova\" aria-label=\"yellow nova\">Yn</nve-logo>\n <nve-logo color=\"brand-green\" aria-label=\"brand green\">Bg</nve-logo>\n</div>\n `\n};\n\n/**\n * @summary Logo colors optimized for light theme backgrounds. Ensures proper contrast and visibility when used in light mode interfaces.\n * @tags test-case\n */\nexport const LightTheme = {\n render: () => html`\n<div nve-theme=\"root light\" nve-layout=\"row gap:xs align:wrap pad:sm\" style=\"background: var(--nve-sys-layer-container-background) !important;\">\n <nve-logo aria-label=\"NVIDIA\">NV</nve-logo>\n <nve-logo color=\"red-cardinal\" aria-label=\"red cardinal\">Rc</nve-logo>\n <nve-logo color=\"gray-slate\" aria-label=\"gray slate\">Gs</nve-logo>\n <nve-logo color=\"gray-denim\" aria-label=\"gray denim\">Gd</nve-logo>\n <nve-logo color=\"blue-indigo\" aria-label=\"blue indigo\">Bi</nve-logo>\n <nve-logo color=\"blue-cobalt\" aria-label=\"blue cobalt\">Bc</nve-logo>\n <nve-logo color=\"blue-sky\" aria-label=\"blue sky\">Bs</nve-logo>\n <nve-logo color=\"teal-cyan\" aria-label=\"teal cyan\">Tc</nve-logo>\n <nve-logo color=\"green-mint\" aria-label=\"green mint\">Gm</nve-logo>\n <nve-logo color=\"teal-seafoam\" aria-label=\"teal seafoam\">Ts</nve-logo>\n <nve-logo color=\"green-grass\" aria-label=\"green grass\">Gg</nve-logo>\n <nve-logo color=\"yellow-amber\" aria-label=\"yellow amber\">Ya</nve-logo>\n <nve-logo color=\"orange-pumpkin\" aria-label=\"orange pumpkin\">Op</nve-logo>\n <nve-logo color=\"red-tomato\" aria-label=\"red tomato\">Rt</nve-logo>\n <nve-logo color=\"pink-magenta\" aria-label=\"pink magenta\">Pm</nve-logo>\n <nve-logo color=\"purple-plum\" aria-label=\"purple plum\">Pp</nve-logo>\n <nve-logo color=\"purple-violet\" aria-label=\"purple violet\">Pv</nve-logo>\n <nve-logo color=\"purple-lavender\" aria-label=\"purple lavender\">Pl</nve-logo>\n <nve-logo color=\"pink-rose\" aria-label=\"pink rose\">Pr</nve-logo>\n <nve-logo color=\"green-jade\" aria-label=\"green jade\">Gj</nve-logo>\n <nve-logo color=\"lime-pear\" aria-label=\"lime pear\">Lp</nve-logo>\n <nve-logo color=\"yellow-nova\" aria-label=\"yellow nova\">Yn</nve-logo>\n <nve-logo color=\"brand-green\" aria-label=\"brand green\">Bg</nve-logo>\n</div>\n `\n}\n\n/**\n * @summary Logo colors optimized for dark theme backgrounds. Ensures proper contrast and visibility when used in dark mode interfaces.\n * @tags test-case\n */\nexport const DarkTheme = {\n render: () => html`\n<div nve-theme=\"root dark\" nve-layout=\"row gap:xs align:wrap pad:sm\">\n <nve-logo aria-label=\"NVIDIA\">NV</nve-logo>\n <nve-logo color=\"red-cardinal\" aria-label=\"red cardinal\">Rc</nve-logo>\n <nve-logo color=\"gray-slate\" aria-label=\"gray slate\">Gs</nve-logo>\n <nve-logo color=\"gray-denim\" aria-label=\"gray denim\">Gd</nve-logo>\n <nve-logo color=\"blue-indigo\" aria-label=\"blue indigo\">Bi</nve-logo>\n <nve-logo color=\"blue-cobalt\" aria-label=\"blue cobalt\">Bc</nve-logo>\n <nve-logo color=\"blue-sky\" aria-label=\"blue sky\">Bs</nve-logo>\n <nve-logo color=\"teal-cyan\" aria-label=\"teal cyan\">Tc</nve-logo>\n <nve-logo color=\"green-mint\" aria-label=\"green mint\">Gm</nve-logo>\n <nve-logo color=\"teal-seafoam\" aria-label=\"teal seafoam\">Ts</nve-logo>\n <nve-logo color=\"green-grass\" aria-label=\"green grass\">Gg</nve-logo>\n <nve-logo color=\"yellow-amber\" aria-label=\"yellow amber\">Ya</nve-logo>\n <nve-logo color=\"orange-pumpkin\" aria-label=\"orange pumpkin\">Op</nve-logo>\n <nve-logo color=\"red-tomato\" aria-label=\"red tomato\">Rt</nve-logo>\n <nve-logo color=\"pink-magenta\" aria-label=\"pink magenta\">Pm</nve-logo>\n <nve-logo color=\"purple-plum\" aria-label=\"purple plum\">Pp</nve-logo>\n <nve-logo color=\"purple-violet\" aria-label=\"purple violet\">Pv</nve-logo>\n <nve-logo color=\"purple-lavender\" aria-label=\"purple lavender\">Pl</nve-logo>\n <nve-logo color=\"pink-rose\" aria-label=\"pink rose\">Pr</nve-logo>\n <nve-logo color=\"green-jade\" aria-label=\"green jade\">Gj</nve-logo>\n <nve-logo color=\"lime-pear\" aria-label=\"lime pear\">Lp</nve-logo>\n <nve-logo color=\"yellow-nova\" aria-label=\"yellow nova\">Yn</nve-logo>\n <nve-logo color=\"brand-green\" aria-label=\"brand green\">Bg</nve-logo>\n</div>\n `\n}"],"mappings":";AAGA,IAAA,IAAS"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
{
|
|
6
6
|
"id": "logo",
|
|
7
7
|
"name": "Default",
|
|
8
|
-
"template": "<nve-logo aria-label=\"NVIDIA\"
|
|
8
|
+
"template": "<nve-logo aria-label=\"NVIDIA\">NV</nve-logo>\n",
|
|
9
9
|
"summary": "Default NVIDIA logo with aria-label for accessibility. Use for brand identification in headers, footers, and loading states.",
|
|
10
10
|
"description": "",
|
|
11
11
|
"composition": false,
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
{
|
|
37
37
|
"id": "logo-color",
|
|
38
38
|
"name": "Color",
|
|
39
|
-
"template": "<div nve-layout=\"row gap:xs align:wrap\">\n <nve-logo aria-label=\"NVIDIA\"
|
|
39
|
+
"template": "<div nve-layout=\"row gap:xs align:wrap\">\n <nve-logo aria-label=\"NVIDIA\">NV</nve-logo>\n <nve-logo color=\"red-cardinal\" aria-label=\"red cardinal\">Rc</nve-logo>\n <nve-logo color=\"gray-slate\" aria-label=\"gray slate\">Gs</nve-logo>\n <nve-logo color=\"gray-denim\" aria-label=\"gray denim\">Gd</nve-logo>\n <nve-logo color=\"blue-indigo\" aria-label=\"blue indigo\">Bi</nve-logo>\n <nve-logo color=\"blue-cobalt\" aria-label=\"blue cobalt\">Bc</nve-logo>\n <nve-logo color=\"blue-sky\" aria-label=\"blue sky\">Bs</nve-logo>\n <nve-logo color=\"teal-cyan\" aria-label=\"teal cyan\">Tc</nve-logo>\n <nve-logo color=\"green-mint\" aria-label=\"green mint\">Gm</nve-logo>\n <nve-logo color=\"teal-seafoam\" aria-label=\"teal seafoam\">Ts</nve-logo>\n <nve-logo color=\"green-grass\" aria-label=\"green grass\">Gg</nve-logo>\n <nve-logo color=\"yellow-amber\" aria-label=\"yellow amber\">Ya</nve-logo>\n <nve-logo color=\"orange-pumpkin\" aria-label=\"orange pumpkin\">Op</nve-logo>\n <nve-logo color=\"red-tomato\" aria-label=\"red tomato\">Rt</nve-logo>\n <nve-logo color=\"pink-magenta\" aria-label=\"pink magenta\">Pm</nve-logo>\n <nve-logo color=\"purple-plum\" aria-label=\"purple plum\">Pp</nve-logo>\n <nve-logo color=\"purple-violet\" aria-label=\"purple violet\">Pv</nve-logo>\n <nve-logo color=\"purple-lavender\" aria-label=\"purple lavender\">Pl</nve-logo>\n <nve-logo color=\"pink-rose\" aria-label=\"pink rose\">Pr</nve-logo>\n <nve-logo color=\"green-jade\" aria-label=\"green jade\">Gj</nve-logo>\n <nve-logo color=\"lime-pear\" aria-label=\"lime pear\">Lp</nve-logo>\n <nve-logo color=\"yellow-nova\" aria-label=\"yellow nova\">Yn</nve-logo>\n <nve-logo color=\"brand-green\" aria-label=\"brand green\">Bg</nve-logo>\n</div>\n",
|
|
40
40
|
"summary": "All available logo color options. Use colors to differentiate products, teams, or categories within NVIDIA applications.",
|
|
41
41
|
"description": "",
|
|
42
42
|
"composition": false,
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
{
|
|
46
46
|
"id": "logo-light-theme",
|
|
47
47
|
"name": "LightTheme",
|
|
48
|
-
"template": "<div\n nve-theme=\"root light\"\n nve-layout=\"row gap:xs align:wrap pad:sm\"\n style=\"background: var(--nve-sys-layer-container-background) !important\"\n>\n <nve-logo aria-label=\"NVIDIA\"
|
|
48
|
+
"template": "<div\n nve-theme=\"root light\"\n nve-layout=\"row gap:xs align:wrap pad:sm\"\n style=\"background: var(--nve-sys-layer-container-background) !important\"\n>\n <nve-logo aria-label=\"NVIDIA\">NV</nve-logo>\n <nve-logo color=\"red-cardinal\" aria-label=\"red cardinal\">Rc</nve-logo>\n <nve-logo color=\"gray-slate\" aria-label=\"gray slate\">Gs</nve-logo>\n <nve-logo color=\"gray-denim\" aria-label=\"gray denim\">Gd</nve-logo>\n <nve-logo color=\"blue-indigo\" aria-label=\"blue indigo\">Bi</nve-logo>\n <nve-logo color=\"blue-cobalt\" aria-label=\"blue cobalt\">Bc</nve-logo>\n <nve-logo color=\"blue-sky\" aria-label=\"blue sky\">Bs</nve-logo>\n <nve-logo color=\"teal-cyan\" aria-label=\"teal cyan\">Tc</nve-logo>\n <nve-logo color=\"green-mint\" aria-label=\"green mint\">Gm</nve-logo>\n <nve-logo color=\"teal-seafoam\" aria-label=\"teal seafoam\">Ts</nve-logo>\n <nve-logo color=\"green-grass\" aria-label=\"green grass\">Gg</nve-logo>\n <nve-logo color=\"yellow-amber\" aria-label=\"yellow amber\">Ya</nve-logo>\n <nve-logo color=\"orange-pumpkin\" aria-label=\"orange pumpkin\">Op</nve-logo>\n <nve-logo color=\"red-tomato\" aria-label=\"red tomato\">Rt</nve-logo>\n <nve-logo color=\"pink-magenta\" aria-label=\"pink magenta\">Pm</nve-logo>\n <nve-logo color=\"purple-plum\" aria-label=\"purple plum\">Pp</nve-logo>\n <nve-logo color=\"purple-violet\" aria-label=\"purple violet\">Pv</nve-logo>\n <nve-logo color=\"purple-lavender\" aria-label=\"purple lavender\">Pl</nve-logo>\n <nve-logo color=\"pink-rose\" aria-label=\"pink rose\">Pr</nve-logo>\n <nve-logo color=\"green-jade\" aria-label=\"green jade\">Gj</nve-logo>\n <nve-logo color=\"lime-pear\" aria-label=\"lime pear\">Lp</nve-logo>\n <nve-logo color=\"yellow-nova\" aria-label=\"yellow nova\">Yn</nve-logo>\n <nve-logo color=\"brand-green\" aria-label=\"brand green\">Bg</nve-logo>\n</div>\n",
|
|
49
49
|
"summary": "Logo colors optimized for light theme backgrounds. Ensures proper contrast and visibility when used in light mode interfaces.",
|
|
50
50
|
"description": "",
|
|
51
51
|
"composition": false,
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
{
|
|
57
57
|
"id": "logo-dark-theme",
|
|
58
58
|
"name": "DarkTheme",
|
|
59
|
-
"template": "<div nve-theme=\"root dark\" nve-layout=\"row gap:xs align:wrap pad:sm\">\n <nve-logo aria-label=\"NVIDIA\"
|
|
59
|
+
"template": "<div nve-theme=\"root dark\" nve-layout=\"row gap:xs align:wrap pad:sm\">\n <nve-logo aria-label=\"NVIDIA\">NV</nve-logo>\n <nve-logo color=\"red-cardinal\" aria-label=\"red cardinal\">Rc</nve-logo>\n <nve-logo color=\"gray-slate\" aria-label=\"gray slate\">Gs</nve-logo>\n <nve-logo color=\"gray-denim\" aria-label=\"gray denim\">Gd</nve-logo>\n <nve-logo color=\"blue-indigo\" aria-label=\"blue indigo\">Bi</nve-logo>\n <nve-logo color=\"blue-cobalt\" aria-label=\"blue cobalt\">Bc</nve-logo>\n <nve-logo color=\"blue-sky\" aria-label=\"blue sky\">Bs</nve-logo>\n <nve-logo color=\"teal-cyan\" aria-label=\"teal cyan\">Tc</nve-logo>\n <nve-logo color=\"green-mint\" aria-label=\"green mint\">Gm</nve-logo>\n <nve-logo color=\"teal-seafoam\" aria-label=\"teal seafoam\">Ts</nve-logo>\n <nve-logo color=\"green-grass\" aria-label=\"green grass\">Gg</nve-logo>\n <nve-logo color=\"yellow-amber\" aria-label=\"yellow amber\">Ya</nve-logo>\n <nve-logo color=\"orange-pumpkin\" aria-label=\"orange pumpkin\">Op</nve-logo>\n <nve-logo color=\"red-tomato\" aria-label=\"red tomato\">Rt</nve-logo>\n <nve-logo color=\"pink-magenta\" aria-label=\"pink magenta\">Pm</nve-logo>\n <nve-logo color=\"purple-plum\" aria-label=\"purple plum\">Pp</nve-logo>\n <nve-logo color=\"purple-violet\" aria-label=\"purple violet\">Pv</nve-logo>\n <nve-logo color=\"purple-lavender\" aria-label=\"purple lavender\">Pl</nve-logo>\n <nve-logo color=\"pink-rose\" aria-label=\"pink rose\">Pr</nve-logo>\n <nve-logo color=\"green-jade\" aria-label=\"green jade\">Gj</nve-logo>\n <nve-logo color=\"lime-pear\" aria-label=\"lime pear\">Lp</nve-logo>\n <nve-logo color=\"yellow-nova\" aria-label=\"yellow nova\">Yn</nve-logo>\n <nve-logo color=\"brand-green\" aria-label=\"brand green\">Bg</nve-logo>\n</div>\n",
|
|
60
60
|
"summary": "Logo colors optimized for dark theme backgrounds. Ensures proper contrast and visibility when used in dark mode interfaces.",
|
|
61
61
|
"description": "",
|
|
62
62
|
"composition": false,
|
package/dist/logo/logo2.js
CHANGED
package/dist/menu/menu-item2.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu.examples.js","names":[],"sources":["../../src/menu/menu.examples.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html } from 'lit';\nimport '@nvidia-elements/core/button/define.js';\nimport '@nvidia-elements/core/dropdown/define.js';\nimport '@nvidia-elements/core/icon/define.js';\nimport '@nvidia-elements/core/menu/define.js';\nimport '@nvidia-elements/core/logo/define.js';\nimport '@nvidia-elements/core/search/define.js';\nimport '@nvidia-elements/core/drawer/define.js';\nimport '@nvidia-elements/core/card/define.js';\nimport '@nvidia-elements/core/tooltip/define.js';\nimport '@nvidia-elements/core/page/define.js';\n\nexport default {\n title: 'Elements/Menu',\n component: 'nve-menu',\n};\n\n/**\n * @summary Basic menu with simple text items for the default menu structure and styling.\n */\nexport const Default = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item>item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu with keyboard navigation and ARIA disclosure pattern inside a dropdown. Use when menu items need accessible focus management and arrow key navigation.\n * @tags pattern\n */\nexport const Dropdown = {\n render: () => html`\n <nve-button popovertarget=\"dropdown-menu\">dropdown</nve-button>\n <nve-dropdown id=\"dropdown-menu\">\n <nve-menu>\n <nve-menu-item><nve-icon name=\"person\"></nve-icon> profile</nve-menu-item>\n <nve-menu-item><nve-icon name=\"gear\"></nve-icon> settings</nve-menu-item>\n <nve-menu-item><nve-icon name=\"star\"></nve-icon> favorites</nve-menu-item>\n <nve-divider></nve-divider>\n <nve-menu-item><nve-icon name=\"logout\"></nve-icon> logout</nve-menu-item>\n </nve-menu>\n </nve-dropdown>\n `\n};\n\n/**\n * @summary Menu with a selected item showing the visual state for user-selected options.\n */\nexport const Selected = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item selected>item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu with a current page item showing the visual state for the active/current page in navigation.\n */\nexport const Current = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item current=\"page\">item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary By default Menu will show a blue border on the selected item. You can change the border color by setting `--border-background` on the `<nve-menu-item>`\n * @tags test-case\n */\nexport const BorderBackground = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item current=\"page\" style=\"--border-background: var(--nve-ref-color-brand-green-900);\">item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu with disabled items showing unavailable options while maintaining visual context.\n * @tags test-case\n */\nexport const Disabled = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item disabled>item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu items with icons to add visual context and improve usability.\n */\nexport const Icons = {\n render: () => html`\n <nve-menu>\n <nve-menu-item><nve-icon name=\"person\"></nve-icon> profile</nve-menu-item>\n <nve-menu-item><nve-icon name=\"gear\"></nve-icon> settings</nve-menu-item>\n <nve-menu-item><nve-icon name=\"star\"></nve-icon> favorites</nve-menu-item>\n <nve-menu-item><nve-icon name=\"logout\"></nve-icon> logout</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu items with links for navigation functionality within menu structures.\n */\nexport const Links = {\n render: () => html`\n <nve-menu>\n <nve-menu-item><nve-icon name=\"person\"></nve-icon><a href=\"#\">profile</a></nve-menu-item>\n <nve-menu-item><nve-icon name=\"gear\"></nve-icon> <a href=\"#\">settings</a></nve-menu-item>\n <nve-menu-item><nve-icon name=\"star\"></nve-icon> <a href=\"#\">favorites</a></nve-menu-item>\n <nve-menu-item><nve-icon name=\"logout\"></nve-icon> <a href=\"#\">logout</a></nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu item features a default slot for content, along with a suffix slot for displaying elements such as keyboard shortcuts at the end of the menu item container.\n */\nexport const Suffix = {\n render: () => html`\n <nve-menu>\n <nve-menu-item><kbd slot=\"suffix\" nve-text=\"code flat\">CMD + C</kbd></nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu with constrained height showing scrollable behavior when content exceeds container limits.\n * @tags test-case\n */\nexport const Scroll = {\n render: () => html`\n <nve-menu style=\"--max-height: 150px\">\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item>item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n <nve-menu-item>item 5</nve-menu-item>\n <nve-menu-item>item 6</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Use a dropdown menu with search and branded logos for application selection interfaces.\n * @tags pattern\n */\nexport const Complex = {\n render: () => html`\n <nve-button popovertarget=\"dropdown-menu\">dropdown</nve-button>\n <nve-dropdown id=\"dropdown-menu\">\n <nve-search rounded>\n <input type=\"search\" placeholder=\"search tools\" aria-label=\"search apps\" />\n </nve-search>\n <nve-menu>\n <nve-menu-item>\n <nve-logo color=\"pink-rose\" size=\"sm\">Db</nve-logo> Debugger\n </nve-menu-item>\n <nve-menu-item>\n <nve-logo color=\"blue-cobalt\" size=\"sm\">TM</nve-logo> Task Manager\n </nve-menu-item>\n <nve-menu-item>\n <nve-logo color=\"yellow-nova\" size=\"sm\">CI</nve-logo> CI Services\n </nve-menu-item>\n <nve-divider></nve-divider>\n <nve-menu-item>\n <nve-logo size=\"sm\"></nve-logo> All Apps\n </nve-menu-item>\n </nve-menu>\n </nve-dropdown>\n `\n};\n\n/**\n * @summary Use a navigation drawer to overlay page content for out-of-context navigation.\n * @tags pattern\n */\nexport const VerticalNavigationDrawer = {\n render: () => html`\n <nve-page>\n <nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\"></nve-logo>\n <h2 slot=\"prefix\" nve-text=\"heading sm\">NVIDIA</h2>\n </nve-page-header>\n <main nve-layout=\"column gap:md pad:md\">\n <nve-button popovertarget=\"menu-drawer\">toggle drawer</nve-button>\n </main>\n <nve-drawer position=\"right\" size=\"sm\" modal closable id=\"menu-drawer\">\n <nve-drawer-header>\n <h3 nve-text=\"heading\">Drawer</h3>\n </nve-drawer-header>\n <nve-drawer-content>\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item current=\"page\">item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n </nve-drawer-content>\n </nve-drawer>\n </nve-page>\n `\n};\n\n/**\n * @summary Use an inline navigation panel to push page content aside when navigation is contextual to the page.\n * @tags pattern\n */\nexport const VerticalNavigationPanel = {\n render: () => html`\n<nve-page>\n <nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\"></nve-logo>\n <h2 slot=\"prefix\" nve-text=\"heading sm\">NVIDIA</h2>\n </nve-page-header>\n <nve-page-panel slot=\"left\" expanded style=\"max-width:280px\">\n <nve-page-panel-header>\n <h3 nve-text=\"heading\">Drawer</h3>\n </nve-page-panel-header>\n <nve-page-panel-content>\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item current=\"page\">item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n </nve-page-panel-content>\n </nve-page-panel>\n <main nve-layout=\"column gap:md pad:md\">\n <p nve-text=\"body\">Content</p>\n </main>\n</nve-page>\n `\n};\n\n/**\n * @summary Use a tooltip on a menu item to provide extra context and warnings.\n * @tags pattern test-case\n */\nexport const ItemTooltip = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item popovertarget=\"menu-tooltip\" id=\"menu-item-2\">\n item 2\n <nve-icon id=\"menu-anchor\" size=\"md\" name=\"exclamation-triangle\" style=\"margin-left: auto\"></nve-icon>\n <nve-tooltip anchor=\"menu-anchor\" open-delay=\"2000\" id=\"menu-tooltip\">This is a warning tooltip</nve-tooltip>\n </nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n </nve-menu>\n `\n}\n\n/**\n * @summary Menu items with danger status styling for destructive actions like delete or logout operations.\n */\nexport const DangerStatus = {\n render: () => html`\n <nve-menu>\n <nve-menu-item status=\"danger\">default</nve-menu-item>\n <nve-menu-item status=\"danger\" disabled>disabled</nve-menu-item>\n <nve-menu-item status=\"danger\" selected>selected</nve-menu-item>\n <nve-menu-item status=\"danger\" current=\"page\">current</nve-menu-item>\n <nve-menu-item status=\"danger\"><nve-icon name=\"gear\"></nve-icon> icon left</nve-menu-item>\n <nve-menu-item status=\"danger\">icon right <nve-icon id=\"warning-icon\" size=\"md\" name=\"exclamation-triangle\" style=\"margin-left: auto\"></nve-icon></nve-menu-item>\n </nve-menu>\n `\n}\n"],"mappings":";AAGA,IAAA,IAAS"}
|
|
1
|
+
{"version":3,"file":"menu.examples.js","names":[],"sources":["../../src/menu/menu.examples.ts"],"sourcesContent":["// SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { html } from 'lit';\nimport '@nvidia-elements/core/button/define.js';\nimport '@nvidia-elements/core/dropdown/define.js';\nimport '@nvidia-elements/core/icon/define.js';\nimport '@nvidia-elements/core/menu/define.js';\nimport '@nvidia-elements/core/logo/define.js';\nimport '@nvidia-elements/core/search/define.js';\nimport '@nvidia-elements/core/drawer/define.js';\nimport '@nvidia-elements/core/card/define.js';\nimport '@nvidia-elements/core/tooltip/define.js';\nimport '@nvidia-elements/core/page/define.js';\n\nexport default {\n title: 'Elements/Menu',\n component: 'nve-menu',\n};\n\n/**\n * @summary Basic menu with simple text items for the default menu structure and styling.\n */\nexport const Default = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item>item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu with keyboard navigation and ARIA disclosure pattern inside a dropdown. Use when menu items need accessible focus management and arrow key navigation.\n * @tags pattern\n */\nexport const Dropdown = {\n render: () => html`\n <nve-button popovertarget=\"dropdown-menu\">dropdown</nve-button>\n <nve-dropdown id=\"dropdown-menu\">\n <nve-menu>\n <nve-menu-item><nve-icon name=\"person\"></nve-icon> profile</nve-menu-item>\n <nve-menu-item><nve-icon name=\"gear\"></nve-icon> settings</nve-menu-item>\n <nve-menu-item><nve-icon name=\"star\"></nve-icon> favorites</nve-menu-item>\n <nve-divider></nve-divider>\n <nve-menu-item><nve-icon name=\"logout\"></nve-icon> logout</nve-menu-item>\n </nve-menu>\n </nve-dropdown>\n `\n};\n\n/**\n * @summary Menu with a selected item showing the visual state for user-selected options.\n */\nexport const Selected = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item selected>item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu with a current page item showing the visual state for the active/current page in navigation.\n */\nexport const Current = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item current=\"page\">item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary By default Menu will show a blue border on the selected item. You can change the border color by setting `--border-background` on the `<nve-menu-item>`\n * @tags test-case\n */\nexport const BorderBackground = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item current=\"page\" style=\"--border-background: var(--nve-ref-color-brand-green-900);\">item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu with disabled items showing unavailable options while maintaining visual context.\n * @tags test-case\n */\nexport const Disabled = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item disabled>item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu items with icons to add visual context and improve usability.\n */\nexport const Icons = {\n render: () => html`\n <nve-menu>\n <nve-menu-item><nve-icon name=\"person\"></nve-icon> profile</nve-menu-item>\n <nve-menu-item><nve-icon name=\"gear\"></nve-icon> settings</nve-menu-item>\n <nve-menu-item><nve-icon name=\"star\"></nve-icon> favorites</nve-menu-item>\n <nve-menu-item><nve-icon name=\"logout\"></nve-icon> logout</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu items with links for navigation functionality within menu structures.\n */\nexport const Links = {\n render: () => html`\n <nve-menu>\n <nve-menu-item><nve-icon name=\"person\"></nve-icon><a href=\"#\">profile</a></nve-menu-item>\n <nve-menu-item><nve-icon name=\"gear\"></nve-icon> <a href=\"#\">settings</a></nve-menu-item>\n <nve-menu-item><nve-icon name=\"star\"></nve-icon> <a href=\"#\">favorites</a></nve-menu-item>\n <nve-menu-item><nve-icon name=\"logout\"></nve-icon> <a href=\"#\">logout</a></nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu item features a default slot for content, along with a suffix slot for displaying elements such as keyboard shortcuts at the end of the menu item container.\n */\nexport const Suffix = {\n render: () => html`\n <nve-menu>\n <nve-menu-item><kbd slot=\"suffix\" nve-text=\"code flat\">CMD + C</kbd></nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Menu with constrained height showing scrollable behavior when content exceeds container limits.\n * @tags test-case\n */\nexport const Scroll = {\n render: () => html`\n <nve-menu style=\"--max-height: 150px\">\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item>item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n <nve-menu-item>item 5</nve-menu-item>\n <nve-menu-item>item 6</nve-menu-item>\n </nve-menu>\n `\n};\n\n/**\n * @summary Use a dropdown menu with search and branded logos for application selection interfaces.\n * @tags pattern\n */\nexport const Complex = {\n render: () => html`\n <nve-button popovertarget=\"dropdown-menu\">dropdown</nve-button>\n <nve-dropdown id=\"dropdown-menu\">\n <nve-search rounded>\n <input type=\"search\" placeholder=\"search tools\" aria-label=\"search apps\" />\n </nve-search>\n <nve-menu>\n <nve-menu-item>\n <nve-logo color=\"pink-rose\" size=\"sm\">Db</nve-logo> Debugger\n </nve-menu-item>\n <nve-menu-item>\n <nve-logo color=\"blue-cobalt\" size=\"sm\">TM</nve-logo> Task Manager\n </nve-menu-item>\n <nve-menu-item>\n <nve-logo color=\"yellow-nova\" size=\"sm\">CI</nve-logo> CI Services\n </nve-menu-item>\n <nve-divider></nve-divider>\n <nve-menu-item>\n <nve-logo size=\"sm\">NV</nve-logo> All Apps\n </nve-menu-item>\n </nve-menu>\n </nve-dropdown>\n `\n};\n\n/**\n * @summary Use a navigation drawer to overlay page content for out-of-context navigation.\n * @tags pattern\n */\nexport const VerticalNavigationDrawer = {\n render: () => html`\n <nve-page>\n <nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\">NV</nve-logo>\n <h2 slot=\"prefix\" nve-text=\"heading sm\">NVIDIA</h2>\n </nve-page-header>\n <main nve-layout=\"column gap:md pad:md\">\n <nve-button popovertarget=\"menu-drawer\">toggle drawer</nve-button>\n </main>\n <nve-drawer position=\"right\" size=\"sm\" modal closable id=\"menu-drawer\">\n <nve-drawer-header>\n <h3 nve-text=\"heading\">Drawer</h3>\n </nve-drawer-header>\n <nve-drawer-content>\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item current=\"page\">item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n </nve-drawer-content>\n </nve-drawer>\n </nve-page>\n `\n};\n\n/**\n * @summary Use an inline navigation panel to push page content aside when navigation is contextual to the page.\n * @tags pattern\n */\nexport const VerticalNavigationPanel = {\n render: () => html`\n<nve-page>\n <nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\">NV</nve-logo>\n <h2 slot=\"prefix\" nve-text=\"heading sm\">NVIDIA</h2>\n </nve-page-header>\n <nve-page-panel slot=\"left\" expanded style=\"max-width:280px\">\n <nve-page-panel-header>\n <h3 nve-text=\"heading\">Drawer</h3>\n </nve-page-panel-header>\n <nve-page-panel-content>\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item current=\"page\">item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n </nve-page-panel-content>\n </nve-page-panel>\n <main nve-layout=\"column gap:md pad:md\">\n <p nve-text=\"body\">Content</p>\n </main>\n</nve-page>\n `\n};\n\n/**\n * @summary Use a tooltip on a menu item to provide extra context and warnings.\n * @tags pattern test-case\n */\nexport const ItemTooltip = {\n render: () => html`\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item popovertarget=\"menu-tooltip\" id=\"menu-item-2\">\n item 2\n <nve-icon id=\"menu-anchor\" size=\"md\" name=\"exclamation-triangle\" style=\"margin-left: auto\"></nve-icon>\n <nve-tooltip anchor=\"menu-anchor\" open-delay=\"2000\" id=\"menu-tooltip\">This is a warning tooltip</nve-tooltip>\n </nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n </nve-menu>\n `\n}\n\n/**\n * @summary Menu items with danger status styling for destructive actions like delete or logout operations.\n */\nexport const DangerStatus = {\n render: () => html`\n <nve-menu>\n <nve-menu-item status=\"danger\">default</nve-menu-item>\n <nve-menu-item status=\"danger\" disabled>disabled</nve-menu-item>\n <nve-menu-item status=\"danger\" selected>selected</nve-menu-item>\n <nve-menu-item status=\"danger\" current=\"page\">current</nve-menu-item>\n <nve-menu-item status=\"danger\"><nve-icon name=\"gear\"></nve-icon> icon left</nve-menu-item>\n <nve-menu-item status=\"danger\">icon right <nve-icon id=\"warning-icon\" size=\"md\" name=\"exclamation-triangle\" style=\"margin-left: auto\"></nve-icon></nve-menu-item>\n </nve-menu>\n `\n}\n"],"mappings":";AAGA,IAAA,IAAS"}
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
{
|
|
104
104
|
"id": "menu-complex",
|
|
105
105
|
"name": "Complex",
|
|
106
|
-
"template": "<nve-button popovertarget=\"dropdown-menu\">dropdown</nve-button>\n<nve-dropdown id=\"dropdown-menu\">\n <nve-search rounded>\n <input type=\"search\" placeholder=\"search tools\" aria-label=\"search apps\" />\n </nve-search>\n <nve-menu>\n <nve-menu-item> <nve-logo color=\"pink-rose\" size=\"sm\">Db</nve-logo> Debugger </nve-menu-item>\n <nve-menu-item> <nve-logo color=\"blue-cobalt\" size=\"sm\">TM</nve-logo> Task Manager </nve-menu-item>\n <nve-menu-item> <nve-logo color=\"yellow-nova\" size=\"sm\">CI</nve-logo> CI Services </nve-menu-item>\n <nve-divider></nve-divider>\n <nve-menu-item> <nve-logo size=\"sm\"
|
|
106
|
+
"template": "<nve-button popovertarget=\"dropdown-menu\">dropdown</nve-button>\n<nve-dropdown id=\"dropdown-menu\">\n <nve-search rounded>\n <input type=\"search\" placeholder=\"search tools\" aria-label=\"search apps\" />\n </nve-search>\n <nve-menu>\n <nve-menu-item> <nve-logo color=\"pink-rose\" size=\"sm\">Db</nve-logo> Debugger </nve-menu-item>\n <nve-menu-item> <nve-logo color=\"blue-cobalt\" size=\"sm\">TM</nve-logo> Task Manager </nve-menu-item>\n <nve-menu-item> <nve-logo color=\"yellow-nova\" size=\"sm\">CI</nve-logo> CI Services </nve-menu-item>\n <nve-divider></nve-divider>\n <nve-menu-item> <nve-logo size=\"sm\">NV</nve-logo> All Apps </nve-menu-item>\n </nve-menu>\n</nve-dropdown>\n",
|
|
107
107
|
"summary": "Use a dropdown menu with search and branded logos for application selection interfaces.",
|
|
108
108
|
"description": "",
|
|
109
109
|
"composition": true,
|
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
{
|
|
115
115
|
"id": "menu-vertical-navigation-drawer",
|
|
116
116
|
"name": "VerticalNavigationDrawer",
|
|
117
|
-
"template": "<nve-page>\n <nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\"
|
|
117
|
+
"template": "<nve-page>\n <nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\">NV</nve-logo>\n <h2 slot=\"prefix\" nve-text=\"heading sm\">NVIDIA</h2>\n </nve-page-header>\n <main nve-layout=\"column gap:md pad:md\">\n <nve-button popovertarget=\"menu-drawer\">toggle drawer</nve-button>\n </main>\n <nve-drawer position=\"right\" size=\"sm\" modal closable id=\"menu-drawer\">\n <nve-drawer-header>\n <h3 nve-text=\"heading\">Drawer</h3>\n </nve-drawer-header>\n <nve-drawer-content>\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item current=\"page\">item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n </nve-drawer-content>\n </nve-drawer>\n</nve-page>\n",
|
|
118
118
|
"summary": "Use a navigation drawer to overlay page content for out-of-context navigation.",
|
|
119
119
|
"description": "",
|
|
120
120
|
"composition": true,
|
|
@@ -125,7 +125,7 @@
|
|
|
125
125
|
{
|
|
126
126
|
"id": "menu-vertical-navigation-panel",
|
|
127
127
|
"name": "VerticalNavigationPanel",
|
|
128
|
-
"template": "<nve-page>\n <nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\"
|
|
128
|
+
"template": "<nve-page>\n <nve-page-header>\n <nve-logo slot=\"prefix\" size=\"sm\">NV</nve-logo>\n <h2 slot=\"prefix\" nve-text=\"heading sm\">NVIDIA</h2>\n </nve-page-header>\n <nve-page-panel slot=\"left\" expanded style=\"max-width: 280px\">\n <nve-page-panel-header>\n <h3 nve-text=\"heading\">Drawer</h3>\n </nve-page-panel-header>\n <nve-page-panel-content>\n <nve-menu>\n <nve-menu-item>item 1</nve-menu-item>\n <nve-menu-item current=\"page\">item 2</nve-menu-item>\n <nve-menu-item>item 3</nve-menu-item>\n <nve-menu-item>item 4</nve-menu-item>\n </nve-menu>\n </nve-page-panel-content>\n </nve-page-panel>\n <main nve-layout=\"column gap:md pad:md\">\n <p nve-text=\"body\">Content</p>\n </main>\n</nve-page>\n",
|
|
129
129
|
"summary": "Use an inline navigation panel to push page content aside when navigation is contextual to the page.",
|
|
130
130
|
"description": "",
|
|
131
131
|
"composition": true,
|
package/dist/menu/menu2.js
CHANGED
package/dist/month/month2.js
CHANGED