@openelement/ui 0.41.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +78 -0
  3. package/package.json +142 -0
  4. package/src/daisy-classes.d.ts +7 -0
  5. package/src/daisy-classes.js +770 -0
  6. package/src/index.d.ts +57 -0
  7. package/src/index.js +62 -0
  8. package/src/manifest.d.ts +8 -0
  9. package/src/manifest.js +255 -0
  10. package/src/open-badge.d.ts +15 -0
  11. package/src/open-badge.js +88 -0
  12. package/src/open-brand-mark.d.ts +14 -0
  13. package/src/open-brand-mark.js +107 -0
  14. package/src/open-button.d.ts +38 -0
  15. package/src/open-button.js +219 -0
  16. package/src/open-callout.d.ts +26 -0
  17. package/src/open-callout.js +99 -0
  18. package/src/open-card.d.ts +33 -0
  19. package/src/open-card.js +107 -0
  20. package/src/open-code-block.d.ts +44 -0
  21. package/src/open-code-block.js +267 -0
  22. package/src/open-dialog.d.ts +47 -0
  23. package/src/open-dialog.js +235 -0
  24. package/src/open-dropdown.d.ts +25 -0
  25. package/src/open-dropdown.js +45 -0
  26. package/src/open-hero-ping.d.ts +27 -0
  27. package/src/open-hero-ping.js +136 -0
  28. package/src/open-input.d.ts +51 -0
  29. package/src/open-input.js +233 -0
  30. package/src/open-lab-panel.d.ts +16 -0
  31. package/src/open-lab-panel.js +151 -0
  32. package/src/open-lab-stage.d.ts +15 -0
  33. package/src/open-lab-stage.js +622 -0
  34. package/src/open-layout.d.ts +111 -0
  35. package/src/open-layout.js +1377 -0
  36. package/src/open-modal.d.ts +25 -0
  37. package/src/open-modal.js +48 -0
  38. package/src/open-props-tokens.d.ts +7 -0
  39. package/src/open-props-tokens.js +474 -0
  40. package/src/open-standards-visual.d.ts +20 -0
  41. package/src/open-standards-visual.js +425 -0
  42. package/src/open-step-card.d.ts +34 -0
  43. package/src/open-step-card.js +117 -0
  44. package/src/open-tabs.d.ts +27 -0
  45. package/src/open-tabs.js +56 -0
  46. package/src/open-theme-toggle.d.ts +38 -0
  47. package/src/open-theme-toggle.js +223 -0
@@ -0,0 +1,25 @@
1
+ /** @jsxImportSource @openelement/core */ /**
2
+ * @openelement/ui - open-modal
3
+ *
4
+ * DaisyUI-style modal using DsdElement + Signals.
5
+ * Uses signal-to-DOM binding on the `open` attribute; the daisyUI
6
+ * `.modal[open]` CSS selector handles show/hide without re-renders.
7
+ *
8
+ * Usage:
9
+ * ```html
10
+ * <open-modal>
11
+ * <div>Modal content here</div>
12
+ * </open-modal>
13
+ * ```
14
+ *
15
+ * @slot - Modal body content
16
+ */ import { OpenElement, type VNode } from '@openelement/element';
17
+ import { daisyClassSheet } from "./daisy-classes.js";
18
+ export declare const tagName: 'open-modal';
19
+ export declare class OpenModal extends OpenElement {
20
+ static override styles: [];
21
+ open(): void;
22
+ close(): void;
23
+ override render(): VNode;
24
+ }
25
+ export default OpenModal;
@@ -0,0 +1,48 @@
1
+ /** @jsxImportSource @openelement/core */ /**
2
+ * @openelement/ui - open-modal
3
+ *
4
+ * DaisyUI-style modal using DsdElement + Signals.
5
+ * Uses signal-to-DOM binding on the `open` attribute; the daisyUI
6
+ * `.modal[open]` CSS selector handles show/hide without re-renders.
7
+ *
8
+ * Usage:
9
+ * ```html
10
+ * <open-modal>
11
+ * <div>Modal content here</div>
12
+ * </open-modal>
13
+ * ```
14
+ *
15
+ * @slot - Modal body content
16
+ */ import { OpenElement } from '@openelement/element';
17
+ import { signal } from '@openelement/signal';
18
+ import { daisyClassSheet } from './daisy-classes.js';
19
+ export const tagName = 'open-modal';
20
+ export class OpenModal extends OpenElement {
21
+ static styles = [
22
+ daisyClassSheet
23
+ ];
24
+ #open = signal(false);
25
+ open() {
26
+ this.#open.value = true;
27
+ }
28
+ close() {
29
+ this.#open.value = false;
30
+ }
31
+ #closeOnBackdrop(e) {
32
+ if (e.target.classList.contains('modal-backdrop')) this.close();
33
+ }
34
+ render() {
35
+ return <div class='modal' open={this.#open} role='dialog' aria-modal='true'>
36
+ <div class='modal-backdrop' onClick={(e)=>this.#closeOnBackdrop(e)}/>
37
+ <div class='modal-content'>
38
+ <slot/>
39
+ </div>
40
+ </div>;
41
+ }
42
+ }
43
+ export default OpenModal;
44
+ // Guard: idempotent across SSR paths
45
+ if (typeof customElements !== 'undefined' && !customElements.get(tagName)) {
46
+ customElements.define(tagName, OpenModal);
47
+ }
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpbGU6Ly8vaG9tZS9ydW5uZXIvd29yay9vcGVuZWxlbWVudC9vcGVuZWxlbWVudC9wYWNrYWdlcy91aS9zcmMvb3Blbi1tb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyoqIEBqc3hJbXBvcnRTb3VyY2UgQG9wZW5lbGVtZW50L2NvcmUgKi9cbi8qKlxuICogQG9wZW5lbGVtZW50L3VpIC0gb3Blbi1tb2RhbFxuICpcbiAqIERhaXN5VUktc3R5bGUgbW9kYWwgdXNpbmcgRHNkRWxlbWVudCArIFNpZ25hbHMuXG4gKiBVc2VzIHNpZ25hbC10by1ET00gYmluZGluZyBvbiB0aGUgYG9wZW5gIGF0dHJpYnV0ZTsgdGhlIGRhaXN5VUlcbiAqIGAubW9kYWxbb3Blbl1gIENTUyBzZWxlY3RvciBoYW5kbGVzIHNob3cvaGlkZSB3aXRob3V0IHJlLXJlbmRlcnMuXG4gKlxuICogVXNhZ2U6XG4gKiBgYGBodG1sXG4gKiA8b3Blbi1tb2RhbD5cbiAqICAgPGRpdj5Nb2RhbCBjb250ZW50IGhlcmU8L2Rpdj5cbiAqIDwvb3Blbi1tb2RhbD5cbiAqIGBgYFxuICpcbiAqIEBzbG90IC0gTW9kYWwgYm9keSBjb250ZW50XG4gKi9cblxuaW1wb3J0IHsgT3BlbkVsZW1lbnQsIHR5cGUgVk5vZGUgfSBmcm9tICdAb3BlbmVsZW1lbnQvZWxlbWVudCc7XG5pbXBvcnQgeyBzaWduYWwgfSBmcm9tICdAb3BlbmVsZW1lbnQvc2lnbmFsJztcbmltcG9ydCB7IGRhaXN5Q2xhc3NTaGVldCB9IGZyb20gJy4vZGFpc3ktY2xhc3Nlcy5qcyc7XG5cbmV4cG9ydCBjb25zdCB0YWdOYW1lID0gJ29wZW4tbW9kYWwnO1xuXG5leHBvcnQgY2xhc3MgT3Blbk1vZGFsIGV4dGVuZHMgT3BlbkVsZW1lbnQge1xuICBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzID0gW2RhaXN5Q2xhc3NTaGVldF07XG4gICNvcGVuID0gc2lnbmFsKGZhbHNlKTtcblxuICBvcGVuKCk6IHZvaWQge1xuICAgIHRoaXMuI29wZW4udmFsdWUgPSB0cnVlO1xuICB9XG4gIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuI29wZW4udmFsdWUgPSBmYWxzZTtcbiAgfVxuXG4gICNjbG9zZU9uQmFja2Ryb3AoZTogRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoKGUudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5jbGFzc0xpc3QuY29udGFpbnMoJ21vZGFsLWJhY2tkcm9wJykpIHRoaXMuY2xvc2UoKTtcbiAgfVxuXG4gIG92ZXJyaWRlIHJlbmRlcigpOiBWTm9kZSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3M9J21vZGFsJyBvcGVuPXt0aGlzLiNvcGVufSByb2xlPSdkaWFsb2cnIGFyaWEtbW9kYWw9J3RydWUnPlxuICAgICAgICA8ZGl2IGNsYXNzPSdtb2RhbC1iYWNrZHJvcCcgb25DbGljaz17KGU6IEV2ZW50KSA9PiB0aGlzLiNjbG9zZU9uQmFja2Ryb3AoZSl9IC8+XG4gICAgICAgIDxkaXYgY2xhc3M9J21vZGFsLWNvbnRlbnQnPlxuICAgICAgICAgIDxzbG90IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBPcGVuTW9kYWw7XG5cbi8vIEd1YXJkOiBpZGVtcG90ZW50IGFjcm9zcyBTU1IgcGF0aHNcbmlmICh0eXBlb2YgY3VzdG9tRWxlbWVudHMgIT09ICd1bmRlZmluZWQnICYmICFjdXN0b21FbGVtZW50cy5nZXQodGFnTmFtZSkpIHtcbiAgY3VzdG9tRWxlbWVudHMuZGVmaW5lKHRhZ05hbWUsIE9wZW5Nb2RhbCk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdUNBQXVDLEdBQ3ZDOzs7Ozs7Ozs7Ozs7Ozs7Q0FlQyxHQUVELFNBQVMsV0FBVyxRQUFvQix1QkFBdUI7QUFDL0QsU0FBUyxNQUFNLFFBQVEsc0JBQXNCO0FBQzdDLFNBQVMsZUFBZSxRQUFRLHFCQUFxQjtBQUVyRCxPQUFPLE1BQU0sVUFBVSxhQUFhO0FBRXBDLE9BQU8sTUFBTSxrQkFBa0I7RUFDN0IsT0FBZ0IsU0FBUztJQUFDO0dBQWdCLENBQUM7RUFDM0MsQ0FBQSxJQUFLLEdBQUcsT0FBTyxPQUFPO0VBRXRCLE9BQWE7SUFDWCxJQUFJLENBQUMsQ0FBQSxJQUFLLENBQUMsS0FBSyxHQUFHO0VBQ3JCO0VBQ0EsUUFBYztJQUNaLElBQUksQ0FBQyxDQUFBLElBQUssQ0FBQyxLQUFLLEdBQUc7RUFDckI7RUFFQSxDQUFBLGVBQWdCLENBQUMsQ0FBUTtJQUN2QixJQUFJLEFBQUMsRUFBRSxNQUFNLENBQWlCLFNBQVMsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLElBQUksQ0FBQyxLQUFLO0VBQ2hGO0VBRVMsU0FBZ0I7SUFDdkIsUUFDRyxJQUFJLE1BQU0sUUFBUSxNQUFNLElBQUksQ0FBQyxDQUFBLElBQUssRUFBRSxLQUFLLFNBQVMsV0FBVyxPQUFPO1FBQ25FLENBQUMsSUFBSSxNQUFNLGlCQUFpQixTQUFTLENBQUMsSUFBYSxJQUFJLENBQUMsQ0FBQSxlQUFnQixDQUFDLEtBQU07UUFDL0UsQ0FBQyxJQUFJLE1BQU0sZ0JBQWdCO1VBQ3pCLENBQUMsTUFBTztRQUNWLEVBQUUsSUFBSTtNQUNSLEVBQUU7RUFFTjtBQUNGO0FBRUEsZUFBZSxVQUFVO0FBRXpCLHFDQUFxQztBQUNyQyxJQUFJLE9BQU8sbUJBQW1CLGVBQWUsQ0FBQyxlQUFlLEdBQUcsQ0FBQyxVQUFVO0VBQ3pFLGVBQWUsTUFBTSxDQUFDLFNBQVM7QUFDakMifQ==
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @openelement/ui - Open Props Token Sheet
3
+ *
4
+ * Inlined at build time so consumers do not need to ship a separate CSS asset
5
+ * and SSR bundles do not depend on a file-system path next to import.meta.url.
6
+ */ import { type StyleSheetLike } from '@openelement/core/style-sheet';
7
+ export declare const openPropsTokenSheet: StyleSheetLike;
@@ -0,0 +1,474 @@
1
+ /**
2
+ * @openelement/ui - Open Props Token Sheet
3
+ *
4
+ * Inlined at build time so consumers do not need to ship a separate CSS asset
5
+ * and SSR bundles do not depend on a file-system path next to import.meta.url.
6
+ */ import { StyleSheet } from '@openelement/core/style-sheet';
7
+ const sheet = new StyleSheet();
8
+ sheet.replaceSync(`/**
9
+ * @openelement/ui - Open Props Token Sheet
10
+ *
11
+ * Shared design tokens (spacing, gray palette, border radius, typography,
12
+ * semantic brand/text/bg/border tokens) that all openElement components
13
+ * can adopt via \`static styles\`.
14
+ *
15
+ * Cleaned dead tokens; only used tokens survive.
16
+ */
17
+
18
+ :host {
19
+ display: block;
20
+ min-height: 1px;
21
+ contain: layout style;
22
+
23
+ /* ═══════════════════════════════════════════════
24
+ Spacing scale
25
+ ═══════════════════════════════════════════════ */
26
+ --size-1: 4px;
27
+ --size-2: 8px;
28
+ --size-3: 12px;
29
+ --size-4: 16px;
30
+ --size-5: 20px;
31
+ --size-6: 24px;
32
+ --size-7: 28px;
33
+ --size-8: 32px;
34
+ --size-9: 36px;
35
+ --size-10: 40px;
36
+ --size-12: 48px;
37
+ --size-16: 64px;
38
+
39
+ /* ═══════════════════════════════════════════════
40
+ Gray palette (light mode base)
41
+ ═══════════════════════════════════════════════ */
42
+ --gray-0: #f8f9fa;
43
+ --gray-1: #f1f3f5;
44
+ --gray-2: #e9ecef;
45
+ --gray-3: #dee2e6;
46
+ --gray-4: #ced4da;
47
+ --gray-5: #adb5bd;
48
+ --gray-6: #868e96;
49
+ --gray-7: #495057;
50
+ --gray-8: #343a40;
51
+ --gray-9: #212529;
52
+ --gray-10: #16191d;
53
+ --gray-11: #0d0f12;
54
+ --gray-12: #030507;
55
+
56
+ /* ═══════════════════════════════════════════════
57
+ Border radius
58
+ ═══════════════════════════════════════════════ */
59
+ --radius-1: 6px;
60
+ --radius-2: 8px;
61
+ --radius-3: 12px;
62
+ --radius-4: 20px;
63
+ --radius-round: 9999px;
64
+
65
+ /* ═══════════════════════════════════════════════
66
+ Border size
67
+ ═══════════════════════════════════════════════ */
68
+ --border-size-1: 1px;
69
+ --border-size-2: 2px;
70
+
71
+ /* ═══════════════════════════════════════════════
72
+ Shadows
73
+ ═══════════════════════════════════════════════ */
74
+ --shadow-1: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
75
+
76
+ /* ═══════════════════════════════════════════════
77
+ Typography
78
+ ═══════════════════════════════════════════════ */
79
+ --font-sans: 'Instrument Sans', Inter, Arial, Helvetica, system-ui, sans-serif;
80
+ --font-mono: 'SF Mono', 'Fira Code', 'Fira Mono', monospace;
81
+ --font-size-00: 0.75rem;
82
+ --font-size-0: 0.875rem;
83
+ --font-size-1: 1rem;
84
+ --font-size-2: 1.25rem;
85
+ --font-size-3: 1.5rem;
86
+ --font-size-4: 2rem;
87
+ --font-size-5: 2.5rem;
88
+ --font-size-6: 3.125rem;
89
+ --font-size-7: 4rem;
90
+ --font-size-8: 5.5rem;
91
+ --font-weight-4: 400;
92
+ --font-weight-5: 500;
93
+ --font-weight-6: 600;
94
+ --font-weight-7: 700;
95
+ --font-weight-8: 800;
96
+ --font-weight-9: 900;
97
+ --font-letterspacing-0: 0;
98
+ --font-letterspacing-1: 0;
99
+ --font-letterspacing-2: 0;
100
+ --font-letterspacing-3: 0;
101
+ --font-letterspacing-4: 0.04em;
102
+ --font-letterspacing-5: 0.08em;
103
+ --font-lineheight-1: 0.95;
104
+ --font-lineheight-3: 1.5;
105
+ --font-lineheight-4: 1.75;
106
+
107
+ /* ═══════════════════════════════════════════════
108
+ Animation easing
109
+ ═══════════════════════════════════════════════ */
110
+ --ease-1: cubic-bezier(0.25, 0, 0.5, 1);
111
+ --ease-2: cubic-bezier(0.45, 0, 0.25, 1);
112
+ --ease-3: cubic-bezier(0.5, 0, 0, 1);
113
+ --duration-2: 200ms;
114
+
115
+ /* ═══════════════════════════════════════════════
116
+ Brand tokens
117
+ ═══════════════════════════════════════════════ */
118
+ --brand: var(--violet-6);
119
+ --brand-hover: var(--violet-7);
120
+ --brand-light: var(--violet-4);
121
+ --brand-pale: var(--violet-1);
122
+ --brand-deep: var(--violet-11);
123
+ --brand-subtle: color-mix(in srgb, var(--brand) 12%, transparent);
124
+ --brand-glow: color-mix(in srgb, var(--brand) 24%, transparent);
125
+ --on-brand: var(--gray-0);
126
+ --site-container: 1120px;
127
+ --site-container-wide: 1240px;
128
+ --site-container-reading: 760px;
129
+ --site-section-block: var(--size-16);
130
+ --site-section-gap: var(--size-8);
131
+
132
+ /* ═══════════════════════════════════════════════
133
+ Component Semantic Tokens (for daisyUI classes)
134
+ ═══════════════════════════════════════════════ */
135
+ --btn-padding-x: var(--size-4);
136
+ --btn-padding-y: var(--size-2);
137
+ --btn-radius: var(--radius-round);
138
+ --btn-font-size: var(--font-size-0);
139
+ --btn-font-weight: var(--font-weight-7);
140
+ --btn-text-case: none;
141
+ --card-padding: var(--size-6);
142
+ --card-radius: var(--radius-1);
143
+ --badge-padding-x: var(--size-2);
144
+ --badge-padding-y: 2px;
145
+ --badge-radius: var(--radius-round);
146
+ --badge-font-size: var(--font-size-00);
147
+ --alert-padding: var(--size-4);
148
+ --alert-radius: var(--radius-2);
149
+ --input-padding-x: var(--size-3);
150
+ --input-padding-y: var(--size-2);
151
+ --input-radius: var(--radius-1);
152
+ --input-font-size: var(--font-size-0);
153
+ --input-border-color: var(--border);
154
+ --divider-margin: var(--size-4) 0;
155
+ --divider-color: var(--border);
156
+ --tooltip-bg: var(--gray-9);
157
+ --tooltip-color: var(--gray-0);
158
+ --tooltip-radius: var(--radius-1);
159
+ --tooltip-padding: var(--size-1) var(--size-2);
160
+ --modal-bg: var(--bg-elevated);
161
+ --modal-radius: var(--radius-3);
162
+ --modal-padding: var(--size-6);
163
+ --menu-padding: var(--size-2);
164
+ --menu-radius: var(--radius-2);
165
+ --menu-item-padding: var(--size-2) var(--size-4);
166
+ --dropdown-bg: var(--bg-elevated);
167
+ --dropdown-radius: var(--radius-2);
168
+ --tab-padding: var(--size-2) var(--size-4);
169
+ --tab-radius: var(--radius-1);
170
+
171
+ /* ═══════════════════════════════════════════════
172
+ UI Semantic Tokens (light defaults)
173
+ Dark mode overrides via :root[data-theme="dark"] in SSG
174
+ ═══════════════════════════════════════════════ */
175
+ --text-primary: var(--gray-9);
176
+ --text-secondary: var(--gray-6);
177
+ --text-muted: var(--gray-5);
178
+ --bg-base: color-mix(in srgb, var(--violet-0) 42%, var(--gray-0));
179
+ --bg-surface: color-mix(in srgb, var(--violet-0) 32%, var(--gray-1));
180
+ --bg-card: color-mix(in srgb, var(--violet-0) 18%, var(--gray-0));
181
+ --bg-elevated: #ffffff;
182
+ --bg-hover: var(--gray-2);
183
+ --bg-muted: var(--gray-1);
184
+ --bg-code: var(--gray-11);
185
+ --code-border: var(--gray-8);
186
+ --code-text: var(--gray-2);
187
+ --border: var(--gray-3);
188
+ --border-hover: var(--gray-4);
189
+ --error: #dc3545;
190
+ --error-subtle: rgba(220, 53, 69, 0.1);
191
+ --success: #16a34a;
192
+ --success-subtle: rgba(22, 163, 74, 0.1);
193
+ --warning: #d97706;
194
+ --warning-subtle: rgba(217, 119, 6, 0.1);
195
+ --info: #2563eb;
196
+ --info-subtle: rgba(37, 99, 235, 0.1);
197
+ --overlay: rgba(0, 0, 0, 0.4);
198
+ --nav-bg: color-mix(in srgb, var(--bg-base) 86%, transparent);
199
+ --nav-height: 72px;
200
+ --nav-link-color: var(--text-primary);
201
+ --nav-link-hover: var(--brand);
202
+ --nav-link-size: var(--font-size-0);
203
+
204
+ /* ═══════════════════════════════════════════════
205
+ Open Props Color Scales (light mode)
206
+ https://open-props.style
207
+ ═══════════════════════════════════════════════ */
208
+ --indigo-0: #edf2ff;
209
+ --indigo-1: #dbe4ff;
210
+ --indigo-2: #bac8ff;
211
+ --indigo-3: #91a7ff;
212
+ --indigo-4: #748ffc;
213
+ --indigo-5: #5c7cfa;
214
+ --indigo-6: #4c6ef5;
215
+ --indigo-7: #4263eb;
216
+ --indigo-8: #3b5bdb;
217
+ --indigo-9: #364fc7;
218
+ --indigo-10: #2b3990;
219
+ --indigo-11: #1e266d;
220
+ --indigo-12: #11184a;
221
+ --green-0: #ebfbee;
222
+ --green-1: #d3f9d8;
223
+ --green-2: #b2f2bb;
224
+ --green-3: #8ce99a;
225
+ --green-4: #69db7c;
226
+ --green-5: #51cf66;
227
+ --green-6: #40c057;
228
+ --green-7: #37b24d;
229
+ --green-8: #2f9e44;
230
+ --green-9: #2b8a3e;
231
+ --green-10: #226231;
232
+ --green-11: #1a4725;
233
+ --green-12: #0f2d18;
234
+ --red-0: #fff5f5;
235
+ --red-1: #ffe3e3;
236
+ --red-2: #ffc9c9;
237
+ --red-3: #ffa8a8;
238
+ --red-4: #ff8787;
239
+ --red-5: #ff6b6b;
240
+ --red-6: #fa5252;
241
+ --red-7: #f03e3e;
242
+ --red-8: #e03131;
243
+ --red-9: #c92a2a;
244
+ --red-10: #a61e1e;
245
+ --red-11: #821515;
246
+ --red-12: #540d0d;
247
+ --orange-0: #fff4e6;
248
+ --orange-1: #ffe8cc;
249
+ --orange-2: #ffd8a8;
250
+ --orange-3: #ffc078;
251
+ --orange-4: #ffa94d;
252
+ --orange-5: #ff922b;
253
+ --orange-6: #fd7e14;
254
+ --orange-7: #f76707;
255
+ --orange-8: #e8590c;
256
+ --orange-9: #d9480f;
257
+ --orange-10: #b03a00;
258
+ --orange-11: #872a00;
259
+ --orange-12: #5c1a00;
260
+ --blue-0: #e7f5ff;
261
+ --blue-1: #d0ebff;
262
+ --blue-2: #a5d8ff;
263
+ --blue-3: #74c0fc;
264
+ --blue-4: #4dabf7;
265
+ --blue-5: #339af0;
266
+ --blue-6: #228be6;
267
+ --blue-7: #1c7ed6;
268
+ --blue-8: #1971c2;
269
+ --blue-9: #1864ab;
270
+ --blue-10: #134e8a;
271
+ --blue-11: #0e3b69;
272
+ --blue-12: #092848;
273
+ --teal-0: #e6fcf5;
274
+ --teal-1: #c3fae8;
275
+ --teal-2: #96f2d7;
276
+ --teal-3: #63e6be;
277
+ --teal-4: #38d9a9;
278
+ --teal-5: #20c997;
279
+ --teal-6: #12b886;
280
+ --teal-7: #0ca678;
281
+ --teal-8: #099268;
282
+ --teal-9: #087f5b;
283
+ --teal-10: #066649;
284
+ --teal-11: #054d37;
285
+ --teal-12: #033325;
286
+ --cyan-0: #e3fafc;
287
+ --cyan-1: #c5f6fa;
288
+ --cyan-2: #99e9f2;
289
+ --cyan-3: #66d9e8;
290
+ --cyan-4: #3bc9db;
291
+ --cyan-5: #22b8cf;
292
+ --cyan-6: #15aabf;
293
+ --cyan-7: #1098ad;
294
+ --cyan-8: #0c8599;
295
+ --cyan-9: #0b7285;
296
+ --cyan-10: #095c6b;
297
+ --cyan-11: #074652;
298
+ --cyan-12: #053038;
299
+ --violet-0: #fbf7ff;
300
+ --violet-1: #f3eaff;
301
+ --violet-2: #e6d8ff;
302
+ --violet-3: #d0bdff;
303
+ --violet-4: #b59cff;
304
+ --violet-5: #9c7df2;
305
+ --violet-6: #8262db;
306
+ --violet-7: #6d4cc4;
307
+ --violet-8: #58399e;
308
+ --violet-9: #422774;
309
+ --violet-10: #2f1c52;
310
+ --violet-11: #21143b;
311
+ --violet-12: #130a22;
312
+ }
313
+
314
+ /* ═══════════════════════════════════════════════
315
+ Dark Mode — cascades from :root[data-theme="dark"]
316
+ All shadow DOMs inherit these overrides
317
+ ═══════════════════════════════════════════════ */
318
+ :host([data-theme='dark']),
319
+ :host-context([data-theme='dark']) {
320
+ --gray-0: #030507;
321
+ --gray-1: #0d0f12;
322
+ --gray-2: #16191d;
323
+ --gray-3: #212529;
324
+ --gray-4: #343a40;
325
+ --gray-5: #495057;
326
+ --gray-6: #868e96;
327
+ --gray-7: #adb5bd;
328
+ --gray-8: #ced4da;
329
+ --gray-9: #dee2e6;
330
+ --gray-10: #e9ecef;
331
+ --gray-11: #f1f3f5;
332
+ --gray-12: #f8f9fa;
333
+ --brand: var(--violet-6);
334
+ --brand-hover: var(--violet-7);
335
+ --brand-light: var(--violet-4);
336
+ --brand-deep: var(--violet-12);
337
+ --brand-subtle: color-mix(in srgb, var(--brand) 16%, transparent);
338
+ --brand-glow: color-mix(in srgb, var(--brand) 22%, transparent);
339
+ --on-brand: var(--gray-12);
340
+ --text-primary: var(--gray-10);
341
+ --text-secondary: var(--gray-7);
342
+ --text-muted: var(--gray-6);
343
+ --bg-base: color-mix(in srgb, var(--violet-0) 18%, var(--gray-0));
344
+ --bg-surface: color-mix(in srgb, var(--violet-1) 14%, var(--gray-1));
345
+ --bg-card: color-mix(in srgb, var(--violet-2) 10%, var(--gray-2));
346
+ --bg-elevated: var(--gray-1);
347
+ --bg-hover: var(--gray-3);
348
+ --bg-code: var(--gray-1);
349
+ --code-border: var(--gray-4);
350
+ --code-text: var(--gray-10);
351
+ --border: var(--gray-3);
352
+ --border-hover: var(--gray-4);
353
+ --error: #f87171;
354
+ --error-subtle: rgba(248, 113, 113, 0.15);
355
+ --success: #4ade80;
356
+ --success-subtle: rgba(74, 222, 128, 0.1);
357
+ --warning: #fbbf24;
358
+ --warning-subtle: rgba(251, 191, 36, 0.1);
359
+ --info: #60a5fa;
360
+ --info-subtle: rgba(96, 165, 250, 0.1);
361
+ --overlay: rgba(0, 0, 0, 0.6);
362
+ --nav-bg: color-mix(in srgb, var(--bg-base) 86%, transparent);
363
+ --nav-link-color: var(--text-primary);
364
+ --nav-link-hover: var(--brand-light);
365
+
366
+ /* Open Props Color Scales (dark mode inversion) */
367
+ --indigo-0: #11184a;
368
+ --indigo-1: #1e266d;
369
+ --indigo-2: #2b3990;
370
+ --indigo-3: #364fc7;
371
+ --indigo-4: #3b5bdb;
372
+ --indigo-5: #4263eb;
373
+ --indigo-6: #4c6ef5;
374
+ --indigo-7: #5c7cfa;
375
+ --indigo-8: #748ffc;
376
+ --indigo-9: #91a7ff;
377
+ --indigo-10: #bac8ff;
378
+ --indigo-11: #dbe4ff;
379
+ --indigo-12: #edf2ff;
380
+ --green-0: #0f2d18;
381
+ --green-1: #1a4725;
382
+ --green-2: #226231;
383
+ --green-3: #2b8a3e;
384
+ --green-4: #2f9e44;
385
+ --green-5: #37b24d;
386
+ --green-6: #40c057;
387
+ --green-7: #51cf66;
388
+ --green-8: #69db7c;
389
+ --green-9: #8ce99a;
390
+ --green-10: #b2f2bb;
391
+ --green-11: #d3f9d8;
392
+ --green-12: #ebfbee;
393
+ --red-0: #540d0d;
394
+ --red-1: #821515;
395
+ --red-2: #a61e1e;
396
+ --red-3: #c92a2a;
397
+ --red-4: #e03131;
398
+ --red-5: #f03e3e;
399
+ --red-6: #fa5252;
400
+ --red-7: #ff6b6b;
401
+ --red-8: #ff8787;
402
+ --red-9: #ffa8a8;
403
+ --red-10: #ffc9c9;
404
+ --red-11: #ffe3e3;
405
+ --red-12: #fff5f5;
406
+ --orange-0: #5c1a00;
407
+ --orange-1: #872a00;
408
+ --orange-2: #b03a00;
409
+ --orange-3: #d9480f;
410
+ --orange-4: #e8590c;
411
+ --orange-5: #f76707;
412
+ --orange-6: #fd7e14;
413
+ --orange-7: #ff922b;
414
+ --orange-8: #ffa94d;
415
+ --orange-9: #ffc078;
416
+ --orange-10: #ffd8a8;
417
+ --orange-11: #ffe8cc;
418
+ --orange-12: #fff4e6;
419
+ --blue-0: #092848;
420
+ --blue-1: #0e3b69;
421
+ --blue-2: #134e8a;
422
+ --blue-3: #1864ab;
423
+ --blue-4: #1971c2;
424
+ --blue-5: #1c7ed6;
425
+ --blue-6: #228be6;
426
+ --blue-7: #339af0;
427
+ --blue-8: #4dabf7;
428
+ --blue-9: #74c0fc;
429
+ --blue-10: #a5d8ff;
430
+ --blue-11: #d0ebff;
431
+ --blue-12: #e7f5ff;
432
+ --teal-0: #033325;
433
+ --teal-1: #054d37;
434
+ --teal-2: #066649;
435
+ --teal-3: #087f5b;
436
+ --teal-4: #099268;
437
+ --teal-5: #0ca678;
438
+ --teal-6: #12b886;
439
+ --teal-7: #20c997;
440
+ --teal-8: #38d9a9;
441
+ --teal-9: #63e6be;
442
+ --blue-10: #96f2d7;
443
+ --teal-11: #c3fae8;
444
+ --teal-12: #e6fcf5;
445
+ --cyan-0: #053038;
446
+ --cyan-1: #074652;
447
+ --cyan-2: #095c6b;
448
+ --cyan-3: #0b7285;
449
+ --cyan-4: #0c8599;
450
+ --cyan-5: #1098ad;
451
+ --cyan-6: #15aabf;
452
+ --cyan-7: #22b8cf;
453
+ --cyan-8: #3bc9db;
454
+ --cyan-9: #66d9e8;
455
+ --cyan-10: #99e9f2;
456
+ --cyan-11: #c5f6fa;
457
+ --cyan-12: #e3fafc;
458
+ --violet-0: #130a22;
459
+ --violet-1: #21143b;
460
+ --violet-2: #2f1c52;
461
+ --violet-3: #422774;
462
+ --violet-4: #58399e;
463
+ --violet-5: #6d4cc4;
464
+ --violet-6: #8262db;
465
+ --violet-7: #9c7df2;
466
+ --violet-8: #b59cff;
467
+ --violet-9: #d0bdff;
468
+ --violet-10: #e6d8ff;
469
+ --violet-11: #f3eaff;
470
+ --violet-12: #fbf7ff;
471
+ }
472
+ `);
473
+ export const openPropsTokenSheet = sheet;
474
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpbGU6Ly8vaG9tZS9ydW5uZXIvd29yay9vcGVuZWxlbWVudC9vcGVuZWxlbWVudC9wYWNrYWdlcy91aS9zcmMvb3Blbi1wcm9wcy10b2tlbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAb3BlbmVsZW1lbnQvdWkgLSBPcGVuIFByb3BzIFRva2VuIFNoZWV0XG4gKlxuICogSW5saW5lZCBhdCBidWlsZCB0aW1lIHNvIGNvbnN1bWVycyBkbyBub3QgbmVlZCB0byBzaGlwIGEgc2VwYXJhdGUgQ1NTIGFzc2V0XG4gKiBhbmQgU1NSIGJ1bmRsZXMgZG8gbm90IGRlcGVuZCBvbiBhIGZpbGUtc3lzdGVtIHBhdGggbmV4dCB0byBpbXBvcnQubWV0YS51cmwuXG4gKi9cblxuaW1wb3J0IHsgU3R5bGVTaGVldCwgdHlwZSBTdHlsZVNoZWV0TGlrZSB9IGZyb20gJ0BvcGVuZWxlbWVudC9jb3JlL3N0eWxlLXNoZWV0JztcblxuY29uc3Qgc2hlZXQ6IFN0eWxlU2hlZXRMaWtlID0gbmV3IFN0eWxlU2hlZXQoKTtcbnNoZWV0LnJlcGxhY2VTeW5jKGAvKipcbiAqIEBvcGVuZWxlbWVudC91aSAtIE9wZW4gUHJvcHMgVG9rZW4gU2hlZXRcbiAqXG4gKiBTaGFyZWQgZGVzaWduIHRva2VucyAoc3BhY2luZywgZ3JheSBwYWxldHRlLCBib3JkZXIgcmFkaXVzLCB0eXBvZ3JhcGh5LFxuICogc2VtYW50aWMgYnJhbmQvdGV4dC9iZy9ib3JkZXIgdG9rZW5zKSB0aGF0IGFsbCBvcGVuRWxlbWVudCBjb21wb25lbnRzXG4gKiBjYW4gYWRvcHQgdmlhIFxcYHN0YXRpYyBzdHlsZXNcXGAuXG4gKlxuICogQ2xlYW5lZCBkZWFkIHRva2Vuczsgb25seSB1c2VkIHRva2VucyBzdXJ2aXZlLlxuICovXG5cbjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgY29udGFpbjogbGF5b3V0IHN0eWxlO1xuXG4gIC8qIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkFxuICAgICBTcGFjaW5nIHNjYWxlXG4gICAgIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAqL1xuICAtLXNpemUtMTogNHB4O1xuICAtLXNpemUtMjogOHB4O1xuICAtLXNpemUtMzogMTJweDtcbiAgLS1zaXplLTQ6IDE2cHg7XG4gIC0tc2l6ZS01OiAyMHB4O1xuICAtLXNpemUtNjogMjRweDtcbiAgLS1zaXplLTc6IDI4cHg7XG4gIC0tc2l6ZS04OiAzMnB4O1xuICAtLXNpemUtOTogMzZweDtcbiAgLS1zaXplLTEwOiA0MHB4O1xuICAtLXNpemUtMTI6IDQ4cHg7XG4gIC0tc2l6ZS0xNjogNjRweDtcblxuICAvKiDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZBcbiAgICAgR3JheSBwYWxldHRlIChsaWdodCBtb2RlIGJhc2UpXG4gICAgIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAqL1xuICAtLWdyYXktMDogI2Y4ZjlmYTtcbiAgLS1ncmF5LTE6ICNmMWYzZjU7XG4gIC0tZ3JheS0yOiAjZTllY2VmO1xuICAtLWdyYXktMzogI2RlZTJlNjtcbiAgLS1ncmF5LTQ6ICNjZWQ0ZGE7XG4gIC0tZ3JheS01OiAjYWRiNWJkO1xuICAtLWdyYXktNjogIzg2OGU5NjtcbiAgLS1ncmF5LTc6ICM0OTUwNTc7XG4gIC0tZ3JheS04OiAjMzQzYTQwO1xuICAtLWdyYXktOTogIzIxMjUyOTtcbiAgLS1ncmF5LTEwOiAjMTYxOTFkO1xuICAtLWdyYXktMTE6ICMwZDBmMTI7XG4gIC0tZ3JheS0xMjogIzAzMDUwNztcblxuICAvKiDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZBcbiAgICAgQm9yZGVyIHJhZGl1c1xuICAgICDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgKi9cbiAgLS1yYWRpdXMtMTogNnB4O1xuICAtLXJhZGl1cy0yOiA4cHg7XG4gIC0tcmFkaXVzLTM6IDEycHg7XG4gIC0tcmFkaXVzLTQ6IDIwcHg7XG4gIC0tcmFkaXVzLXJvdW5kOiA5OTk5cHg7XG5cbiAgLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQXG4gICAgIEJvcmRlciBzaXplXG4gICAgIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAqL1xuICAtLWJvcmRlci1zaXplLTE6IDFweDtcbiAgLS1ib3JkZXItc2l6ZS0yOiAycHg7XG5cbiAgLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQXG4gICAgIFNoYWRvd3NcbiAgICAg4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQICovXG4gIC0tc2hhZG93LTE6IDAgMXB4IDNweCAwIHJnYigwIDAgMCAvIDAuMSksIDAgMXB4IDJweCAtMXB4IHJnYigwIDAgMCAvIDAuMSk7XG5cbiAgLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQXG4gICAgIFR5cG9ncmFwaHlcbiAgICAg4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQICovXG4gIC0tZm9udC1zYW5zOiAnSW5zdHJ1bWVudCBTYW5zJywgSW50ZXIsIEFyaWFsLCBIZWx2ZXRpY2EsIHN5c3RlbS11aSwgc2Fucy1zZXJpZjtcbiAgLS1mb250LW1vbm86ICdTRiBNb25vJywgJ0ZpcmEgQ29kZScsICdGaXJhIE1vbm8nLCBtb25vc3BhY2U7XG4gIC0tZm9udC1zaXplLTAwOiAwLjc1cmVtO1xuICAtLWZvbnQtc2l6ZS0wOiAwLjg3NXJlbTtcbiAgLS1mb250LXNpemUtMTogMXJlbTtcbiAgLS1mb250LXNpemUtMjogMS4yNXJlbTtcbiAgLS1mb250LXNpemUtMzogMS41cmVtO1xuICAtLWZvbnQtc2l6ZS00OiAycmVtO1xuICAtLWZvbnQtc2l6ZS01OiAyLjVyZW07XG4gIC0tZm9udC1zaXplLTY6IDMuMTI1cmVtO1xuICAtLWZvbnQtc2l6ZS03OiA0cmVtO1xuICAtLWZvbnQtc2l6ZS04OiA1LjVyZW07XG4gIC0tZm9udC13ZWlnaHQtNDogNDAwO1xuICAtLWZvbnQtd2VpZ2h0LTU6IDUwMDtcbiAgLS1mb250LXdlaWdodC02OiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtNzogNzAwO1xuICAtLWZvbnQtd2VpZ2h0LTg6IDgwMDtcbiAgLS1mb250LXdlaWdodC05OiA5MDA7XG4gIC0tZm9udC1sZXR0ZXJzcGFjaW5nLTA6IDA7XG4gIC0tZm9udC1sZXR0ZXJzcGFjaW5nLTE6IDA7XG4gIC0tZm9udC1sZXR0ZXJzcGFjaW5nLTI6IDA7XG4gIC0tZm9udC1sZXR0ZXJzcGFjaW5nLTM6IDA7XG4gIC0tZm9udC1sZXR0ZXJzcGFjaW5nLTQ6IDAuMDRlbTtcbiAgLS1mb250LWxldHRlcnNwYWNpbmctNTogMC4wOGVtO1xuICAtLWZvbnQtbGluZWhlaWdodC0xOiAwLjk1O1xuICAtLWZvbnQtbGluZWhlaWdodC0zOiAxLjU7XG4gIC0tZm9udC1saW5laGVpZ2h0LTQ6IDEuNzU7XG5cbiAgLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQXG4gICAgIEFuaW1hdGlvbiBlYXNpbmdcbiAgICAg4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQICovXG4gIC0tZWFzZS0xOiBjdWJpYy1iZXppZXIoMC4yNSwgMCwgMC41LCAxKTtcbiAgLS1lYXNlLTI6IGN1YmljLWJlemllcigwLjQ1LCAwLCAwLjI1LCAxKTtcbiAgLS1lYXNlLTM6IGN1YmljLWJlemllcigwLjUsIDAsIDAsIDEpO1xuICAtLWR1cmF0aW9uLTI6IDIwMG1zO1xuXG4gIC8qIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkFxuICAgICBCcmFuZCB0b2tlbnNcbiAgICAg4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQICovXG4gIC0tYnJhbmQ6IHZhcigtLXZpb2xldC02KTtcbiAgLS1icmFuZC1ob3ZlcjogdmFyKC0tdmlvbGV0LTcpO1xuICAtLWJyYW5kLWxpZ2h0OiB2YXIoLS12aW9sZXQtNCk7XG4gIC0tYnJhbmQtcGFsZTogdmFyKC0tdmlvbGV0LTEpO1xuICAtLWJyYW5kLWRlZXA6IHZhcigtLXZpb2xldC0xMSk7XG4gIC0tYnJhbmQtc3VidGxlOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYnJhbmQpIDEyJSwgdHJhbnNwYXJlbnQpO1xuICAtLWJyYW5kLWdsb3c6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1icmFuZCkgMjQlLCB0cmFuc3BhcmVudCk7XG4gIC0tb24tYnJhbmQ6IHZhcigtLWdyYXktMCk7XG4gIC0tc2l0ZS1jb250YWluZXI6IDExMjBweDtcbiAgLS1zaXRlLWNvbnRhaW5lci13aWRlOiAxMjQwcHg7XG4gIC0tc2l0ZS1jb250YWluZXItcmVhZGluZzogNzYwcHg7XG4gIC0tc2l0ZS1zZWN0aW9uLWJsb2NrOiB2YXIoLS1zaXplLTE2KTtcbiAgLS1zaXRlLXNlY3Rpb24tZ2FwOiB2YXIoLS1zaXplLTgpO1xuXG4gIC8qIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkFxuICAgICBDb21wb25lbnQgU2VtYW50aWMgVG9rZW5zIChmb3IgZGFpc3lVSSBjbGFzc2VzKVxuICAgICDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgKi9cbiAgLS1idG4tcGFkZGluZy14OiB2YXIoLS1zaXplLTQpO1xuICAtLWJ0bi1wYWRkaW5nLXk6IHZhcigtLXNpemUtMik7XG4gIC0tYnRuLXJhZGl1czogdmFyKC0tcmFkaXVzLXJvdW5kKTtcbiAgLS1idG4tZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMCk7XG4gIC0tYnRuLWZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC03KTtcbiAgLS1idG4tdGV4dC1jYXNlOiBub25lO1xuICAtLWNhcmQtcGFkZGluZzogdmFyKC0tc2l6ZS02KTtcbiAgLS1jYXJkLXJhZGl1czogdmFyKC0tcmFkaXVzLTEpO1xuICAtLWJhZGdlLXBhZGRpbmcteDogdmFyKC0tc2l6ZS0yKTtcbiAgLS1iYWRnZS1wYWRkaW5nLXk6IDJweDtcbiAgLS1iYWRnZS1yYWRpdXM6IHZhcigtLXJhZGl1cy1yb3VuZCk7XG4gIC0tYmFkZ2UtZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMDApO1xuICAtLWFsZXJ0LXBhZGRpbmc6IHZhcigtLXNpemUtNCk7XG4gIC0tYWxlcnQtcmFkaXVzOiB2YXIoLS1yYWRpdXMtMik7XG4gIC0taW5wdXQtcGFkZGluZy14OiB2YXIoLS1zaXplLTMpO1xuICAtLWlucHV0LXBhZGRpbmcteTogdmFyKC0tc2l6ZS0yKTtcbiAgLS1pbnB1dC1yYWRpdXM6IHZhcigtLXJhZGl1cy0xKTtcbiAgLS1pbnB1dC1mb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0wKTtcbiAgLS1pbnB1dC1ib3JkZXItY29sb3I6IHZhcigtLWJvcmRlcik7XG4gIC0tZGl2aWRlci1tYXJnaW46IHZhcigtLXNpemUtNCkgMDtcbiAgLS1kaXZpZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXIpO1xuICAtLXRvb2x0aXAtYmc6IHZhcigtLWdyYXktOSk7XG4gIC0tdG9vbHRpcC1jb2xvcjogdmFyKC0tZ3JheS0wKTtcbiAgLS10b29sdGlwLXJhZGl1czogdmFyKC0tcmFkaXVzLTEpO1xuICAtLXRvb2x0aXAtcGFkZGluZzogdmFyKC0tc2l6ZS0xKSB2YXIoLS1zaXplLTIpO1xuICAtLW1vZGFsLWJnOiB2YXIoLS1iZy1lbGV2YXRlZCk7XG4gIC0tbW9kYWwtcmFkaXVzOiB2YXIoLS1yYWRpdXMtMyk7XG4gIC0tbW9kYWwtcGFkZGluZzogdmFyKC0tc2l6ZS02KTtcbiAgLS1tZW51LXBhZGRpbmc6IHZhcigtLXNpemUtMik7XG4gIC0tbWVudS1yYWRpdXM6IHZhcigtLXJhZGl1cy0yKTtcbiAgLS1tZW51LWl0ZW0tcGFkZGluZzogdmFyKC0tc2l6ZS0yKSB2YXIoLS1zaXplLTQpO1xuICAtLWRyb3Bkb3duLWJnOiB2YXIoLS1iZy1lbGV2YXRlZCk7XG4gIC0tZHJvcGRvd24tcmFkaXVzOiB2YXIoLS1yYWRpdXMtMik7XG4gIC0tdGFiLXBhZGRpbmc6IHZhcigtLXNpemUtMikgdmFyKC0tc2l6ZS00KTtcbiAgLS10YWItcmFkaXVzOiB2YXIoLS1yYWRpdXMtMSk7XG5cbiAgLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQXG4gICAgIFVJIFNlbWFudGljIFRva2VucyAobGlnaHQgZGVmYXVsdHMpXG4gICAgIERhcmsgbW9kZSBvdmVycmlkZXMgdmlhIDpyb290W2RhdGEtdGhlbWU9XCJkYXJrXCJdIGluIFNTR1xuICAgICDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgKi9cbiAgLS10ZXh0LXByaW1hcnk6IHZhcigtLWdyYXktOSk7XG4gIC0tdGV4dC1zZWNvbmRhcnk6IHZhcigtLWdyYXktNik7XG4gIC0tdGV4dC1tdXRlZDogdmFyKC0tZ3JheS01KTtcbiAgLS1iZy1iYXNlOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tdmlvbGV0LTApIDQyJSwgdmFyKC0tZ3JheS0wKSk7XG4gIC0tYmctc3VyZmFjZTogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLXZpb2xldC0wKSAzMiUsIHZhcigtLWdyYXktMSkpO1xuICAtLWJnLWNhcmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS12aW9sZXQtMCkgMTglLCB2YXIoLS1ncmF5LTApKTtcbiAgLS1iZy1lbGV2YXRlZDogI2ZmZmZmZjtcbiAgLS1iZy1ob3ZlcjogdmFyKC0tZ3JheS0yKTtcbiAgLS1iZy1tdXRlZDogdmFyKC0tZ3JheS0xKTtcbiAgLS1iZy1jb2RlOiB2YXIoLS1ncmF5LTExKTtcbiAgLS1jb2RlLWJvcmRlcjogdmFyKC0tZ3JheS04KTtcbiAgLS1jb2RlLXRleHQ6IHZhcigtLWdyYXktMik7XG4gIC0tYm9yZGVyOiB2YXIoLS1ncmF5LTMpO1xuICAtLWJvcmRlci1ob3ZlcjogdmFyKC0tZ3JheS00KTtcbiAgLS1lcnJvcjogI2RjMzU0NTtcbiAgLS1lcnJvci1zdWJ0bGU6IHJnYmEoMjIwLCA1MywgNjksIDAuMSk7XG4gIC0tc3VjY2VzczogIzE2YTM0YTtcbiAgLS1zdWNjZXNzLXN1YnRsZTogcmdiYSgyMiwgMTYzLCA3NCwgMC4xKTtcbiAgLS13YXJuaW5nOiAjZDk3NzA2O1xuICAtLXdhcm5pbmctc3VidGxlOiByZ2JhKDIxNywgMTE5LCA2LCAwLjEpO1xuICAtLWluZm86ICMyNTYzZWI7XG4gIC0taW5mby1zdWJ0bGU6IHJnYmEoMzcsIDk5LCAyMzUsIDAuMSk7XG4gIC0tb3ZlcmxheTogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAtLW5hdi1iZzogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJnLWJhc2UpIDg2JSwgdHJhbnNwYXJlbnQpO1xuICAtLW5hdi1oZWlnaHQ6IDcycHg7XG4gIC0tbmF2LWxpbmstY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG4gIC0tbmF2LWxpbmstaG92ZXI6IHZhcigtLWJyYW5kKTtcbiAgLS1uYXYtbGluay1zaXplOiB2YXIoLS1mb250LXNpemUtMCk7XG5cbiAgLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQXG4gICAgIE9wZW4gUHJvcHMgQ29sb3IgU2NhbGVzIChsaWdodCBtb2RlKVxuICAgICBodHRwczovL29wZW4tcHJvcHMuc3R5bGVcbiAgICAg4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQICovXG4gIC0taW5kaWdvLTA6ICNlZGYyZmY7XG4gIC0taW5kaWdvLTE6ICNkYmU0ZmY7XG4gIC0taW5kaWdvLTI6ICNiYWM4ZmY7XG4gIC0taW5kaWdvLTM6ICM5MWE3ZmY7XG4gIC0taW5kaWdvLTQ6ICM3NDhmZmM7XG4gIC0taW5kaWdvLTU6ICM1YzdjZmE7XG4gIC0taW5kaWdvLTY6ICM0YzZlZjU7XG4gIC0taW5kaWdvLTc6ICM0MjYzZWI7XG4gIC0taW5kaWdvLTg6ICMzYjViZGI7XG4gIC0taW5kaWdvLTk6ICMzNjRmYzc7XG4gIC0taW5kaWdvLTEwOiAjMmIzOTkwO1xuICAtLWluZGlnby0xMTogIzFlMjY2ZDtcbiAgLS1pbmRpZ28tMTI6ICMxMTE4NGE7XG4gIC0tZ3JlZW4tMDogI2ViZmJlZTtcbiAgLS1ncmVlbi0xOiAjZDNmOWQ4O1xuICAtLWdyZWVuLTI6ICNiMmYyYmI7XG4gIC0tZ3JlZW4tMzogIzhjZTk5YTtcbiAgLS1ncmVlbi00OiAjNjlkYjdjO1xuICAtLWdyZWVuLTU6ICM1MWNmNjY7XG4gIC0tZ3JlZW4tNjogIzQwYzA1NztcbiAgLS1ncmVlbi03OiAjMzdiMjRkO1xuICAtLWdyZWVuLTg6ICMyZjllNDQ7XG4gIC0tZ3JlZW4tOTogIzJiOGEzZTtcbiAgLS1ncmVlbi0xMDogIzIyNjIzMTtcbiAgLS1ncmVlbi0xMTogIzFhNDcyNTtcbiAgLS1ncmVlbi0xMjogIzBmMmQxODtcbiAgLS1yZWQtMDogI2ZmZjVmNTtcbiAgLS1yZWQtMTogI2ZmZTNlMztcbiAgLS1yZWQtMjogI2ZmYzljOTtcbiAgLS1yZWQtMzogI2ZmYThhODtcbiAgLS1yZWQtNDogI2ZmODc4NztcbiAgLS1yZWQtNTogI2ZmNmI2YjtcbiAgLS1yZWQtNjogI2ZhNTI1MjtcbiAgLS1yZWQtNzogI2YwM2UzZTtcbiAgLS1yZWQtODogI2UwMzEzMTtcbiAgLS1yZWQtOTogI2M5MmEyYTtcbiAgLS1yZWQtMTA6ICNhNjFlMWU7XG4gIC0tcmVkLTExOiAjODIxNTE1O1xuICAtLXJlZC0xMjogIzU0MGQwZDtcbiAgLS1vcmFuZ2UtMDogI2ZmZjRlNjtcbiAgLS1vcmFuZ2UtMTogI2ZmZThjYztcbiAgLS1vcmFuZ2UtMjogI2ZmZDhhODtcbiAgLS1vcmFuZ2UtMzogI2ZmYzA3ODtcbiAgLS1vcmFuZ2UtNDogI2ZmYTk0ZDtcbiAgLS1vcmFuZ2UtNTogI2ZmOTIyYjtcbiAgLS1vcmFuZ2UtNjogI2ZkN2UxNDtcbiAgLS1vcmFuZ2UtNzogI2Y3NjcwNztcbiAgLS1vcmFuZ2UtODogI2U4NTkwYztcbiAgLS1vcmFuZ2UtOTogI2Q5NDgwZjtcbiAgLS1vcmFuZ2UtMTA6ICNiMDNhMDA7XG4gIC0tb3JhbmdlLTExOiAjODcyYTAwO1xuICAtLW9yYW5nZS0xMjogIzVjMWEwMDtcbiAgLS1ibHVlLTA6ICNlN2Y1ZmY7XG4gIC0tYmx1ZS0xOiAjZDBlYmZmO1xuICAtLWJsdWUtMjogI2E1ZDhmZjtcbiAgLS1ibHVlLTM6ICM3NGMwZmM7XG4gIC0tYmx1ZS00OiAjNGRhYmY3O1xuICAtLWJsdWUtNTogIzMzOWFmMDtcbiAgLS1ibHVlLTY6ICMyMjhiZTY7XG4gIC0tYmx1ZS03OiAjMWM3ZWQ2O1xuICAtLWJsdWUtODogIzE5NzFjMjtcbiAgLS1ibHVlLTk6ICMxODY0YWI7XG4gIC0tYmx1ZS0xMDogIzEzNGU4YTtcbiAgLS1ibHVlLTExOiAjMGUzYjY5O1xuICAtLWJsdWUtMTI6ICMwOTI4NDg7XG4gIC0tdGVhbC0wOiAjZTZmY2Y1O1xuICAtLXRlYWwtMTogI2MzZmFlODtcbiAgLS10ZWFsLTI6ICM5NmYyZDc7XG4gIC0tdGVhbC0zOiAjNjNlNmJlO1xuICAtLXRlYWwtNDogIzM4ZDlhOTtcbiAgLS10ZWFsLTU6ICMyMGM5OTc7XG4gIC0tdGVhbC02OiAjMTJiODg2O1xuICAtLXRlYWwtNzogIzBjYTY3ODtcbiAgLS10ZWFsLTg6ICMwOTkyNjg7XG4gIC0tdGVhbC05OiAjMDg3ZjViO1xuICAtLXRlYWwtMTA6ICMwNjY2NDk7XG4gIC0tdGVhbC0xMTogIzA1NGQzNztcbiAgLS10ZWFsLTEyOiAjMDMzMzI1O1xuICAtLWN5YW4tMDogI2UzZmFmYztcbiAgLS1jeWFuLTE6ICNjNWY2ZmE7XG4gIC0tY3lhbi0yOiAjOTllOWYyO1xuICAtLWN5YW4tMzogIzY2ZDllODtcbiAgLS1jeWFuLTQ6ICMzYmM5ZGI7XG4gIC0tY3lhbi01OiAjMjJiOGNmO1xuICAtLWN5YW4tNjogIzE1YWFiZjtcbiAgLS1jeWFuLTc6ICMxMDk4YWQ7XG4gIC0tY3lhbi04OiAjMGM4NTk5O1xuICAtLWN5YW4tOTogIzBiNzI4NTtcbiAgLS1jeWFuLTEwOiAjMDk1YzZiO1xuICAtLWN5YW4tMTE6ICMwNzQ2NTI7XG4gIC0tY3lhbi0xMjogIzA1MzAzODtcbiAgLS12aW9sZXQtMDogI2ZiZjdmZjtcbiAgLS12aW9sZXQtMTogI2YzZWFmZjtcbiAgLS12aW9sZXQtMjogI2U2ZDhmZjtcbiAgLS12aW9sZXQtMzogI2QwYmRmZjtcbiAgLS12aW9sZXQtNDogI2I1OWNmZjtcbiAgLS12aW9sZXQtNTogIzljN2RmMjtcbiAgLS12aW9sZXQtNjogIzgyNjJkYjtcbiAgLS12aW9sZXQtNzogIzZkNGNjNDtcbiAgLS12aW9sZXQtODogIzU4Mzk5ZTtcbiAgLS12aW9sZXQtOTogIzQyMjc3NDtcbiAgLS12aW9sZXQtMTA6ICMyZjFjNTI7XG4gIC0tdmlvbGV0LTExOiAjMjExNDNiO1xuICAtLXZpb2xldC0xMjogIzEzMGEyMjtcbn1cblxuLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQXG4gICBEYXJrIE1vZGUg4oCUIGNhc2NhZGVzIGZyb20gOnJvb3RbZGF0YS10aGVtZT1cImRhcmtcIl1cbiAgIEFsbCBzaGFkb3cgRE9NcyBpbmhlcml0IHRoZXNlIG92ZXJyaWRlc1xuICAg4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQICovXG46aG9zdChbZGF0YS10aGVtZT0nZGFyayddKSxcbjpob3N0LWNvbnRleHQoW2RhdGEtdGhlbWU9J2RhcmsnXSkge1xuICAtLWdyYXktMDogIzAzMDUwNztcbiAgLS1ncmF5LTE6ICMwZDBmMTI7XG4gIC0tZ3JheS0yOiAjMTYxOTFkO1xuICAtLWdyYXktMzogIzIxMjUyOTtcbiAgLS1ncmF5LTQ6ICMzNDNhNDA7XG4gIC0tZ3JheS01OiAjNDk1MDU3O1xuICAtLWdyYXktNjogIzg2OGU5NjtcbiAgLS1ncmF5LTc6ICNhZGI1YmQ7XG4gIC0tZ3JheS04OiAjY2VkNGRhO1xuICAtLWdyYXktOTogI2RlZTJlNjtcbiAgLS1ncmF5LTEwOiAjZTllY2VmO1xuICAtLWdyYXktMTE6ICNmMWYzZjU7XG4gIC0tZ3JheS0xMjogI2Y4ZjlmYTtcbiAgLS1icmFuZDogdmFyKC0tdmlvbGV0LTYpO1xuICAtLWJyYW5kLWhvdmVyOiB2YXIoLS12aW9sZXQtNyk7XG4gIC0tYnJhbmQtbGlnaHQ6IHZhcigtLXZpb2xldC00KTtcbiAgLS1icmFuZC1kZWVwOiB2YXIoLS12aW9sZXQtMTIpO1xuICAtLWJyYW5kLXN1YnRsZTogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJyYW5kKSAxNiUsIHRyYW5zcGFyZW50KTtcbiAgLS1icmFuZC1nbG93OiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYnJhbmQpIDIyJSwgdHJhbnNwYXJlbnQpO1xuICAtLW9uLWJyYW5kOiB2YXIoLS1ncmF5LTEyKTtcbiAgLS10ZXh0LXByaW1hcnk6IHZhcigtLWdyYXktMTApO1xuICAtLXRleHQtc2Vjb25kYXJ5OiB2YXIoLS1ncmF5LTcpO1xuICAtLXRleHQtbXV0ZWQ6IHZhcigtLWdyYXktNik7XG4gIC0tYmctYmFzZTogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLXZpb2xldC0wKSAxOCUsIHZhcigtLWdyYXktMCkpO1xuICAtLWJnLXN1cmZhY2U6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS12aW9sZXQtMSkgMTQlLCB2YXIoLS1ncmF5LTEpKTtcbiAgLS1iZy1jYXJkOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tdmlvbGV0LTIpIDEwJSwgdmFyKC0tZ3JheS0yKSk7XG4gIC0tYmctZWxldmF0ZWQ6IHZhcigtLWdyYXktMSk7XG4gIC0tYmctaG92ZXI6IHZhcigtLWdyYXktMyk7XG4gIC0tYmctY29kZTogdmFyKC0tZ3JheS0xKTtcbiAgLS1jb2RlLWJvcmRlcjogdmFyKC0tZ3JheS00KTtcbiAgLS1jb2RlLXRleHQ6IHZhcigtLWdyYXktMTApO1xuICAtLWJvcmRlcjogdmFyKC0tZ3JheS0zKTtcbiAgLS1ib3JkZXItaG92ZXI6IHZhcigtLWdyYXktNCk7XG4gIC0tZXJyb3I6ICNmODcxNzE7XG4gIC0tZXJyb3Itc3VidGxlOiByZ2JhKDI0OCwgMTEzLCAxMTMsIDAuMTUpO1xuICAtLXN1Y2Nlc3M6ICM0YWRlODA7XG4gIC0tc3VjY2Vzcy1zdWJ0bGU6IHJnYmEoNzQsIDIyMiwgMTI4LCAwLjEpO1xuICAtLXdhcm5pbmc6ICNmYmJmMjQ7XG4gIC0td2FybmluZy1zdWJ0bGU6IHJnYmEoMjUxLCAxOTEsIDM2LCAwLjEpO1xuICAtLWluZm86ICM2MGE1ZmE7XG4gIC0taW5mby1zdWJ0bGU6IHJnYmEoOTYsIDE2NSwgMjUwLCAwLjEpO1xuICAtLW92ZXJsYXk6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgLS1uYXYtYmc6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1iZy1iYXNlKSA4NiUsIHRyYW5zcGFyZW50KTtcbiAgLS1uYXYtbGluay1jb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcbiAgLS1uYXYtbGluay1ob3ZlcjogdmFyKC0tYnJhbmQtbGlnaHQpO1xuXG4gIC8qIE9wZW4gUHJvcHMgQ29sb3IgU2NhbGVzIChkYXJrIG1vZGUgaW52ZXJzaW9uKSAqL1xuICAtLWluZGlnby0wOiAjMTExODRhO1xuICAtLWluZGlnby0xOiAjMWUyNjZkO1xuICAtLWluZGlnby0yOiAjMmIzOTkwO1xuICAtLWluZGlnby0zOiAjMzY0ZmM3O1xuICAtLWluZGlnby00OiAjM2I1YmRiO1xuICAtLWluZGlnby01OiAjNDI2M2ViO1xuICAtLWluZGlnby02OiAjNGM2ZWY1O1xuICAtLWluZGlnby03OiAjNWM3Y2ZhO1xuICAtLWluZGlnby04OiAjNzQ4ZmZjO1xuICAtLWluZGlnby05OiAjOTFhN2ZmO1xuICAtLWluZGlnby0xMDogI2JhYzhmZjtcbiAgLS1pbmRpZ28tMTE6ICNkYmU0ZmY7XG4gIC0taW5kaWdvLTEyOiAjZWRmMmZmO1xuICAtLWdyZWVuLTA6ICMwZjJkMTg7XG4gIC0tZ3JlZW4tMTogIzFhNDcyNTtcbiAgLS1ncmVlbi0yOiAjMjI2MjMxO1xuICAtLWdyZWVuLTM6ICMyYjhhM2U7XG4gIC0tZ3JlZW4tNDogIzJmOWU0NDtcbiAgLS1ncmVlbi01OiAjMzdiMjRkO1xuICAtLWdyZWVuLTY6ICM0MGMwNTc7XG4gIC0tZ3JlZW4tNzogIzUxY2Y2NjtcbiAgLS1ncmVlbi04OiAjNjlkYjdjO1xuICAtLWdyZWVuLTk6ICM4Y2U5OWE7XG4gIC0tZ3JlZW4tMTA6ICNiMmYyYmI7XG4gIC0tZ3JlZW4tMTE6ICNkM2Y5ZDg7XG4gIC0tZ3JlZW4tMTI6ICNlYmZiZWU7XG4gIC0tcmVkLTA6ICM1NDBkMGQ7XG4gIC0tcmVkLTE6ICM4MjE1MTU7XG4gIC0tcmVkLTI6ICNhNjFlMWU7XG4gIC0tcmVkLTM6ICNjOTJhMmE7XG4gIC0tcmVkLTQ6ICNlMDMxMzE7XG4gIC0tcmVkLTU6ICNmMDNlM2U7XG4gIC0tcmVkLTY6ICNmYTUyNTI7XG4gIC0tcmVkLTc6ICNmZjZiNmI7XG4gIC0tcmVkLTg6ICNmZjg3ODc7XG4gIC0tcmVkLTk6ICNmZmE4YTg7XG4gIC0tcmVkLTEwOiAjZmZjOWM5O1xuICAtLXJlZC0xMTogI2ZmZTNlMztcbiAgLS1yZWQtMTI6ICNmZmY1ZjU7XG4gIC0tb3JhbmdlLTA6ICM1YzFhMDA7XG4gIC0tb3JhbmdlLTE6ICM4NzJhMDA7XG4gIC0tb3JhbmdlLTI6ICNiMDNhMDA7XG4gIC0tb3JhbmdlLTM6ICNkOTQ4MGY7XG4gIC0tb3JhbmdlLTQ6ICNlODU5MGM7XG4gIC0tb3JhbmdlLTU6ICNmNzY3MDc7XG4gIC0tb3JhbmdlLTY6ICNmZDdlMTQ7XG4gIC0tb3JhbmdlLTc6ICNmZjkyMmI7XG4gIC0tb3JhbmdlLTg6ICNmZmE5NGQ7XG4gIC0tb3JhbmdlLTk6ICNmZmMwNzg7XG4gIC0tb3JhbmdlLTEwOiAjZmZkOGE4O1xuICAtLW9yYW5nZS0xMTogI2ZmZThjYztcbiAgLS1vcmFuZ2UtMTI6ICNmZmY0ZTY7XG4gIC0tYmx1ZS0wOiAjMDkyODQ4O1xuICAtLWJsdWUtMTogIzBlM2I2OTtcbiAgLS1ibHVlLTI6ICMxMzRlOGE7XG4gIC0tYmx1ZS0zOiAjMTg2NGFiO1xuICAtLWJsdWUtNDogIzE5NzFjMjtcbiAgLS1ibHVlLTU6ICMxYzdlZDY7XG4gIC0tYmx1ZS02OiAjMjI4YmU2O1xuICAtLWJsdWUtNzogIzMzOWFmMDtcbiAgLS1ibHVlLTg6ICM0ZGFiZjc7XG4gIC0tYmx1ZS05OiAjNzRjMGZjO1xuICAtLWJsdWUtMTA6ICNhNWQ4ZmY7XG4gIC0tYmx1ZS0xMTogI2QwZWJmZjtcbiAgLS1ibHVlLTEyOiAjZTdmNWZmO1xuICAtLXRlYWwtMDogIzAzMzMyNTtcbiAgLS10ZWFsLTE6ICMwNTRkMzc7XG4gIC0tdGVhbC0yOiAjMDY2NjQ5O1xuICAtLXRlYWwtMzogIzA4N2Y1YjtcbiAgLS10ZWFsLTQ6ICMwOTkyNjg7XG4gIC0tdGVhbC01OiAjMGNhNjc4O1xuICAtLXRlYWwtNjogIzEyYjg4NjtcbiAgLS10ZWFsLTc6ICMyMGM5OTc7XG4gIC0tdGVhbC04OiAjMzhkOWE5O1xuICAtLXRlYWwtOTogIzYzZTZiZTtcbiAgLS1ibHVlLTEwOiAjOTZmMmQ3O1xuICAtLXRlYWwtMTE6ICNjM2ZhZTg7XG4gIC0tdGVhbC0xMjogI2U2ZmNmNTtcbiAgLS1jeWFuLTA6ICMwNTMwMzg7XG4gIC0tY3lhbi0xOiAjMDc0NjUyO1xuICAtLWN5YW4tMjogIzA5NWM2YjtcbiAgLS1jeWFuLTM6ICMwYjcyODU7XG4gIC0tY3lhbi00OiAjMGM4NTk5O1xuICAtLWN5YW4tNTogIzEwOThhZDtcbiAgLS1jeWFuLTY6ICMxNWFhYmY7XG4gIC0tY3lhbi03OiAjMjJiOGNmO1xuICAtLWN5YW4tODogIzNiYzlkYjtcbiAgLS1jeWFuLTk6ICM2NmQ5ZTg7XG4gIC0tY3lhbi0xMDogIzk5ZTlmMjtcbiAgLS1jeWFuLTExOiAjYzVmNmZhO1xuICAtLWN5YW4tMTI6ICNlM2ZhZmM7XG4gIC0tdmlvbGV0LTA6ICMxMzBhMjI7XG4gIC0tdmlvbGV0LTE6ICMyMTE0M2I7XG4gIC0tdmlvbGV0LTI6ICMyZjFjNTI7XG4gIC0tdmlvbGV0LTM6ICM0MjI3NzQ7XG4gIC0tdmlvbGV0LTQ6ICM1ODM5OWU7XG4gIC0tdmlvbGV0LTU6ICM2ZDRjYzQ7XG4gIC0tdmlvbGV0LTY6ICM4MjYyZGI7XG4gIC0tdmlvbGV0LTc6ICM5YzdkZjI7XG4gIC0tdmlvbGV0LTg6ICNiNTljZmY7XG4gIC0tdmlvbGV0LTk6ICNkMGJkZmY7XG4gIC0tdmlvbGV0LTEwOiAjZTZkOGZmO1xuICAtLXZpb2xldC0xMTogI2YzZWFmZjtcbiAgLS12aW9sZXQtMTI6ICNmYmY3ZmY7XG59XG5gKTtcblxuZXhwb3J0IGNvbnN0IG9wZW5Qcm9wc1Rva2VuU2hlZXQ6IFN0eWxlU2hlZXRMaWtlID0gc2hlZXQ7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0NBS0MsR0FFRCxTQUFTLFVBQVUsUUFBNkIsZ0NBQWdDO0FBRWhGLE1BQU0sUUFBd0IsSUFBSTtBQUNsQyxNQUFNLFdBQVcsQ0FBQyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWdkbkIsQ0FBQztBQUVELE9BQU8sTUFBTSxzQkFBc0MsTUFBTSJ9
@@ -0,0 +1,20 @@
1
+ /** @jsxImportSource @openelement/core */ /**
2
+ * @openelement/ui - open-standards-visual
3
+ *
4
+ * Product-art diagrams for the openElement standards lab website.
5
+ */ import { OpenElement } from '@openelement/element';
6
+ import { type StyleSheetLike } from '@openelement/core/style-sheet';
7
+ export declare const tagName: 'open-standards-visual';
8
+ declare const sheet: StyleSheetLike;
9
+ export declare class OpenStandardsVisual extends OpenElement {
10
+ static override styles: [];
11
+ static override observedAttributes: [string, string, string];
12
+ override render(): ReturnType<typeof OpenElement.prototype.render>;
13
+ private _getStr: any;
14
+ private _visualClass: any;
15
+ private _hero: any;
16
+ private _routes: any;
17
+ private _packages: any;
18
+ private _tokens: any;
19
+ }
20
+ export default OpenStandardsVisual;