@vonage/vivid-react
Version:
Vivid wrapped for easy React usage & IDE autocomplete support & typescript typings
326 lines (296 loc) • 49.3 kB
JavaScript
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var context = require('/vvd-context');
var vvdFonts = require('/vvd-fonts');
var m = require('react-dom');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var context__default = /*#__PURE__*/_interopDefaultLegacy(context);
var m__default = /*#__PURE__*/_interopDefaultLegacy(m);
var coreStyles = {
id: 'core.all',
css: "/**\n * Do not edit directly\n * Generated on Tue, 28 Oct 2025 11:07:11 GMT\n */\n.vvd-root {\n background-color: var(--vvd-color-canvas);\n color: var(--vvd-color-canvas-text);\n color-scheme: var(--vvd-color-scheme);\n}\n\n.vvd-scrollbar {\n --scrollbar-track-color: transparent;\n --scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%);\n}\n.vvd-scrollbar {\n scrollbar-color: var(--scrollbar-thumb-color) var(--scrollbar-track-color);\n scrollbar-width: thin;\n}\n.vvd-scrollbar ::-webkit-scrollbar {\n width: 4px;\n}\n.vvd-scrollbar ::-webkit-scrollbar-track {\n background: var(--scrollbar-track-color);\n}\n.vvd-scrollbar ::-webkit-scrollbar-thumb {\n border: 0;\n border-radius: 4px;\n background-color: var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color));\n}\n\n.vvd-neutral-tint-elevation {\n --_vvd-tinted-color-surface-0dp: var(--vvd-neutral-tint-color-surface-0dp);\n --_vvd-tinted-color-surface-2dp: var(--vvd-neutral-tint-color-surface-2dp);\n --_vvd-tinted-color-surface-4dp: var(--vvd-neutral-tint-color-surface-4dp);\n --_vvd-tinted-color-surface-8dp: var(--vvd-neutral-tint-color-surface-8dp);\n --_vvd-tinted-color-surface-12dp: var(--vvd-neutral-tint-color-surface-12dp);\n --_vvd-tinted-color-surface-16dp: var(--vvd-neutral-tint-color-surface-16dp);\n --_vvd-tinted-color-surface-24dp: var(--vvd-neutral-tint-color-surface-24dp);\n --_vvd-tinted-shadow-surface-0dp: var(--vvd-neutral-tint-shadow-surface-0dp);\n --_vvd-tinted-shadow-surface-2dp: var(--vvd-neutral-tint-shadow-surface-2dp);\n --_vvd-tinted-shadow-surface-4dp: var(--vvd-neutral-tint-shadow-surface-4dp);\n --_vvd-tinted-shadow-surface-8dp: var(--vvd-neutral-tint-shadow-surface-8dp);\n --_vvd-tinted-shadow-surface-12dp: var(\n \t--vvd-neutral-tint-shadow-surface-12dp\n );\n --_vvd-tinted-shadow-surface-16dp: var(\n \t--vvd-neutral-tint-shadow-surface-16dp\n );\n --_vvd-tinted-shadow-surface-24dp: var(\n \t--vvd-neutral-tint-shadow-surface-24dp\n );\n}\n.vvd-neutral-tint-elevation > * {\n --_vvd-tinted-color-surface-0dp: var(--vvd-color-surface-0dp);\n --_vvd-tinted-color-surface-2dp: var(--vvd-color-surface-2dp);\n --_vvd-tinted-color-surface-4dp: var(--vvd-color-surface-4dp);\n --_vvd-tinted-color-surface-8dp: var(--vvd-color-surface-8dp);\n --_vvd-tinted-color-surface-12dp: var(--vvd-color-surface-12dp);\n --_vvd-tinted-color-surface-16dp: var(--vvd-color-surface-16dp);\n --_vvd-tinted-color-surface-24dp: var(--vvd-color-surface-24dp);\n --_vvd-tinted-shadow-surface-0dp: var(--vvd-shadow-surface-0dp);\n --_vvd-tinted-shadow-surface-2dp: var(--vvd-shadow-surface-2dp);\n --_vvd-tinted-shadow-surface-4dp: var(--vvd-shadow-surface-4dp);\n --_vvd-tinted-shadow-surface-8dp: var(--vvd-shadow-surface-8dp);\n --_vvd-tinted-shadow-surface-12dp: var(--vvd-shadow-surface-12dp);\n --_vvd-tinted-shadow-surface-16dp: var(--vvd-shadow-surface-16dp);\n --_vvd-tinted-shadow-surface-24dp: var(--vvd-shadow-surface-24dp);\n}\n\n.vvd-root:root {\n --vvd-size-font-scale-base: 1rem;\n font-size: unset;\n}\n.vvd-root:root > body {\n font: var(--vvd-typography-base);\n font-feature-settings: \"kern\"; /* turns on kerning */\n -webkit-font-smoothing: antialiased; /* apply font anti-aliasing for Webkit on OSX */\n -moz-osx-font-smoothing: grayscale; /* apply font anti-aliasing for Firefox on OSX */\n text-rendering: optimizeLegibility; /* emphasise on legibility when rendering, turns on ligatures and kerning */\n}\n.vvd-root:not(:root) {\n font: var(--vvd-typography-base);\n font-feature-settings: \"kern\"; /* turns on kerning */\n -webkit-font-smoothing: antialiased; /* apply font anti-aliasing for Webkit on OSX */\n -moz-osx-font-smoothing: grayscale; /* apply font anti-aliasing for Firefox on OSX */\n text-rendering: optimizeLegibility; /* emphasise on legibility when rendering, turns on ligatures and kerning */\n}\n.vvd-root p,\n.vvd-root .font-base {\n font: var(--vvd-typography-base);\n margin-block: 16px;\n}\n.vvd-root p.tight,\n.vvd-root .font-base.tight {\n margin-block: 0;\n}\n.vvd-root .font-base-bold {\n font: var(--vvd-typography-base-bold);\n}\n.vvd-root .font-base-condensed {\n font: var(--vvd-typography-base-condensed);\n}\n.vvd-root .font-base-condensed-bold {\n font: var(--vvd-typography-base-condensed-bold);\n}\n.vvd-root .font-base-extended {\n font: var(--vvd-typography-base-extended);\n}\n.vvd-root .font-base-extended-bold {\n font: var(--vvd-typography-base-extended-bold);\n}\n.vvd-root .font-base-code {\n font: var(--vvd-typography-base-code);\n}\n.vvd-root b, .vvd-root strong {\n font-weight: 600;\n}\n.vvd-root pre, .vvd-root var, .vvd-root code, .vvd-root kbd, .vvd-root samp {\n font: var(--vvd-typography-base-code);\n}\n.vvd-root .headline {\n font: var(--vvd-typography-headline);\n margin-block: 40px;\n}\n.vvd-root .subtitle {\n font: var(--vvd-typography-subtitle);\n margin-block: 40px;\n}\n.vvd-root h1,\n.vvd-root .heading1 {\n font: var(--vvd-typography-heading-1);\n margin-block: 32px;\n}\n.vvd-root h2,\n.vvd-root .heading2 {\n font: var(--vvd-typography-heading-2);\n margin-block: 32px;\n}\n.vvd-root h3,\n.vvd-root .heading3 {\n font: var(--vvd-typography-heading-3);\n margin-block: 24px;\n}\n.vvd-root h4,\n.vvd-root .heading4 {\n font: var(--vvd-typography-heading-4);\n margin-block: 24px;\n}\n.vvd-root .headline b, .vvd-root .headline strong,\n.vvd-root .subtitle b,\n.vvd-root .subtitle strong,\n.vvd-root h1 b,\n.vvd-root h1 strong,\n.vvd-root .heading1 b,\n.vvd-root .heading1 strong,\n.vvd-root h2 b,\n.vvd-root h2 strong,\n.vvd-root .heading2 b,\n.vvd-root .heading2 strong,\n.vvd-root h3 b,\n.vvd-root h3 strong,\n.vvd-root .heading3 b,\n.vvd-root .heading3 strong,\n.vvd-root h4 b,\n.vvd-root h4 strong,\n.vvd-root .heading4 b,\n.vvd-root .heading4 strong {\n font-weight: 500;\n}\n.vvd-root .headline.tight,\n.vvd-root .subtitle.tight,\n.vvd-root h1.tight,\n.vvd-root .heading1.tight,\n.vvd-root h2.tight,\n.vvd-root .heading2.tight,\n.vvd-root h3.tight,\n.vvd-root .heading3.tight,\n.vvd-root h4.tight,\n.vvd-root .heading4.tight {\n margin-block: 0;\n}\n.vvd-root small,\n.vvd-root figcaption {\n font: var(--vvd-typography-base-condensed);\n}\n.vvd-root sub,\n.vvd-root sup {\n position: relative;\n font: var(--vvd-typography-base-condensed);\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n.vvd-root sub {\n bottom: -0.25em;\n}\n.vvd-root sup {\n top: -0.5em;\n}\n"
};
var darkThemeStyles = {
id: 'theme.dark',
css: "/**\n * Do not edit directly\n * Generated on Tue, 28 Oct 2025 11:07:11 GMT\n */\n/**\n * Do not edit directly\n * Generated on Tue, 28 Oct 2025 11:07:11 GMT\n */\n/**\n * Do not edit directly\n * Generated on Tue, 28 Oct 2025 11:07:11 GMT\n */\n/**\n * Do not edit directly\n * Generated on Tue, 28 Oct 2025 11:07:11 GMT\n */\n@property --vvd-size-density {\n syntax: \"<integer>\";\n inherits: true;\n initial-value: 0;\n}\n@property --vvd-size-font-scale-base {\n syntax: \"<length>\";\n inherits: true;\n initial-value: 16px;\n}\n.vvd-root, ::part(vvd-root) {\n --vvd-color-scheme: dark;\n --vvd-color-canvas: #000000;\n --vvd-color-canvas-text: #ffffff;\n --vvd-color-neutral-50: #1a1a1a;\n --vvd-color-neutral-100: #333333;\n --vvd-color-neutral-200: #4d4d4d;\n --vvd-color-neutral-300: #666666;\n --vvd-color-neutral-400: #757575;\n --vvd-color-neutral-500: #929292;\n --vvd-color-neutral-600: #b3b3b3;\n --vvd-color-neutral-700: #cccccc;\n --vvd-color-neutral-800: #E6E6E6;\n --vvd-color-neutral-900: #F2F2F2;\n --vvd-color-neutral-950: #ffffff;\n --vvd-color-cta-50: #26044d;\n --vvd-color-cta-100: #440291;\n --vvd-color-cta-200: #6405d1;\n --vvd-color-cta-300: #871eff;\n --vvd-color-cta-400: #9941ff;\n --vvd-color-cta-500: #b27bf2;\n --vvd-color-cta-600: #cba1fa;\n --vvd-color-cta-700: #dcc1fc;\n --vvd-color-cta-800: #ece2fa;\n --vvd-color-cta-900: #f5f0fd;\n --vvd-color-warning-50: #2A1502;\n --vvd-color-warning-100: #522801;\n --vvd-color-warning-200: #803807;\n --vvd-color-warning-300: #A64C03;\n --vvd-color-warning-400: #be5702;\n --vvd-color-warning-500: #e07902;\n --vvd-color-warning-600: #fa9f00;\n --vvd-color-warning-700: #FACC4B;\n --vvd-color-warning-800: #FDEAA0;\n --vvd-color-warning-900: #FDF5D4;\n --vvd-color-information-50: #071939;\n --vvd-color-information-100: #0e306d;\n --vvd-color-information-200: #094a9e;\n --vvd-color-information-300: #0e65c2;\n --vvd-color-information-400: #0276d5;\n --vvd-color-information-500: #2997f0;\n --vvd-color-information-600: #65baff;\n --vvd-color-information-700: #9dd2fe;\n --vvd-color-information-800: #d3e9fc;\n --vvd-color-information-900: #e8f4fb;\n --vvd-color-announcement-50: #32082c;\n --vvd-color-announcement-100: #620256;\n --vvd-color-announcement-200: #8f1669;\n --vvd-color-announcement-300: #bb1e89;\n --vvd-color-announcement-400: #d6219c;\n --vvd-color-announcement-500: #e560bb;\n --vvd-color-announcement-600: #fb8fd8;\n --vvd-color-announcement-700: #f8b9e7;\n --vvd-color-announcement-800: #ffdcf7;\n --vvd-color-announcement-900: #ffedfb;\n --vvd-color-success-50: #0a1e11;\n --vvd-color-success-100: #183a1e;\n --vvd-color-success-200: #155923;\n --vvd-color-success-300: #167629;\n --vvd-color-success-400: #1c8731;\n --vvd-color-success-500: #30a849;\n --vvd-color-success-600: #53ca6a;\n --vvd-color-success-700: #86e090;\n --vvd-color-success-800: #cfeed4;\n --vvd-color-success-900: #e1f8e5;\n --vvd-color-alert-50: #3e0004;\n --vvd-color-alert-100: #6e0000;\n --vvd-color-alert-200: #9f0202;\n --vvd-color-alert-300: #cd0d0d;\n --vvd-color-alert-400: #e61d1d;\n --vvd-color-alert-500: #f75959;\n --vvd-color-alert-600: #fe9696;\n --vvd-color-alert-700: #ffbbbb;\n --vvd-color-alert-800: #fedfdf;\n --vvd-color-alert-900: #ffeef2;\n --vvd-color-neutral-tint-50: #191828;\n --vvd-color-neutral-tint-100: #31304f;\n --vvd-color-neutral-tint-200: #494977;\n --vvd-color-neutral-tint-300: #63628d;\n --vvd-color-neutral-tint-400: #727198;\n --vvd-color-neutral-tint-500: #908fae;\n --vvd-color-neutral-tint-600: #b2b1c7;\n --vvd-color-neutral-tint-700: #cbcbd9;\n --vvd-color-neutral-tint-800: #e5e5ec;\n --vvd-color-neutral-tint-900: #f2f3f9;\n --vvd-color-surface-0dp: #0d0d0d;\n --vvd-color-surface-2dp: linear-gradient(#ffffff0f, #ffffff0f), #0d0d0d;\n --vvd-color-surface-4dp: linear-gradient(#ffffff14, #ffffff14), #0d0d0d;\n --vvd-color-surface-8dp: linear-gradient(#ffffff1a, #ffffff1a), #0d0d0d;\n --vvd-color-surface-12dp: linear-gradient(#ffffff1f, #ffffff1f), #0d0d0d;\n --vvd-color-surface-16dp: linear-gradient(#ffffff24, #ffffff24), #0d0d0d;\n --vvd-color-surface-24dp: linear-gradient(#ffffff29, #ffffff29), #0d0d0d;\n --vvd-shadow-surface-0dp: drop-shadow(1px 0px 0px #4d4d4d) drop-shadow(0px 1px 0px #4d4d4d) drop-shadow(0px -1px 0px #4d4d4d) drop-shadow(-1px 0px 0px #4d4d4d);\n --vvd-shadow-surface-2dp: drop-shadow(0px 1px 4px #00000040) drop-shadow(0px 1px 2px #00000040) drop-shadow(0px 2px 1px #00000040);\n --vvd-shadow-surface-4dp: drop-shadow(0px 2px 8px #00000040) drop-shadow(0px 2px 4px #00000040) drop-shadow(0px 4px 4px #00000040);\n --vvd-shadow-surface-8dp: drop-shadow(0px 2px 16px #00000040) drop-shadow(0px 8px 8px #00000040) drop-shadow(0px 4px 4px #00000040);\n --vvd-shadow-surface-12dp: drop-shadow(0px 4px 24px #00000040) drop-shadow(0px 12px 16px #00000040) drop-shadow(0px 6px 8px #00000040);\n --vvd-shadow-surface-16dp: drop-shadow(0px 6px 32px #00000040) drop-shadow(0px 16px 24px #00000040) drop-shadow(0px 8px 12px #00000040);\n --vvd-shadow-surface-24dp: drop-shadow(0px 12px 48px #00000040) drop-shadow(0px 24px 32px #00000040) drop-shadow(0px 12px 16px #00000040);\n --vvd-neutral-tint-color-surface-0dp: #191828;\n --vvd-neutral-tint-color-surface-2dp: linear-gradient(#ffffff08, #ffffff08), #191828;\n --vvd-neutral-tint-color-surface-4dp: linear-gradient(#ffffff0f, #ffffff0f), #191828;\n --vvd-neutral-tint-color-surface-8dp: linear-gradient(#ffffff14, #ffffff14), #191828;\n --vvd-neutral-tint-color-surface-12dp: linear-gradient(#ffffff1f, #ffffff1f), #191828;\n --vvd-neutral-tint-color-surface-16dp: linear-gradient(#ffffff24, #ffffff24), #191828;\n --vvd-neutral-tint-color-surface-24dp: linear-gradient(#ffffff33, #ffffff33), #191828;\n --vvd-neutral-tint-shadow-surface-0dp: drop-shadow(1px 0px 0px #f2f3f91a) drop-shadow(0px 1px 0px #f2f3f91a) drop-shadow(0px -1px 0px #f2f3f91a) drop-shadow(-1px 0px 0px #f2f3f91a);\n --vvd-neutral-tint-shadow-surface-2dp: none;\n --vvd-neutral-tint-shadow-surface-4dp: none;\n --vvd-neutral-tint-shadow-surface-8dp: none;\n --vvd-neutral-tint-shadow-surface-12dp: none;\n --vvd-neutral-tint-shadow-surface-16dp: none;\n --vvd-neutral-tint-shadow-surface-24dp: none;\n --vvd-typography-headline: 500 calc(var(--vvd-size-font-scale-base, 16px) * 4.125)/1.3333333333333333 Montserrat;\n --vvd-typography-subtitle: 500 calc(var(--vvd-size-font-scale-base, 16px) * 3.25)/1.3076923076923077 Montserrat;\n --vvd-typography-heading-1: 500 calc(var(--vvd-size-font-scale-base, 16px) * 2.5)/1.3 Montserrat;\n --vvd-typography-heading-2: 500 calc(var(--vvd-size-font-scale-base, 16px) * 2)/1.375 Montserrat;\n --vvd-typography-heading-3: 500 calc(var(--vvd-size-font-scale-base, 16px) * 1.625)/1.3846153846153846 Montserrat;\n --vvd-typography-heading-4: 500 calc(var(--vvd-size-font-scale-base, 16px) * 1.25)/1.4 Montserrat;\n --vvd-typography-base: 400 calc(var(--vvd-size-font-scale-base, 16px) * 0.875)/1.4285714285714286 Montserrat;\n --vvd-typography-base-bold: 600 calc(var(--vvd-size-font-scale-base, 16px) * 0.875)/1.4285714285714286 Montserrat;\n --vvd-typography-base-code: 400 calc(var(--vvd-size-font-scale-base, 16px) * 0.875)/1.4285714285714286 Roboto Mono;\n --vvd-typography-base-condensed: 400 calc(var(--vvd-size-font-scale-base, 16px) * 0.75)/1.3333333333333333 Montserrat;\n --vvd-typography-base-condensed-bold: 600 calc(var(--vvd-size-font-scale-base, 16px) * 0.75)/1.3333333333333333 Montserrat;\n --vvd-typography-base-extended: 400 calc(var(--vvd-size-font-scale-base, 16px))/1.5 Montserrat;\n --vvd-typography-base-extended-bold: 600 calc(var(--vvd-size-font-scale-base, 16px))/1.5 Montserrat;\n}\n\n.vvd-theme-alternate, ::part(vvd-theme-alternate) {\n --vvd-color-scheme: light;\n --vvd-color-canvas: #ffffff;\n --vvd-color-canvas-text: #0d0d0d;\n --vvd-color-neutral-50: #F2F2F2;\n --vvd-color-neutral-100: #E6E6E6;\n --vvd-color-neutral-200: #cccccc;\n --vvd-color-neutral-300: #b3b3b3;\n --vvd-color-neutral-400: #929292;\n --vvd-color-neutral-500: #757575;\n --vvd-color-neutral-600: #666666;\n --vvd-color-neutral-700: #4d4d4d;\n --vvd-color-neutral-800: #333333;\n --vvd-color-neutral-900: #1a1a1a;\n --vvd-color-neutral-950: #0d0d0d;\n --vvd-color-cta-50: #f5f0fd;\n --vvd-color-cta-100: #ece2fa;\n --vvd-color-cta-200: #dcc1fc;\n --vvd-color-cta-300: #cba1fa;\n --vvd-color-cta-400: #b27bf2;\n --vvd-color-cta-500: #9941ff;\n --vvd-color-cta-600: #871eff;\n --vvd-color-cta-700: #6405d1;\n --vvd-color-cta-800: #440291;\n --vvd-color-cta-900: #26044d;\n --vvd-color-cta-950: #140623;\n --vvd-color-warning-50: #FDF5D4;\n --vvd-color-warning-100: #FDEAA0;\n --vvd-color-warning-200: #FACC4B;\n --vvd-color-warning-300: #fa9f00;\n --vvd-color-warning-400: #e07902;\n --vvd-color-warning-500: #be5702;\n --vvd-color-warning-600: #A64C03;\n --vvd-color-warning-700: #893000;\n --vvd-color-warning-800: #522801;\n --vvd-color-warning-900: #2A1502;\n --vvd-color-warning-950: #150B01;\n --vvd-color-information-50: #e8f4fb;\n --vvd-color-information-100: #d3e9fc;\n --vvd-color-information-200: #9dd2fe;\n --vvd-color-information-300: #65baff;\n --vvd-color-information-400: #2997f0;\n --vvd-color-information-500: #0276d5;\n --vvd-color-information-600: #0e65c2;\n --vvd-color-information-700: #094a9e;\n --vvd-color-information-800: #0e306d;\n --vvd-color-information-900: #071939;\n --vvd-color-information-950: #040d1d;\n --vvd-color-announcement-50: #ffedfb;\n --vvd-color-announcement-100: #ffdcf7;\n --vvd-color-announcement-200: #f8b9e7;\n --vvd-color-announcement-300: #fb8fd8;\n --vvd-color-announcement-400: #e560bb;\n --vvd-color-announcement-500: #d6219c;\n --vvd-color-announcement-600: #bb1e89;\n --vvd-color-announcement-700: #8f1669;\n --vvd-color-announcement-800: #620256;\n --vvd-color-announcement-900: #32082c;\n --vvd-color-announcement-950: #1d031a;\n --vvd-color-success-50: #e1f8e5;\n --vvd-color-success-100: #cfeed4;\n --vvd-color-success-200: #86e090;\n --vvd-color-success-300: #53ca6a;\n --vvd-color-success-400: #30a849;\n --vvd-color-success-500: #1c8731;\n --vvd-color-success-600: #167629;\n --vvd-color-success-700: #155923;\n --vvd-color-success-800: #183a1e;\n --vvd-color-success-900: #0a1e11;\n --vvd-color-success-950: #060f09;\n --vvd-color-alert-50: #ffeef2;\n --vvd-color-alert-100: #fedfdf;\n --vvd-color-alert-200: #ffbbbb;\n --vvd-color-alert-300: #fe9696;\n --vvd-color-alert-400: #f75959;\n --vvd-color-alert-500: #e61d1d;\n --vvd-color-alert-600: #cd0d0d;\n --vvd-color-alert-700: #9f0202;\n --vvd-color-alert-800: #6e0000;\n --vvd-color-alert-900: #3e0004;\n --vvd-color-alert-950: #250004;\n --vvd-color-neutral-tint-50: #f2f3f9;\n --vvd-color-neutral-tint-100: #e5e5ec;\n --vvd-color-neutral-tint-200: #cbcbd9;\n --vvd-color-neutral-tint-300: #b2b1c7;\n --vvd-color-neutral-tint-400: #908fae;\n --vvd-color-neutral-tint-500: #727198;\n --vvd-color-neutral-tint-600: #63628d;\n --vvd-color-neutral-tint-700: #494977;\n --vvd-color-neutral-tint-800: #31304f;\n --vvd-color-neutral-tint-900: #191828;\n --vvd-color-neutral-tint-950: #0d0c15;\n --vvd-color-surface-0dp: #ffffff;\n --vvd-color-surface-2dp: #ffffff;\n --vvd-color-surface-4dp: #ffffff;\n --vvd-color-surface-8dp: #ffffff;\n --vvd-color-surface-12dp: #ffffff;\n --vvd-color-surface-16dp: #ffffff;\n --vvd-color-surface-24dp: #ffffff;\n --vvd-shadow-surface-0dp: drop-shadow(1px 0px 0px #cccccc) drop-shadow(0px 1px 0px #cccccc) drop-shadow(0px -1px 0px #cccccc) drop-shadow(-1px 0px 0px #cccccc);\n --vvd-shadow-surface-2dp: drop-shadow(0px 1px 4px #0000001a) drop-shadow(0px 1px 2px #0000000d) drop-shadow(0px 2px 1px #0000000d);\n --vvd-shadow-surface-4dp: drop-shadow(0px 2px 8px #0000001a) drop-shadow(0px 2px 4px #0000000d) drop-shadow(0px 4px 2px #0000000d);\n --vvd-shadow-surface-8dp: drop-shadow(0px 2px 16px #0000001a) drop-shadow(0px 8px 8px #0000000d) drop-shadow(0px 4px 4px #0000000d);\n --vvd-shadow-surface-12dp: drop-shadow(0px 4px 24px #0000001a) drop-shadow(0px 12px 16px #0000000d) drop-shadow(0px 6px 8px #0000000d);\n --vvd-shadow-surface-16dp: drop-shadow(0px 6px 32px #0000001a) drop-shadow(0px 16px 24px #0000000d) drop-shadow(0px 8px 12px #0000000d);\n --vvd-shadow-surface-24dp: drop-shadow(0px 12px 48px #00000033) drop-shadow(0px 24px 32px #0000000d) drop-shadow(0px 12px 16px #0000000d);\n --vvd-neutral-tint-shadow-surface-0dp: drop-shadow(1px 0px 0px #31304f1a) drop-shadow(0px 1px 0px #31304f1a) drop-shadow(0px -1px 0px #31304f1a) drop-shadow(-1px 0px 0px #31304f1a);\n --vvd-neutral-tint-shadow-surface-2dp: drop-shadow(0px 1px 4px #26044d1a) drop-shadow(0px 1px 2px #26044d0d) drop-shadow(0px 2px 1px #26044d0d);\n --vvd-neutral-tint-shadow-surface-4dp: drop-shadow(0px 2px 8px #26044d1a) drop-shadow(0px 2px 4px #26044d0d) drop-shadow(0px 4px 2px #26044d0d);\n --vvd-neutral-tint-shadow-surface-8dp: drop-shadow(0px 2px 16px #26044d1a) drop-shadow(0px 8px 8px #26044d0d) drop-shadow(0px 4px 4px #26044d0d);\n --vvd-neutral-tint-shadow-surface-12dp: drop-shadow(0px 4px 24px #26044d1a) drop-shadow(0px 12px 16px #26044d0d) drop-shadow(0px 6px 8px #26044d0d);\n --vvd-neutral-tint-shadow-surface-16dp: drop-shadow(0px 6px 32px #26044d1a) drop-shadow(0px 16px 24px #26044d0d) drop-shadow(0px 8px 12px #26044d0d);\n --vvd-neutral-tint-shadow-surface-24dp: drop-shadow(0px 12px 48px #26044d33) drop-shadow(0px 24px 32px #26044d0d) drop-shadow(0px 12px 16px #26044d0d);\n}\n"
};
var lightThemeStyles = {
id: 'theme.light',
css: "/**\n * Do not edit directly\n * Generated on Tue, 28 Oct 2025 11:07:11 GMT\n */\n/**\n * Do not edit directly\n * Generated on Tue, 28 Oct 2025 11:07:11 GMT\n */\n/**\n * Do not edit directly\n * Generated on Tue, 28 Oct 2025 11:07:11 GMT\n */\n/**\n * Do not edit directly\n * Generated on Tue, 28 Oct 2025 11:07:11 GMT\n */\n@property --vvd-size-density {\n syntax: \"<integer>\";\n inherits: true;\n initial-value: 0;\n}\n@property --vvd-size-font-scale-base {\n syntax: \"<length>\";\n inherits: true;\n initial-value: 16px;\n}\n.vvd-root, ::part(vvd-root) {\n --vvd-color-scheme: light;\n --vvd-color-canvas: #ffffff;\n --vvd-color-canvas-text: #0d0d0d;\n --vvd-color-neutral-50: #F2F2F2;\n --vvd-color-neutral-100: #E6E6E6;\n --vvd-color-neutral-200: #cccccc;\n --vvd-color-neutral-300: #b3b3b3;\n --vvd-color-neutral-400: #929292;\n --vvd-color-neutral-500: #757575;\n --vvd-color-neutral-600: #666666;\n --vvd-color-neutral-700: #4d4d4d;\n --vvd-color-neutral-800: #333333;\n --vvd-color-neutral-900: #1a1a1a;\n --vvd-color-neutral-950: #0d0d0d;\n --vvd-color-cta-50: #f5f0fd;\n --vvd-color-cta-100: #ece2fa;\n --vvd-color-cta-200: #dcc1fc;\n --vvd-color-cta-300: #cba1fa;\n --vvd-color-cta-400: #b27bf2;\n --vvd-color-cta-500: #9941ff;\n --vvd-color-cta-600: #871eff;\n --vvd-color-cta-700: #6405d1;\n --vvd-color-cta-800: #440291;\n --vvd-color-cta-900: #26044d;\n --vvd-color-cta-950: #140623;\n --vvd-color-warning-50: #FDF5D4;\n --vvd-color-warning-100: #FDEAA0;\n --vvd-color-warning-200: #FACC4B;\n --vvd-color-warning-300: #fa9f00;\n --vvd-color-warning-400: #e07902;\n --vvd-color-warning-500: #be5702;\n --vvd-color-warning-600: #A64C03;\n --vvd-color-warning-700: #893000;\n --vvd-color-warning-800: #522801;\n --vvd-color-warning-900: #2A1502;\n --vvd-color-warning-950: #150B01;\n --vvd-color-information-50: #e8f4fb;\n --vvd-color-information-100: #d3e9fc;\n --vvd-color-information-200: #9dd2fe;\n --vvd-color-information-300: #65baff;\n --vvd-color-information-400: #2997f0;\n --vvd-color-information-500: #0276d5;\n --vvd-color-information-600: #0e65c2;\n --vvd-color-information-700: #094a9e;\n --vvd-color-information-800: #0e306d;\n --vvd-color-information-900: #071939;\n --vvd-color-information-950: #040d1d;\n --vvd-color-announcement-50: #ffedfb;\n --vvd-color-announcement-100: #ffdcf7;\n --vvd-color-announcement-200: #f8b9e7;\n --vvd-color-announcement-300: #fb8fd8;\n --vvd-color-announcement-400: #e560bb;\n --vvd-color-announcement-500: #d6219c;\n --vvd-color-announcement-600: #bb1e89;\n --vvd-color-announcement-700: #8f1669;\n --vvd-color-announcement-800: #620256;\n --vvd-color-announcement-900: #32082c;\n --vvd-color-announcement-950: #1d031a;\n --vvd-color-success-50: #e1f8e5;\n --vvd-color-success-100: #cfeed4;\n --vvd-color-success-200: #86e090;\n --vvd-color-success-300: #53ca6a;\n --vvd-color-success-400: #30a849;\n --vvd-color-success-500: #1c8731;\n --vvd-color-success-600: #167629;\n --vvd-color-success-700: #155923;\n --vvd-color-success-800: #183a1e;\n --vvd-color-success-900: #0a1e11;\n --vvd-color-success-950: #060f09;\n --vvd-color-alert-50: #ffeef2;\n --vvd-color-alert-100: #fedfdf;\n --vvd-color-alert-200: #ffbbbb;\n --vvd-color-alert-300: #fe9696;\n --vvd-color-alert-400: #f75959;\n --vvd-color-alert-500: #e61d1d;\n --vvd-color-alert-600: #cd0d0d;\n --vvd-color-alert-700: #9f0202;\n --vvd-color-alert-800: #6e0000;\n --vvd-color-alert-900: #3e0004;\n --vvd-color-alert-950: #250004;\n --vvd-color-neutral-tint-50: #f2f3f9;\n --vvd-color-neutral-tint-100: #e5e5ec;\n --vvd-color-neutral-tint-200: #cbcbd9;\n --vvd-color-neutral-tint-300: #b2b1c7;\n --vvd-color-neutral-tint-400: #908fae;\n --vvd-color-neutral-tint-500: #727198;\n --vvd-color-neutral-tint-600: #63628d;\n --vvd-color-neutral-tint-700: #494977;\n --vvd-color-neutral-tint-800: #31304f;\n --vvd-color-neutral-tint-900: #191828;\n --vvd-color-neutral-tint-950: #0d0c15;\n --vvd-color-surface-0dp: #ffffff;\n --vvd-color-surface-2dp: #ffffff;\n --vvd-color-surface-4dp: #ffffff;\n --vvd-color-surface-8dp: #ffffff;\n --vvd-color-surface-12dp: #ffffff;\n --vvd-color-surface-16dp: #ffffff;\n --vvd-color-surface-24dp: #ffffff;\n --vvd-shadow-surface-0dp: drop-shadow(1px 0px 0px #cccccc) drop-shadow(0px 1px 0px #cccccc) drop-shadow(0px -1px 0px #cccccc) drop-shadow(-1px 0px 0px #cccccc);\n --vvd-shadow-surface-2dp: drop-shadow(0px 1px 4px #0000001a) drop-shadow(0px 1px 2px #0000000d) drop-shadow(0px 2px 1px #0000000d);\n --vvd-shadow-surface-4dp: drop-shadow(0px 2px 8px #0000001a) drop-shadow(0px 2px 4px #0000000d) drop-shadow(0px 4px 2px #0000000d);\n --vvd-shadow-surface-8dp: drop-shadow(0px 2px 16px #0000001a) drop-shadow(0px 8px 8px #0000000d) drop-shadow(0px 4px 4px #0000000d);\n --vvd-shadow-surface-12dp: drop-shadow(0px 4px 24px #0000001a) drop-shadow(0px 12px 16px #0000000d) drop-shadow(0px 6px 8px #0000000d);\n --vvd-shadow-surface-16dp: drop-shadow(0px 6px 32px #0000001a) drop-shadow(0px 16px 24px #0000000d) drop-shadow(0px 8px 12px #0000000d);\n --vvd-shadow-surface-24dp: drop-shadow(0px 12px 48px #00000033) drop-shadow(0px 24px 32px #0000000d) drop-shadow(0px 12px 16px #0000000d);\n --vvd-neutral-tint-shadow-surface-0dp: drop-shadow(1px 0px 0px #31304f1a) drop-shadow(0px 1px 0px #31304f1a) drop-shadow(0px -1px 0px #31304f1a) drop-shadow(-1px 0px 0px #31304f1a);\n --vvd-neutral-tint-shadow-surface-2dp: drop-shadow(0px 1px 4px #26044d1a) drop-shadow(0px 1px 2px #26044d0d) drop-shadow(0px 2px 1px #26044d0d);\n --vvd-neutral-tint-shadow-surface-4dp: drop-shadow(0px 2px 8px #26044d1a) drop-shadow(0px 2px 4px #26044d0d) drop-shadow(0px 4px 2px #26044d0d);\n --vvd-neutral-tint-shadow-surface-8dp: drop-shadow(0px 2px 16px #26044d1a) drop-shadow(0px 8px 8px #26044d0d) drop-shadow(0px 4px 4px #26044d0d);\n --vvd-neutral-tint-shadow-surface-12dp: drop-shadow(0px 4px 24px #26044d1a) drop-shadow(0px 12px 16px #26044d0d) drop-shadow(0px 6px 8px #26044d0d);\n --vvd-neutral-tint-shadow-surface-16dp: drop-shadow(0px 6px 32px #26044d1a) drop-shadow(0px 16px 24px #26044d0d) drop-shadow(0px 8px 12px #26044d0d);\n --vvd-neutral-tint-shadow-surface-24dp: drop-shadow(0px 12px 48px #26044d33) drop-shadow(0px 24px 32px #26044d0d) drop-shadow(0px 12px 16px #26044d0d);\n --vvd-typography-headline: 500 calc(var(--vvd-size-font-scale-base, 16px) * 4.125)/1.3333333333333333 Montserrat;\n --vvd-typography-subtitle: 500 calc(var(--vvd-size-font-scale-base, 16px) * 3.25)/1.3076923076923077 Montserrat;\n --vvd-typography-heading-1: 500 calc(var(--vvd-size-font-scale-base, 16px) * 2.5)/1.3 Montserrat;\n --vvd-typography-heading-2: 500 calc(var(--vvd-size-font-scale-base, 16px) * 2)/1.375 Montserrat;\n --vvd-typography-heading-3: 500 calc(var(--vvd-size-font-scale-base, 16px) * 1.625)/1.3846153846153846 Montserrat;\n --vvd-typography-heading-4: 500 calc(var(--vvd-size-font-scale-base, 16px) * 1.25)/1.4 Montserrat;\n --vvd-typography-base: 400 calc(var(--vvd-size-font-scale-base, 16px) * 0.875)/1.4285714285714286 Montserrat;\n --vvd-typography-base-bold: 600 calc(var(--vvd-size-font-scale-base, 16px) * 0.875)/1.4285714285714286 Montserrat;\n --vvd-typography-base-code: 400 calc(var(--vvd-size-font-scale-base, 16px) * 0.875)/1.4285714285714286 Roboto Mono;\n --vvd-typography-base-condensed: 400 calc(var(--vvd-size-font-scale-base, 16px) * 0.75)/1.3333333333333333 Montserrat;\n --vvd-typography-base-condensed-bold: 600 calc(var(--vvd-size-font-scale-base, 16px) * 0.75)/1.3333333333333333 Montserrat;\n --vvd-typography-base-extended: 400 calc(var(--vvd-size-font-scale-base, 16px))/1.5 Montserrat;\n --vvd-typography-base-extended-bold: 600 calc(var(--vvd-size-font-scale-base, 16px))/1.5 Montserrat;\n}\n\n.vvd-theme-alternate, ::part(vvd-theme-alternate) {\n --vvd-color-scheme: dark;\n --vvd-color-canvas: #000000;\n --vvd-color-canvas-text: #ffffff;\n --vvd-color-neutral-50: #1a1a1a;\n --vvd-color-neutral-100: #333333;\n --vvd-color-neutral-200: #4d4d4d;\n --vvd-color-neutral-300: #666666;\n --vvd-color-neutral-400: #757575;\n --vvd-color-neutral-500: #929292;\n --vvd-color-neutral-600: #b3b3b3;\n --vvd-color-neutral-700: #cccccc;\n --vvd-color-neutral-800: #E6E6E6;\n --vvd-color-neutral-900: #F2F2F2;\n --vvd-color-neutral-950: #ffffff;\n --vvd-color-cta-50: #26044d;\n --vvd-color-cta-100: #440291;\n --vvd-color-cta-200: #6405d1;\n --vvd-color-cta-300: #871eff;\n --vvd-color-cta-400: #9941ff;\n --vvd-color-cta-500: #b27bf2;\n --vvd-color-cta-600: #cba1fa;\n --vvd-color-cta-700: #dcc1fc;\n --vvd-color-cta-800: #ece2fa;\n --vvd-color-cta-900: #f5f0fd;\n --vvd-color-warning-50: #2A1502;\n --vvd-color-warning-100: #522801;\n --vvd-color-warning-200: #803807;\n --vvd-color-warning-300: #A64C03;\n --vvd-color-warning-400: #be5702;\n --vvd-color-warning-500: #e07902;\n --vvd-color-warning-600: #fa9f00;\n --vvd-color-warning-700: #FACC4B;\n --vvd-color-warning-800: #FDEAA0;\n --vvd-color-warning-900: #FDF5D4;\n --vvd-color-information-50: #071939;\n --vvd-color-information-100: #0e306d;\n --vvd-color-information-200: #094a9e;\n --vvd-color-information-300: #0e65c2;\n --vvd-color-information-400: #0276d5;\n --vvd-color-information-500: #2997f0;\n --vvd-color-information-600: #65baff;\n --vvd-color-information-700: #9dd2fe;\n --vvd-color-information-800: #d3e9fc;\n --vvd-color-information-900: #e8f4fb;\n --vvd-color-announcement-50: #32082c;\n --vvd-color-announcement-100: #620256;\n --vvd-color-announcement-200: #8f1669;\n --vvd-color-announcement-300: #bb1e89;\n --vvd-color-announcement-400: #d6219c;\n --vvd-color-announcement-500: #e560bb;\n --vvd-color-announcement-600: #fb8fd8;\n --vvd-color-announcement-700: #f8b9e7;\n --vvd-color-announcement-800: #ffdcf7;\n --vvd-color-announcement-900: #ffedfb;\n --vvd-color-success-50: #0a1e11;\n --vvd-color-success-100: #183a1e;\n --vvd-color-success-200: #155923;\n --vvd-color-success-300: #167629;\n --vvd-color-success-400: #1c8731;\n --vvd-color-success-500: #30a849;\n --vvd-color-success-600: #53ca6a;\n --vvd-color-success-700: #86e090;\n --vvd-color-success-800: #cfeed4;\n --vvd-color-success-900: #e1f8e5;\n --vvd-color-alert-50: #3e0004;\n --vvd-color-alert-100: #6e0000;\n --vvd-color-alert-200: #9f0202;\n --vvd-color-alert-300: #cd0d0d;\n --vvd-color-alert-400: #e61d1d;\n --vvd-color-alert-500: #f75959;\n --vvd-color-alert-600: #fe9696;\n --vvd-color-alert-700: #ffbbbb;\n --vvd-color-alert-800: #fedfdf;\n --vvd-color-alert-900: #ffeef2;\n --vvd-color-neutral-tint-50: #191828;\n --vvd-color-neutral-tint-100: #31304f;\n --vvd-color-neutral-tint-200: #494977;\n --vvd-color-neutral-tint-300: #63628d;\n --vvd-color-neutral-tint-400: #727198;\n --vvd-color-neutral-tint-500: #908fae;\n --vvd-color-neutral-tint-600: #b2b1c7;\n --vvd-color-neutral-tint-700: #cbcbd9;\n --vvd-color-neutral-tint-800: #e5e5ec;\n --vvd-color-neutral-tint-900: #f2f3f9;\n --vvd-color-surface-0dp: #0d0d0d;\n --vvd-color-surface-2dp: linear-gradient(#ffffff0f, #ffffff0f), #0d0d0d;\n --vvd-color-surface-4dp: linear-gradient(#ffffff14, #ffffff14), #0d0d0d;\n --vvd-color-surface-8dp: linear-gradient(#ffffff1a, #ffffff1a), #0d0d0d;\n --vvd-color-surface-12dp: linear-gradient(#ffffff1f, #ffffff1f), #0d0d0d;\n --vvd-color-surface-16dp: linear-gradient(#ffffff24, #ffffff24), #0d0d0d;\n --vvd-color-surface-24dp: linear-gradient(#ffffff29, #ffffff29), #0d0d0d;\n --vvd-shadow-surface-0dp: drop-shadow(1px 0px 0px #4d4d4d) drop-shadow(0px 1px 0px #4d4d4d) drop-shadow(0px -1px 0px #4d4d4d) drop-shadow(-1px 0px 0px #4d4d4d);\n --vvd-shadow-surface-2dp: drop-shadow(0px 1px 4px #00000040) drop-shadow(0px 1px 2px #00000040) drop-shadow(0px 2px 1px #00000040);\n --vvd-shadow-surface-4dp: drop-shadow(0px 2px 8px #00000040) drop-shadow(0px 2px 4px #00000040) drop-shadow(0px 4px 4px #00000040);\n --vvd-shadow-surface-8dp: drop-shadow(0px 2px 16px #00000040) drop-shadow(0px 8px 8px #00000040) drop-shadow(0px 4px 4px #00000040);\n --vvd-shadow-surface-12dp: drop-shadow(0px 4px 24px #00000040) drop-shadow(0px 12px 16px #00000040) drop-shadow(0px 6px 8px #00000040);\n --vvd-shadow-surface-16dp: drop-shadow(0px 6px 32px #00000040) drop-shadow(0px 16px 24px #00000040) drop-shadow(0px 8px 12px #00000040);\n --vvd-shadow-surface-24dp: drop-shadow(0px 12px 48px #00000040) drop-shadow(0px 24px 32px #00000040) drop-shadow(0px 12px 16px #00000040);\n --vvd-neutral-tint-color-surface-0dp: #191828;\n --vvd-neutral-tint-color-surface-2dp: linear-gradient(#ffffff08, #ffffff08), #191828;\n --vvd-neutral-tint-color-surface-4dp: linear-gradient(#ffffff0f, #ffffff0f), #191828;\n --vvd-neutral-tint-color-surface-8dp: linear-gradient(#ffffff14, #ffffff14), #191828;\n --vvd-neutral-tint-color-surface-12dp: linear-gradient(#ffffff1f, #ffffff1f), #191828;\n --vvd-neutral-tint-color-surface-16dp: linear-gradient(#ffffff24, #ffffff24), #191828;\n --vvd-neutral-tint-color-surface-24dp: linear-gradient(#ffffff33, #ffffff33), #191828;\n --vvd-neutral-tint-shadow-surface-0dp: drop-shadow(1px 0px 0px #f2f3f91a) drop-shadow(0px 1px 0px #f2f3f91a) drop-shadow(0px -1px 0px #f2f3f91a) drop-shadow(-1px 0px 0px #f2f3f91a);\n --vvd-neutral-tint-shadow-surface-2dp: none;\n --vvd-neutral-tint-shadow-surface-4dp: none;\n --vvd-neutral-tint-shadow-surface-8dp: none;\n --vvd-neutral-tint-shadow-surface-12dp: none;\n --vvd-neutral-tint-shadow-surface-16dp: none;\n --vvd-neutral-tint-shadow-surface-24dp: none;\n}\n"
};
var fontSpeziaStyles = {
id: 'font.spezia',
css: "@font-face {\n font-display: block;\n font-family: SpeziaCompleteVariableUpright;\n font-stretch: 50% 200%;\n font-weight: 1 1000;\n src: url(\"https://fonts.resources.vonage.com/fonts/v2/SpeziaCompleteVariableUprightWeb.woff2\") format(\"woff2\");\n}\n@font-face {\n font-display: block;\n font-family: SpeziaMonoCompleteVariable;\n font-stretch: 50% 200%;\n font-weight: 1 1000;\n src: url(\"https://fonts.resources.vonage.com/fonts/v2/SpeziaMonoCompleteVariableWeb.woff2\") format(\"woff2\");\n}\n.vvd-root {\n --vvd-typography-headline: 500 condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px) * 4.125) / 1.3333333333333333\n \tspeziacompletevariableupright;\n --vvd-typography-subtitle: 500 condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px) * 3.25) / 1.3076923076923077\n \tspeziacompletevariableupright;\n --vvd-typography-heading-1: 500 condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px) * 2.5) / 1.3\n \tspeziacompletevariableupright;\n --vvd-typography-heading-2: 500 condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px) * 2) / 1.375\n \tspeziacompletevariableupright;\n --vvd-typography-heading-3: 500 condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px) * 1.625) / 1.3846153846153846\n \tspeziacompletevariableupright;\n --vvd-typography-heading-4: 500 condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px) * 1.25) / 1.4\n \tspeziacompletevariableupright;\n --vvd-typography-base: 400 ultra-condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px) * 0.875) / 1.4285714285714286\n \tspeziacompletevariableupright;\n --vvd-typography-base-bold: 600 ultra-condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px) * 0.875) / 1.4285714285714286\n \tspeziacompletevariableupright;\n --vvd-typography-base-code: 400 ultra-condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px) * 0.875) / 1.4285714285714286\n \tspeziamonocompletevariable;\n --vvd-typography-base-condensed: 400 ultra-condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px) * 0.75) / 1.3333333333333333\n \tspeziacompletevariableupright;\n --vvd-typography-base-condensed-bold: 600 ultra-condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px) * 0.75) / 1.3333333333333333\n \tspeziacompletevariableupright;\n --vvd-typography-base-extended: 400 ultra-condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px)) / 1.5\n \tspeziacompletevariableupright;\n --vvd-typography-base-extended-bold: 600 ultra-condensed\n \tcalc(var(--vvd-size-font-scale-base, 16px)) / 1.5\n \tspeziacompletevariableupright;\n}\n"
};
var vividVersion = {
v2: '2.45.0',
v3: "5.5.0"
};
/* global HTMLElement */
var vividDataAttributePrefix = 'data-vivid';
var appendStyleElement = function appendStyleElement() {
var document = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.document;
return function (styleDescriptor) {
var attributeName = "".concat(vividDataAttributePrefix, "-id");
if (document.querySelectorAll("[".concat(attributeName, "=\"").concat(styleDescriptor.id, "\"]")).length > 0) {
return;
}
var styleElement = document.createElement('style');
styleElement.setAttribute('type', 'text/css');
styleElement.setAttribute(attributeName, styleDescriptor.id);
styleElement.innerHTML = styleDescriptor.css;
document.head.append(styleElement);
};
};
/**
* mounts Vivid context (styles) & Fonts into the target scope / document
* - target scope may by any `HTMLElement` or `Document` or `DocumentFragment` (including `ShadowRoot`)
* - default target (when not specified) is the document visible in the current scope
* - the API is idempotent, the style/s will be mounted only once, even if API called multiple times
*
* @param {Document | DocumentFragment | HTMLElement} target - target document/shadow root/element to mount the CSS into
* @param {Function} callback - callback function to be invoked once init is done
* @param {Object} options - options config how to init vivid. `theme` - dark | light, `font` - proprietary | oss
*
* @throws {Error} error - if the provided target argument is `null` or not a Node of type `Document` / `DocumentFragment` / `HTMLElement`
*/
var initVivid = function initVivid(target, callback) {
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
var targetElement = target;
if (targetElement instanceof HTMLElement) {
targetElement.classList.add('vivid-scope'); // vivid 2.x
targetElement.setAttribute("".concat(vividDataAttributePrefix, "-v2"), vividVersion.v2);
targetElement.classList.add('vvd-root'); // vivid 3.x
targetElement.setAttribute("".concat(vividDataAttributePrefix, "-v3"), vividVersion.v3);
targetElement = undefined;
}
if (!options.theme) {
options.theme = 'light';
}
var appendStyle = appendStyleElement();
appendStyle(coreStyles);
appendStyle(options.theme === 'light' ? lightThemeStyles : darkThemeStyles);
if (options.font === 'proprietary') {
appendStyle(fontSpeziaStyles);
}
return Promise.all([vvdFonts.init(), context__default["default"].mount(targetElement)]).then(callback);
};
var createVaadinGridStylePatchElement = function createVaadinGridStylePatchElement() {
var styleElement = document.createElement('style');
styleElement.innerHTML = "\n #header {\n z-index: 0;\n }\n [part~='cell'] ::slotted(vaadin-grid-cell-content) {\n overflow: visible;\n }";
return styleElement;
};
/**
* Patches `VwcDataGrid` (styles) to allow cell overflow to show
* - `VwcSlider` tooltips off the cell boundaries uncropped by the grid
*
* @param {HTMLElement} gridElement - target datagrid element to mount the CSS into
* @example <VwcDataGrid ref={vwcDataGridElementCellOverflowDecorator} />
*/
var vwcDataGridElementCellOverflowDecorator = function vwcDataGridElementCellOverflowDecorator(gridElement) {
return setTimeout(function () {
var _gridElement$shadowRo;
var component = gridElement === null || gridElement === void 0 || (_gridElement$shadowRo = gridElement.shadowRoot.querySelector('vaadin-grid')) === null || _gridElement$shadowRo === void 0 ? void 0 : _gridElement$shadowRo.shadowRoot;
component && component.append(createVaadinGridStylePatchElement());
}, 0);
};
/**
* Patches provided HTMLElement (styles) to crop long text and
* shows browser tooltip when actually cropped
*
* @param {HTMLElement} element - target element to apply the text cropping logic to
* @example <span ref={vwcTooltipEllipsisDecorator(text)} >{text}</span>
*/
var vwcTooltipEllipsisDecorator = function vwcTooltipEllipsisDecorator(fullText) {
return function (element) {
return setTimeout(function () {
var isTextCropped = (element === null || element === void 0 ? void 0 : element.clientHeight) < (element === null || element === void 0 ? void 0 : element.scrollHeight);
if (isTextCropped && element) {
element.setAttribute('title', fullText);
}
}, 0);
};
};
/**
* Patches provided VwcTooltip instance to open/close tooltip on mouse hover
*
* @param {HTMLElement} tooltipElement - target element to apply behavior to
* @param {number} timeout - timeout before showing tooltip, default: 1000
* @param {string} minWidth - min width in pixels, default: 'none'
* @example <VwcTooltip ref={vwcTooltipShowOnHoverDecorator()} />
*/
var vwcTooltipShowOnHoverDecorator = function vwcTooltipShowOnHoverDecorator() {
var minWidth = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'none';
var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1000;
return function (tooltipElement) {
return setTimeout(function () {
if (!tooltipElement) {
return;
}
var anchorElement = document.getElementById(tooltipElement.anchor);
if (!anchorElement) {
return;
}
anchorElement.style.setProperty('pointer-events', 'auto');
tooltipElement.style.setProperty('--tooltip-inline-size', minWidth);
tooltipElement.shadowRoot.querySelector('vwc-popup').setAttribute('strategy', 'absolute');
var showTimeoutHandler;
anchorElement.addEventListener('mouseover', function () {
showTimeoutHandler = setTimeout(function () {
tooltipElement.open = true;
}, timeout);
});
anchorElement.addEventListener('mouseout', function () {
clearTimeout(showTimeoutHandler);
tooltipElement.open = false;
});
}, 0);
};
};
/**
* Patches provided `VwcCard` (styles) to allow a sub menu triggered from an
* action in the card to appear over the card and not inside of it
*
* @param {HTMLElement} element - target `VwcCard` element containing the action
* that triggers the menu
* @example <VwcCard ref={vwcCardWithMenu}><VwcMenu slot='actions' /></VwcCard>
*/
var vwcCardWithMenu = function vwcCardWithMenu(element) {
return setTimeout(function () {
var card = element === null || element === void 0 ? void 0 : element.shadowRoot.querySelector('.vwc-card');
if (card) {
card.style.overflow = 'unset';
}
}, 0);
};
/**
* Patches provided `VwcCard` (styles) to crop long heading text and
* shows browser tooltip when actually cropped
*
* @param {HTMLElement} element - target `VwcCard` element to apply the `heading` cropping logic to
* @example <VwcCard ref={vwcCardHeadingCropDecorator(text)} heading={text} />
*/
var vwcCardHeadingCropDecorator = function vwcCardHeadingCropDecorator(text) {
return function (element) {
return setTimeout(function () {
var cardContentElement = element === null || element === void 0 ? void 0 : element.shadowRoot.querySelector('.vwc-card-content');
var titleElement = element === null || element === void 0 ? void 0 : element.shadowRoot.querySelector('.vwc-card-title');
vwcTooltipEllipsisDecorator(text)(titleElement);
if ((cardContentElement === null || cardContentElement === void 0 ? void 0 : cardContentElement.clientWidth) < (titleElement === null || titleElement === void 0 ? void 0 : titleElement.clientWidth)) {
var computedCardContentStyle = window.getComputedStyle(cardContentElement, null);
titleElement.setAttribute('title', text);
titleElement.style.width = computedCardContentStyle.getPropertyValue('width');
titleElement.style.overflow = 'hidden';
titleElement.style.display = 'block';
titleElement.style['white-space'] = 'nowrap';
titleElement.style['text-overflow'] = 'ellipsis';
}
}, 0);
};
};
var createStyleElement = function createStyleElement() {
var styleElement = document.createElement('style');
styleElement.innerHTML = "\n .vwc-note {\n contain: inherit !important;\n }";
return styleElement;
};
/**
* Patches `VwcNote` (styles) to allow content overflow
*
* @param {HTMLElement} noteElement - target element to mount the CSS into
* @example <VwcNote ref={vwcNoteContentOverflowDecorator} />
*/
var vwcNoteContentOverflowDecorator = function vwcNoteContentOverflowDecorator(noteElement) {
return setTimeout(function () {
var component = noteElement === null || noteElement === void 0 ? void 0 : noteElement.shadowRoot;
component && component.append(createStyleElement());
}, 0);
};
var createHtmlMessageElement = function createHtmlMessageElement(html) {
var element = document.createElement('div');
element.setAttribute('class', 'mdc-snackbar__label');
element.setAttribute('role', 'status');
element.setAttribute('aria-live', 'polite');
element.innerHTML = html;
return element;
};
/**
* Patches `VwcSnackbar` to allow html message text
*
* @param {HTMLElement} element - target element to patch
* @example <VwcSnackbar ref={vwcSnackBarHtmlMessageDecorator('<b>bold</b>')} />
*/
var vwcSnackBarHtmlMessageDecorator = function vwcSnackBarHtmlMessageDecorator() {
var htmlMessage = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '<b>bold</b>';
return function (element) {
return setTimeout(function () {
var component = element === null || element === void 0 ? void 0 : element.shadowRoot.querySelector('.header-and-label');
component === null || component === void 0 || component.style.setProperty('width', '100%');
component === null || component === void 0 || component.append(createHtmlMessageElement(htmlMessage));
}, 0);
};
};
/**
* Patches attribute value. You can pass now a `value` to the `VwcIconButton` as
* in normal buttons
*
* @param {any} attribute
* @param {any} value
* @param {HTMLElement} element
* @returns
*/
var vwcSetAttributeValue = function vwcSetAttributeValue(attribute, value) {
return function (element) {
element === null || element === void 0 || element.setAttribute(attribute, value);
};
};
function createCommonjsModule(fn) {
var module = { exports: {} };
return fn(module, module.exports), module.exports;
}
var client = createCommonjsModule(function (module, exports) {
if (process.env.NODE_ENV === 'production') {
exports.createRoot = m__default["default"].createRoot;
exports.hydrateRoot = m__default["default"].hydrateRoot;
} else {
var i = m__default["default"].__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
exports.createRoot = function(c, o) {
i.usingClientEntryPoint = true;
try {
return m__default["default"].createRoot(c, o);
} finally {
i.usingClientEntryPoint = false;
}
};
exports.hydrateRoot = function(c, h, o) {
i.usingClientEntryPoint = true;
try {
return m__default["default"].hydrateRoot(c, h, o);
} finally {
i.usingClientEntryPoint = false;
}
};
}
});
/* global HTMLElement */
/**
* Renders the cell contents using React 18.x api
*
* @param {ReactNode} children - renderer contents
* @param {Container & { rootRenderer?: Root }} container - HTMLElement root container
*/
var cellRendererFactory = function cellRendererFactory(children, container) {
var _container$rootRender;
var root = (_container$rootRender = container === null || container === void 0 ? void 0 : container.rootRenderer) !== null && _container$rootRender !== void 0 ? _container$rootRender : client.createRoot(container);
root.render(children);
container.rootRenderer = root;
};
exports.cellRendererFactory = cellRendererFactory;
exports.initVivid = initVivid;
exports.vwcCardHeadingCropDecorator = vwcCardHeadingCropDecorator;
exports.vwcCardWithMenu = vwcCardWithMenu;
exports.vwcDataGridElementCellOverflowDecorator = vwcDataGridElementCellOverflowDecorator;
exports.vwcNoteContentOverflowDecorator = vwcNoteContentOverflowDecorator;
exports.vwcSetAttributeValue = vwcSetAttributeValue;
exports.vwcSnackBarHtmlMessageDecorator = vwcSnackBarHtmlMessageDecorator;
exports.vwcTooltipEllipsisDecorator = vwcTooltipEllipsisDecorator;
exports.vwcTooltipShowOnHoverDecorator = vwcTooltipShowOnHoverDecorator;