rikiki-deck 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +183 -0
- package/dist/deck-badge.d.ts +13 -0
- package/dist/deck-badge.d.ts.map +1 -0
- package/dist/deck-badge.js +1 -0
- package/dist/deck-callout.d.ts +13 -0
- package/dist/deck-callout.d.ts.map +1 -0
- package/dist/deck-callout.js +1 -0
- package/dist/deck-card.d.ts +15 -0
- package/dist/deck-card.d.ts.map +1 -0
- package/dist/deck-card.js +1 -0
- package/dist/deck-code.d.ts +22 -0
- package/dist/deck-code.d.ts.map +1 -0
- package/dist/deck-code.js +2 -0
- package/dist/deck-cover.d.ts +23 -0
- package/dist/deck-cover.d.ts.map +1 -0
- package/dist/deck-cover.js +10 -0
- package/dist/deck-feature-cards.d.ts +12 -0
- package/dist/deck-feature-cards.d.ts.map +1 -0
- package/dist/deck-feature-cards.js +9 -0
- package/dist/deck-feature.d.ts +12 -0
- package/dist/deck-feature.d.ts.map +1 -0
- package/dist/deck-feature.js +5 -0
- package/dist/deck-grid.d.ts +18 -0
- package/dist/deck-grid.d.ts.map +1 -0
- package/dist/deck-grid.js +1 -0
- package/dist/deck-help.d.ts +3 -0
- package/dist/deck-help.d.ts.map +1 -0
- package/dist/deck-help.js +82 -0
- package/dist/deck-kicker.d.ts +6 -0
- package/dist/deck-kicker.d.ts.map +1 -0
- package/dist/deck-kicker.js +1 -0
- package/dist/deck-md.d.ts +14 -0
- package/dist/deck-md.d.ts.map +1 -0
- package/dist/deck-md.js +3 -0
- package/dist/deck-mermaid.d.ts +28 -0
- package/dist/deck-mermaid.d.ts.map +1 -0
- package/dist/deck-mermaid.js +3 -0
- package/dist/deck-metric.d.ts +20 -0
- package/dist/deck-metric.d.ts.map +1 -0
- package/dist/deck-metric.js +1 -0
- package/dist/deck-notes.d.ts +13 -0
- package/dist/deck-notes.d.ts.map +1 -0
- package/dist/deck-notes.js +1 -0
- package/dist/deck-overview.d.ts +16 -0
- package/dist/deck-overview.d.ts.map +1 -0
- package/dist/deck-overview.js +202 -0
- package/dist/deck-photo.d.ts +17 -0
- package/dist/deck-photo.d.ts.map +1 -0
- package/dist/deck-photo.js +1 -0
- package/dist/deck-presenter.d.ts +3 -0
- package/dist/deck-presenter.d.ts.map +1 -0
- package/dist/deck-presenter.js +148 -0
- package/dist/deck-punch.d.ts +18 -0
- package/dist/deck-punch.d.ts.map +1 -0
- package/dist/deck-punch.js +1 -0
- package/dist/deck-root.d.ts +76 -0
- package/dist/deck-root.d.ts.map +1 -0
- package/dist/deck-root.js +11 -0
- package/dist/deck-section.d.ts +12 -0
- package/dist/deck-section.d.ts.map +1 -0
- package/dist/deck-section.js +3 -0
- package/dist/deck-shortcut.d.ts +30 -0
- package/dist/deck-shortcut.d.ts.map +1 -0
- package/dist/deck-shortcut.js +7 -0
- package/dist/deck-split.d.ts +19 -0
- package/dist/deck-split.d.ts.map +1 -0
- package/dist/deck-split.js +7 -0
- package/dist/deck-stack.d.ts +19 -0
- package/dist/deck-stack.d.ts.map +1 -0
- package/dist/deck-stack.js +1 -0
- package/dist/deck-stat.d.ts +15 -0
- package/dist/deck-stat.d.ts.map +1 -0
- package/dist/deck-stat.js +4 -0
- package/dist/deck-step-list.d.ts +18 -0
- package/dist/deck-step-list.d.ts.map +1 -0
- package/dist/deck-step-list.js +2 -0
- package/dist/deck-takeaway.d.ts +12 -0
- package/dist/deck-takeaway.d.ts.map +1 -0
- package/dist/deck-takeaway.js +4 -0
- package/dist/deck-tier-list.d.ts +26 -0
- package/dist/deck-tier-list.d.ts.map +1 -0
- package/dist/deck-tier-list.js +1 -0
- package/dist/deck-transition.d.ts +3 -0
- package/dist/deck-transition.d.ts.map +1 -0
- package/dist/deck-transition.js +51 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +58 -0
- package/dist/livereload.d.ts +2 -0
- package/dist/livereload.d.ts.map +1 -0
- package/dist/livereload.js +1 -0
- package/dist/shared-styles.d.ts +5 -0
- package/dist/shared-styles.d.ts.map +1 -0
- package/dist/shared-styles.js +1 -0
- package/dist/shiki-plugin.d.ts +11 -0
- package/dist/shiki-plugin.d.ts.map +1 -0
- package/dist/shiki-plugin.js +1 -0
- package/dist/standalone.js +539 -0
- package/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qN67lqDY.woff2 +0 -0
- package/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNq7lqDY.woff2 +0 -0
- package/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7l.woff2 +0 -0
- package/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdu.woff2 +0 -0
- package/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmBduz8A.woff2 +0 -0
- package/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmRduz8A.woff2 +0 -0
- package/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdu.woff2 +0 -0
- package/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmBduz8A.woff2 +0 -0
- package/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmRduz8A.woff2 +0 -0
- package/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwlxdu.woff2 +0 -0
- package/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwmBduz8A.woff2 +0 -0
- package/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwmRduz8A.woff2 +0 -0
- package/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2 +0 -0
- package/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2 +0 -0
- package/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2 +0 -0
- package/package.json +61 -0
- package/themes/rikiki.css +430 -0
- package/themes/siliceum-fonts.css +126 -0
- package/themes/siliceum.css +380 -0
- package/tokens.css +10 -0
|
@@ -0,0 +1,539 @@
|
|
|
1
|
+
var nt=Object.defineProperty;var Gt=Object.getOwnPropertyDescriptor;var Le=(s,t)=>()=>(s&&(t=s(s=0)),t);var ze=(s,t)=>{for(var e in t)nt(s,e,{get:t[e],enumerable:!0})};var o=(s,t,e,r)=>{for(var i=r>1?void 0:r?Gt(t,e):t,a=s.length-1,n;a>=0;a--)(n=s[a])&&(i=(r?n(t,e,i):n(i))||i);return r&&i&&nt(t,e,i),i};var De={};ze(De,{closeHelp:()=>St,toggleHelp:()=>hr});function pr(s){let t=s.querySelector("#kb-overlay");if(t)return t;if(!s.querySelector(`style[${$t}]`)){let i=document.createElement("style");i.setAttribute($t,"1"),i.textContent=dr,s.appendChild(i)}let e=document.createElement("div");return e.innerHTML=cr,t=e.firstElementChild,s.appendChild(t),t.addEventListener("click",()=>St(s.host)),t.querySelector(".kb-card")?.addEventListener("click",i=>i.stopPropagation()),t}function hr(s){if(!s.shadowRoot)return;pr(s.shadowRoot).classList.toggle("open")}function St(s){s.shadowRoot?.querySelector("#kb-overlay")?.classList.remove("open")}var $t,dr,cr,et=Le(()=>{"use strict";$t="data-deck-help",dr=`
|
|
2
|
+
#kb-overlay {
|
|
3
|
+
position: fixed; inset: 0;
|
|
4
|
+
background: rgba(10,10,10,0.7);
|
|
5
|
+
display: none; align-items: center; justify-content: center;
|
|
6
|
+
z-index: 200;
|
|
7
|
+
backdrop-filter: blur(8px);
|
|
8
|
+
opacity: 0;
|
|
9
|
+
transition: opacity 0.2s ease;
|
|
10
|
+
}
|
|
11
|
+
#kb-overlay.open { display: flex; opacity: 1; }
|
|
12
|
+
.kb-card {
|
|
13
|
+
background: var(--rik-surface-raised); color: var(--rik-text-default);
|
|
14
|
+
border: 1px solid var(--rik-border-default);
|
|
15
|
+
border-radius: var(--rik-radius-lg);
|
|
16
|
+
padding: 2.2rem 2.5rem;
|
|
17
|
+
box-shadow: 0 24px 80px rgba(0,0,0,0.5);
|
|
18
|
+
width: min(560px, 90vw);
|
|
19
|
+
font-family: var(--rik-font-sans);
|
|
20
|
+
animation: kbSlideIn 0.22s ease;
|
|
21
|
+
}
|
|
22
|
+
@keyframes kbSlideIn {
|
|
23
|
+
from { transform: translateY(8px) scale(0.98); opacity: 0; }
|
|
24
|
+
to { transform: translateY(0) scale(1); opacity: 1; }
|
|
25
|
+
}
|
|
26
|
+
.kb-card-header {
|
|
27
|
+
display: flex; align-items: baseline; justify-content: space-between;
|
|
28
|
+
gap: 1rem;
|
|
29
|
+
margin-bottom: 1.4rem;
|
|
30
|
+
padding-bottom: 0.75rem;
|
|
31
|
+
border-bottom: 1px solid var(--rik-border-default);
|
|
32
|
+
}
|
|
33
|
+
.kb-card h3 {
|
|
34
|
+
font: 700 1.05rem/1.2 var(--rik-font-sans);
|
|
35
|
+
letter-spacing: -0.01em;
|
|
36
|
+
color: var(--rik-text-default);
|
|
37
|
+
}
|
|
38
|
+
.kb-group-label {
|
|
39
|
+
font: 700 0.62rem/1 var(--rik-font-mono);
|
|
40
|
+
letter-spacing: 0.14em;
|
|
41
|
+
text-transform: uppercase;
|
|
42
|
+
color: var(--rik-text-default--faint);
|
|
43
|
+
margin: 0.8rem 0 0.3rem;
|
|
44
|
+
}
|
|
45
|
+
.kb-group-label:first-of-type { margin-top: 0; }
|
|
46
|
+
.kb-row {
|
|
47
|
+
display: flex; justify-content: space-between; align-items: center;
|
|
48
|
+
padding: 0.4rem 0;
|
|
49
|
+
font-size: 0.88rem;
|
|
50
|
+
}
|
|
51
|
+
.kb-row .keys { display: flex; gap: 4px; align-items: center; }
|
|
52
|
+
.kb-row kbd {
|
|
53
|
+
background: linear-gradient(180deg, #fff 0%, var(--rik-surface-page) 100%);
|
|
54
|
+
border: 1px solid var(--rik-border-default);
|
|
55
|
+
border-bottom: 2px solid #c4c4be;
|
|
56
|
+
border-radius: 5px;
|
|
57
|
+
padding: 3px 9px;
|
|
58
|
+
font: 600 0.78rem/1 var(--rik-font-mono);
|
|
59
|
+
color: var(--rik-text-default);
|
|
60
|
+
min-width: 22px; text-align: center;
|
|
61
|
+
box-shadow: 0 1px 0 rgba(255,255,255,0.5) inset;
|
|
62
|
+
}
|
|
63
|
+
.kb-row .desc { color: var(--rik-text-default--muted); }
|
|
64
|
+
`,cr=`
|
|
65
|
+
<div id="kb-overlay">
|
|
66
|
+
<div class="kb-card">
|
|
67
|
+
<div class="kb-card-header">
|
|
68
|
+
<h3>Keyboard shortcuts</h3>
|
|
69
|
+
<span class="esc"><kbd>Esc</kbd> to close</span>
|
|
70
|
+
</div>
|
|
71
|
+
<div class="kb-group-label">Navigation</div>
|
|
72
|
+
<div class="kb-row"><span class="desc">Next slide (linear)</span><span class="keys"><kbd>Space</kbd><kbd>PgDn</kbd></span></div>
|
|
73
|
+
<div class="kb-row"><span class="desc">Previous slide</span><span class="keys"><kbd>PgUp</kbd></span></div>
|
|
74
|
+
<div class="kb-row"><span class="desc">Previous / Next chapter</span><span class="keys"><kbd>←</kbd><kbd>→</kbd></span></div>
|
|
75
|
+
<div class="kb-row"><span class="desc">Up / Down inside a chapter</span><span class="keys"><kbd>↑</kbd><kbd>↓</kbd></span></div>
|
|
76
|
+
<div class="kb-row"><span class="desc">First / Last slide</span><span class="keys"><kbd>Home</kbd><kbd>End</kbd></span></div>
|
|
77
|
+
<div class="kb-group-label">View</div>
|
|
78
|
+
<div class="kb-row"><span class="desc">Toggle overview</span><span class="keys"><kbd>O</kbd></span></div>
|
|
79
|
+
<div class="kb-row"><span class="desc">Show this help</span><span class="keys"><kbd>?</kbd><kbd>H</kbd></span></div>
|
|
80
|
+
</div>
|
|
81
|
+
</div>
|
|
82
|
+
`});var zt={};ze(zt,{installPresenter:()=>vr});function Lt(s){let t=Array.from(s.children).filter(v=>v.tagName.toLowerCase().startsWith("deck-")),e=t.findIndex(v=>v.hasAttribute("active")),r=t[e]??null,i=t[e+1]??null,n=(r?.querySelector("deck-notes")?.textContent??"").trim(),h=document.querySelector('link[rel="stylesheet"][href*="rikiki"], link[rel="stylesheet"][href*="tokens"], link[rel="stylesheet"][href*="theme"]')?.href??"";return{current:e+1,total:t.length,slideHtml:r?.outerHTML??"",nextHtml:i?.outerHTML??null,notes:n,themeHref:h}}function At(s){Oe&&Oe.postMessage({type:"state",state:Lt(s)})}function vr(s){if(ne=ne??new WeakSet,ne.has(s)){I?.close(),I=null;return}ne.add(s),Oe=new BroadcastChannel(Tt),s.addEventListener("slide-change",()=>At(s)),Oe.addEventListener("message",r=>{let i=r.data;i?.type==="key"&&i.key&&window.dispatchEvent(new KeyboardEvent("keydown",{key:i.key,shiftKey:!!i.shift,bubbles:!0})),i?.type==="hello"&&At(s)});let t=Lt(s);if(I=window.open("","rikiki-presenter","width=1280,height=800,popup=yes"),!I){console.warn("[rikiki/presenter] popup was blocked \xB7 allow popups for this site"),ne.delete(s);return}I.document.open(),I.document.write(mr(t)),I.document.close();let e=setInterval(()=>{I&&I.closed&&(clearInterval(e),ne?.delete(s),I=null)},1e3)}var Tt,I,Oe,ne,mr,Mt=Le(()=>{"use strict";Tt="rik-presenter",I=null,Oe=null,ne=null;mr=s=>`<!doctype html>
|
|
83
|
+
<html lang="en">
|
|
84
|
+
<head>
|
|
85
|
+
<meta charset="utf-8">
|
|
86
|
+
<title>Rikiki \xB7 presenter</title>
|
|
87
|
+
${s.themeHref?`<link rel="stylesheet" href="${s.themeHref}">`:""}
|
|
88
|
+
<style>
|
|
89
|
+
html, body { margin: 0; padding: 0; height: 100%; background: #0f1422; color: #fafafa; font-family: var(--rik-font-sans, system-ui); }
|
|
90
|
+
.grid {
|
|
91
|
+
display: grid;
|
|
92
|
+
grid-template-columns: 2fr 1fr;
|
|
93
|
+
grid-template-rows: 1fr auto;
|
|
94
|
+
gap: 16px;
|
|
95
|
+
padding: 16px;
|
|
96
|
+
height: 100vh;
|
|
97
|
+
box-sizing: border-box;
|
|
98
|
+
}
|
|
99
|
+
.panel {
|
|
100
|
+
background: #1e2840;
|
|
101
|
+
border-radius: 12px;
|
|
102
|
+
overflow: hidden;
|
|
103
|
+
position: relative;
|
|
104
|
+
display: flex;
|
|
105
|
+
flex-direction: column;
|
|
106
|
+
}
|
|
107
|
+
.panel header {
|
|
108
|
+
font: 700 11px/1 var(--rik-font-mono, monospace);
|
|
109
|
+
text-transform: uppercase;
|
|
110
|
+
letter-spacing: 0.18em;
|
|
111
|
+
padding: 10px 14px;
|
|
112
|
+
color: rgba(232,228,240,0.45);
|
|
113
|
+
background: #161c2e;
|
|
114
|
+
}
|
|
115
|
+
.panel .body { flex: 1; min-height: 0; padding: 16px; overflow: hidden; }
|
|
116
|
+
.panel iframe { width: 100%; height: 100%; border: 0; background: white; border-radius: 8px; }
|
|
117
|
+
#notes { font-size: 17px; line-height: 1.6; white-space: pre-wrap; padding: 20px; overflow: auto; color: #e8e4f0; }
|
|
118
|
+
#notes:empty::before { content: 'No notes for this slide.'; color: rgba(232,228,240,0.4); font-style: italic; }
|
|
119
|
+
#footer {
|
|
120
|
+
grid-column: 1 / -1;
|
|
121
|
+
display: flex; align-items: center; justify-content: space-between;
|
|
122
|
+
background: #1e2840;
|
|
123
|
+
border-radius: 12px;
|
|
124
|
+
padding: 14px 20px;
|
|
125
|
+
font: 700 16px/1 var(--rik-font-mono, monospace);
|
|
126
|
+
}
|
|
127
|
+
#timer { font-size: 28px; font-variant-numeric: tabular-nums; letter-spacing: -0.01em; }
|
|
128
|
+
#counter { color: rgba(232,228,240,0.6); }
|
|
129
|
+
button {
|
|
130
|
+
background: transparent;
|
|
131
|
+
border: 1px solid rgba(232,228,240,0.2);
|
|
132
|
+
color: inherit;
|
|
133
|
+
font: inherit;
|
|
134
|
+
padding: 8px 14px;
|
|
135
|
+
border-radius: 6px;
|
|
136
|
+
cursor: pointer;
|
|
137
|
+
}
|
|
138
|
+
button:hover { background: rgba(255,255,255,0.06); }
|
|
139
|
+
.ghost { color: rgba(232,228,240,0.4); }
|
|
140
|
+
</style>
|
|
141
|
+
</head>
|
|
142
|
+
<body>
|
|
143
|
+
<div class="grid">
|
|
144
|
+
<section class="panel" id="current">
|
|
145
|
+
<header>Current</header>
|
|
146
|
+
<div class="body"><iframe id="current-frame" srcdoc=""></iframe></div>
|
|
147
|
+
</section>
|
|
148
|
+
<section class="panel" id="next">
|
|
149
|
+
<header>Next</header>
|
|
150
|
+
<div class="body"><iframe id="next-frame" srcdoc=""></iframe></div>
|
|
151
|
+
</section>
|
|
152
|
+
<section class="panel" id="notes-panel" style="grid-column: 1 / -1;">
|
|
153
|
+
<header>Speaker notes</header>
|
|
154
|
+
<div id="notes" class="body"></div>
|
|
155
|
+
</section>
|
|
156
|
+
<div id="footer">
|
|
157
|
+
<div><span id="timer">00:00</span> <button id="timer-toggle">Pause</button> <button id="timer-reset">Reset</button></div>
|
|
158
|
+
<div id="counter">${s.current} / ${s.total}</div>
|
|
159
|
+
<div><span class="ghost">P to close</span></div>
|
|
160
|
+
</div>
|
|
161
|
+
</div>
|
|
162
|
+
<script>
|
|
163
|
+
const channel = new BroadcastChannel('${Tt}');
|
|
164
|
+
const current = document.getElementById('current-frame');
|
|
165
|
+
const next = document.getElementById('next-frame');
|
|
166
|
+
const notes = document.getElementById('notes');
|
|
167
|
+
const counter = document.getElementById('counter');
|
|
168
|
+
const timerEl = document.getElementById('timer');
|
|
169
|
+
const toggleBtn = document.getElementById('timer-toggle');
|
|
170
|
+
const resetBtn = document.getElementById('timer-reset');
|
|
171
|
+
|
|
172
|
+
let running = true;
|
|
173
|
+
let startedAt = Date.now();
|
|
174
|
+
let elapsed = 0;
|
|
175
|
+
function fmt(ms) {
|
|
176
|
+
const s = Math.floor(ms / 1000);
|
|
177
|
+
const m = Math.floor(s / 60);
|
|
178
|
+
const h = Math.floor(m / 60);
|
|
179
|
+
const pad = (n) => String(n).padStart(2, '0');
|
|
180
|
+
return h > 0 ? (h + ':' + pad(m % 60) + ':' + pad(s % 60)) : (pad(m) + ':' + pad(s % 60));
|
|
181
|
+
}
|
|
182
|
+
function tick() {
|
|
183
|
+
if (running) timerEl.textContent = fmt(elapsed + (Date.now() - startedAt));
|
|
184
|
+
requestAnimationFrame(tick);
|
|
185
|
+
}
|
|
186
|
+
tick();
|
|
187
|
+
toggleBtn.onclick = () => {
|
|
188
|
+
if (running) { elapsed += Date.now() - startedAt; running = false; toggleBtn.textContent = 'Resume'; }
|
|
189
|
+
else { startedAt = Date.now(); running = true; toggleBtn.textContent = 'Pause'; }
|
|
190
|
+
};
|
|
191
|
+
resetBtn.onclick = () => { startedAt = Date.now(); elapsed = 0; running = true; toggleBtn.textContent = 'Pause'; };
|
|
192
|
+
|
|
193
|
+
function wrapFrame(slideHtml) {
|
|
194
|
+
const themeHref = ${JSON.stringify(s.themeHref)};
|
|
195
|
+
const themeLink = themeHref ? '<link rel="stylesheet" href="' + themeHref + '">' : '';
|
|
196
|
+
// Use the consumer's rikiki bundle URL \xB7 we cannot guess it perfectly, so
|
|
197
|
+
// assume it sits next to the theme css.
|
|
198
|
+
const bundleHref = themeHref.replace(/themes\\/[^/]+\\.css.*$/, 'dist/index.js');
|
|
199
|
+
return '<!doctype html><html><head><meta charset="UTF-8">' + themeLink +
|
|
200
|
+
'<script type="module" src="' + bundleHref + '"><' + '/script>' +
|
|
201
|
+
'<style>html,body{margin:0;padding:0;height:100%;overflow:hidden}body{display:flex}deck-root{flex:1}deck-root>*{display:flex!important}</style>' +
|
|
202
|
+
'</head><body><deck-root>' + slideHtml + '</deck-root></body></html>';
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
channel.onmessage = (e) => {
|
|
206
|
+
if (e.data?.type !== 'state') return;
|
|
207
|
+
const s = e.data.state;
|
|
208
|
+
counter.textContent = s.current + ' / ' + s.total;
|
|
209
|
+
notes.textContent = s.notes;
|
|
210
|
+
if (s.slideHtml) current.srcdoc = wrapFrame(s.slideHtml);
|
|
211
|
+
if (s.nextHtml) next.srcdoc = wrapFrame(s.nextHtml);
|
|
212
|
+
else next.srcdoc = '<!doctype html><html><body style="background:#0f1422;color:rgba(232,228,240,0.4);display:flex;align-items:center;justify-content:center;font-family:system-ui">End of deck</body></html>';
|
|
213
|
+
};
|
|
214
|
+
|
|
215
|
+
// Initial paint from the seed state
|
|
216
|
+
const seed = ${JSON.stringify(s)};
|
|
217
|
+
channel.postMessage({ type: 'state', state: seed });
|
|
218
|
+
|
|
219
|
+
// Forward keys back to the main window (so the speaker can drive nav from the laptop)
|
|
220
|
+
window.addEventListener('keydown', (e) => {
|
|
221
|
+
if (e.target.matches && e.target.matches('input,textarea,button')) return;
|
|
222
|
+
channel.postMessage({ type: 'key', key: e.key, shift: e.shiftKey });
|
|
223
|
+
});
|
|
224
|
+
|
|
225
|
+
// Tell main window we're alive
|
|
226
|
+
channel.postMessage({ type: 'hello' });
|
|
227
|
+
<\/script>
|
|
228
|
+
</body>
|
|
229
|
+
</html>`});var Nt={};ze(Nt,{mountOverview:()=>yr});function fr(s){if(s.querySelector(`style[${Ht}]`))return;let t=document.createElement("style");t.setAttribute(Ht,"1"),t.textContent=ur,s.appendChild(t)}function gr(s,t){if(s.querySelector(`link[${Ct}]`))return;let e=document.createElement("link");e.rel="stylesheet",e.setAttribute(Ct,"1"),e.href=new URL("../tokens.css",t).href,s.appendChild(e)}function Pt(s){let e=s.slides[0]?.querySelector("h1");return e?Array.from(e.childNodes).map(r=>r.nodeName==="BR"?" ":r.textContent??"").join("").replace(/\s+/g," ").trim()||`Slide ${s.startIdx+1}`:`Slide ${s.startIdx+1}`}function kr(s){return(s.textContent||"").replace(/\s+/g," ").trim().slice(0,400).toLowerCase()}function yr(s,t){let e=s.shadowRoot;if(!e)return()=>{};fr(e),gr(e,import.meta.url);let r=e.querySelector("#overview-grid");r||(r=document.createElement("div"),r.id="overview-grid",e.appendChild(r)),r.innerHTML="";let i=t.slides.length,a=i>60,n=i>300?140:i>150?160:i>60?180:220;r.style.setProperty("--ov-cell-min",n+"px");let d=window.innerWidth,h=window.innerHeight;r.style.setProperty("--ov-thumb-w",`${d}px`),r.style.setProperty("--ov-thumb-h",`${h}px`),requestAnimationFrame(()=>{let k=r.querySelector(".ov-cell")?.clientWidth??n;r.style.setProperty("--overview-scale",String(k/d))});let v=document.createElement("div");v.className="ov-bar";let g=document.createElement("input");g.className="ov-search",g.type="search",g.placeholder=`Search ${i} slides \xB7 type to filter`,g.spellcheck=!1,v.appendChild(g);let f=document.createElement("span");f.className="ov-count",f.textContent=`${i} slides \xB7 ${t.chapters.length} chapters`,v.appendChild(f);let x=document.createElement("span");x.className="ov-hint",x.textContent="O \xB7 Esc \xB7 close",v.appendChild(x),r.appendChild(v);let $=document.createElement("div");$.className="ov-body"+(a?"":" compact"),r.appendChild($);let T=a?document.createElement("aside"):null;T&&(T.className="ov-aside",$.appendChild(T));let F=document.createElement("div");F.className="ov-main"+(a?"":" ov-path"),$.appendChild(F);let Ue=[],it=[],st=new WeakMap,Re=new IntersectionObserver(k=>{for(let S of k){if(!S.isIntersecting)continue;let b=S.target;if(b.dataset.loaded)continue;let M=st.get(b);if(!M)continue;let y=document.createElement("div");y.className="ov-thumb";let P=M.cloneNode(!0);P.setAttribute("active",""),y.appendChild(P),b.insertBefore(y,b.firstChild),b.dataset.loaded="1",Re.unobserve(b)}},{root:null,rootMargin:"300px 0px",threshold:0});t.chapters.forEach((k,S)=>{let b=document.createElement("section");if(b.className="ov-chapter",b.id=`ov-chapter-${S}`,a){let y=document.createElement("header");y.className="ov-chapter-head";let P=document.createElement("span");P.className="ov-chapter-num",P.textContent=String(S+1).padStart(2,"0"),y.appendChild(P);let H=document.createElement("span");H.className="ov-chapter-title",H.textContent=Pt(k),y.appendChild(H);let _=document.createElement("span");_.className="ov-chapter-count",_.textContent=`${k.slides.length} slide${k.slides.length>1?"s":""}`,y.appendChild(_),b.appendChild(y)}let M=document.createElement("div");if(M.className="ov-row",k.slides.forEach((y,P)=>{if(!a&&P>0){let at=document.createElement("div");at.className="ov-connector",M.appendChild(at)}let H=k.startIdx+P,_=document.createElement("div");_.className="ov-cell",_.dataset.idx=String(H),_.dataset.search=kr(y),H===t.currentIdx&&(_.dataset.current="1"),st.set(_,y),Re.observe(_);let J=document.createElement("span");J.className="ov-cell-label",J.textContent=String(H+1),_.appendChild(J),_.addEventListener("click",()=>t.onPick(H)),M.appendChild(_)}),b.appendChild(M),F.appendChild(b),Ue.push(b),T){let y=document.createElement("button");y.type="button",y.className="ov-aside-item",t.currentIdx>=k.startIdx&&t.currentIdx<k.startIdx+k.slides.length&&(y.dataset.active="1");let H=document.createElement("span");H.className="ov-aside-num",H.textContent=String(S+1).padStart(2,"0"),y.appendChild(H);let _=document.createElement("span");_.className="ov-aside-text",_.textContent=Pt(k);let J=document.createElement("div");J.className="ov-aside-count",J.textContent=`${k.slides.length} slide${k.slides.length>1?"s":""}`,_.appendChild(J),y.appendChild(_),y.addEventListener("click",()=>{b.scrollIntoView({behavior:"smooth",block:"start"})}),T.appendChild(y),it.push(y)}});let je=null;T&&(je=new IntersectionObserver(k=>{let S=k.filter(b=>b.isIntersecting).sort((b,M)=>b.boundingClientRect.top-M.boundingClientRect.top);if(S.length>0){let b=Ue.indexOf(S[0].target);b>=0&&it.forEach((M,y)=>{y===b?M.dataset.active="1":delete M.dataset.active})}},{root:F,rootMargin:"0px 0px -70% 0px",threshold:0}),Ue.forEach(k=>je.observe(k)));let ot=r.querySelectorAll(".ov-cell");return g.addEventListener("input",()=>{let k=g.value.trim().toLowerCase();if(!k){ot.forEach(S=>delete S.dataset.filteredOut);return}ot.forEach(S=>{(S.dataset.search||"").includes(k)?delete S.dataset.filteredOut:S.dataset.filteredOut="1"})}),requestAnimationFrame(()=>{let k=r.querySelector(".ov-cell[data-current]");k&&k.scrollIntoView({block:"center"})}),()=>{je?.disconnect(),Re.disconnect(),r&&(r.innerHTML="")}}var Ht,Ct,ur,It=Le(()=>{"use strict";Ht="data-deck-overview",Ct="data-overview-tokens",ur=`
|
|
230
|
+
:host([overview]) ::slotted(*) { display: none !important; }
|
|
231
|
+
:host([overview]) #overview-grid {
|
|
232
|
+
position: fixed; inset: 0;
|
|
233
|
+
background: var(--rik-surface-page);
|
|
234
|
+
overflow: hidden;
|
|
235
|
+
z-index: 80;
|
|
236
|
+
display: grid;
|
|
237
|
+
grid-template-rows: auto 1fr;
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
/* \u2500\u2500 Top bar \xB7 search, slide count, close hint \u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
|
|
241
|
+
:host([overview]) .ov-bar {
|
|
242
|
+
display: flex; align-items: center; gap: 16px;
|
|
243
|
+
padding: 14px 28px;
|
|
244
|
+
background: var(--rik-surface-raised);
|
|
245
|
+
border-bottom: 1px solid var(--rik-border-default);
|
|
246
|
+
font: 700 0.78rem/1 var(--rik-font-mono);
|
|
247
|
+
letter-spacing: 0.10em;
|
|
248
|
+
color: var(--rik-text-default--faint);
|
|
249
|
+
}
|
|
250
|
+
:host([overview]) .ov-bar .ov-search {
|
|
251
|
+
flex: 1;
|
|
252
|
+
appearance: none;
|
|
253
|
+
background: var(--rik-surface-raised--strong);
|
|
254
|
+
border: 1px solid var(--rik-border-default);
|
|
255
|
+
border-radius: var(--rik-radius-sm);
|
|
256
|
+
padding: 8px 14px;
|
|
257
|
+
font: inherit;
|
|
258
|
+
color: var(--rik-text-default);
|
|
259
|
+
letter-spacing: 0;
|
|
260
|
+
max-width: 480px;
|
|
261
|
+
}
|
|
262
|
+
:host([overview]) .ov-bar .ov-search:focus {
|
|
263
|
+
outline: none;
|
|
264
|
+
border-color: var(--rik-accent);
|
|
265
|
+
box-shadow: 0 0 0 3px var(--rik-accent--soft);
|
|
266
|
+
}
|
|
267
|
+
:host([overview]) .ov-bar .ov-count { color: var(--rik-accent); }
|
|
268
|
+
:host([overview]) .ov-bar .ov-hint { letter-spacing: 0.16em; text-transform: uppercase; }
|
|
269
|
+
|
|
270
|
+
/* \u2500\u2500 Sidebar layout (many slides) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
|
|
271
|
+
:host([overview]) .ov-body {
|
|
272
|
+
display: grid;
|
|
273
|
+
grid-template-columns: 240px 1fr;
|
|
274
|
+
min-height: 0;
|
|
275
|
+
}
|
|
276
|
+
:host([overview]) .ov-body.compact { grid-template-columns: 1fr; }
|
|
277
|
+
:host([overview]) .ov-aside {
|
|
278
|
+
border-right: 1px solid var(--rik-border-default);
|
|
279
|
+
background: var(--rik-surface-raised);
|
|
280
|
+
overflow-y: auto;
|
|
281
|
+
padding: 16px 0;
|
|
282
|
+
}
|
|
283
|
+
:host([overview]) .ov-aside-item {
|
|
284
|
+
display: grid;
|
|
285
|
+
grid-template-columns: 36px 1fr;
|
|
286
|
+
gap: 10px;
|
|
287
|
+
align-items: baseline;
|
|
288
|
+
padding: 10px 16px;
|
|
289
|
+
cursor: pointer;
|
|
290
|
+
border-left: 3px solid transparent;
|
|
291
|
+
color: var(--rik-text-default--muted);
|
|
292
|
+
transition: background 0.12s, color 0.12s, border-color 0.12s;
|
|
293
|
+
}
|
|
294
|
+
:host([overview]) .ov-aside-item:hover {
|
|
295
|
+
background: var(--rik-surface-tint);
|
|
296
|
+
color: var(--rik-text-default);
|
|
297
|
+
}
|
|
298
|
+
:host([overview]) .ov-aside-item[data-active] {
|
|
299
|
+
background: var(--rik-accent--faint);
|
|
300
|
+
border-left-color: var(--rik-accent);
|
|
301
|
+
color: var(--rik-text-default);
|
|
302
|
+
}
|
|
303
|
+
:host([overview]) .ov-aside-num {
|
|
304
|
+
font: 800 0.85rem/1 var(--rik-font-mono);
|
|
305
|
+
color: var(--rik-accent);
|
|
306
|
+
}
|
|
307
|
+
:host([overview]) .ov-aside-text {
|
|
308
|
+
font: 700 0.92rem/1.3 var(--rik-font-display, var(--rik-font-sans));
|
|
309
|
+
letter-spacing: -0.005em;
|
|
310
|
+
}
|
|
311
|
+
:host([overview]) .ov-aside-count {
|
|
312
|
+
font: 600 0.70rem/1 var(--rik-font-mono);
|
|
313
|
+
color: var(--rik-text-default--faint);
|
|
314
|
+
margin-top: 4px;
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
/* \u2500\u2500 Main scroll area \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
|
|
318
|
+
:host([overview]) .ov-main {
|
|
319
|
+
overflow-y: auto;
|
|
320
|
+
padding: 24px 32px 48px;
|
|
321
|
+
display: flex; flex-direction: column;
|
|
322
|
+
gap: 32px;
|
|
323
|
+
min-width: 0;
|
|
324
|
+
}
|
|
325
|
+
:host([overview]) .ov-chapter {
|
|
326
|
+
display: flex; flex-direction: column;
|
|
327
|
+
gap: 12px;
|
|
328
|
+
scroll-margin-top: 24px;
|
|
329
|
+
}
|
|
330
|
+
:host([overview]) .ov-chapter-head {
|
|
331
|
+
display: flex; align-items: baseline; gap: 12px;
|
|
332
|
+
padding-bottom: 6px;
|
|
333
|
+
border-bottom: 2px solid var(--rik-accent);
|
|
334
|
+
}
|
|
335
|
+
:host([overview]) .ov-chapter-num {
|
|
336
|
+
font: 800 0.85rem/1 var(--rik-font-mono);
|
|
337
|
+
color: var(--rik-accent);
|
|
338
|
+
letter-spacing: 0.12em;
|
|
339
|
+
}
|
|
340
|
+
:host([overview]) .ov-chapter-title {
|
|
341
|
+
font: 800 1.2rem/1.2 var(--rik-font-display, var(--rik-font-sans));
|
|
342
|
+
color: var(--rik-text-default);
|
|
343
|
+
letter-spacing: -0.012em;
|
|
344
|
+
flex: 1;
|
|
345
|
+
min-width: 0;
|
|
346
|
+
}
|
|
347
|
+
:host([overview]) .ov-chapter-count {
|
|
348
|
+
font: 700 0.72rem/1 var(--rik-font-mono);
|
|
349
|
+
color: var(--rik-text-default--faint);
|
|
350
|
+
letter-spacing: 0.1em;
|
|
351
|
+
text-transform: uppercase;
|
|
352
|
+
}
|
|
353
|
+
:host([overview]) .ov-row {
|
|
354
|
+
display: grid;
|
|
355
|
+
grid-template-columns: repeat(auto-fill, minmax(var(--ov-cell-min, 180px), 1fr));
|
|
356
|
+
gap: 12px;
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
/* \u2500\u2500 Path layout (\u2264 60 slides) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
|
|
360
|
+
:host([overview]) .ov-path .ov-row {
|
|
361
|
+
display: flex; gap: 14px; align-items: center; flex-wrap: wrap;
|
|
362
|
+
}
|
|
363
|
+
:host([overview]) .ov-path .ov-connector {
|
|
364
|
+
flex: 0 0 auto;
|
|
365
|
+
width: 16px; height: 2px;
|
|
366
|
+
background: var(--rik-border-default);
|
|
367
|
+
}
|
|
368
|
+
:host([overview]) .ov-path .ov-cell { flex: 0 0 auto; width: clamp(160px, 14vw, 260px); }
|
|
369
|
+
|
|
370
|
+
/* \u2500\u2500 Thumbnail cell \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
|
|
371
|
+
:host([overview]) .ov-cell {
|
|
372
|
+
position: relative;
|
|
373
|
+
aspect-ratio: 16 / 9;
|
|
374
|
+
background:
|
|
375
|
+
linear-gradient(180deg, var(--rik-surface-raised) 0%, var(--rik-surface-sunken) 100%);
|
|
376
|
+
border: 1px solid var(--rik-border-default);
|
|
377
|
+
border-radius: var(--rik-radius-md);
|
|
378
|
+
overflow: hidden;
|
|
379
|
+
cursor: pointer;
|
|
380
|
+
transition: border-color 0.12s ease, transform 0.12s ease, box-shadow 0.12s ease, opacity 0.15s;
|
|
381
|
+
box-shadow: var(--rik-elevation-1);
|
|
382
|
+
}
|
|
383
|
+
:host([overview]) .ov-cell:hover {
|
|
384
|
+
transform: translateY(-2px) scale(1.015);
|
|
385
|
+
border-color: var(--rik-accent--soft);
|
|
386
|
+
box-shadow: var(--rik-elevation-3);
|
|
387
|
+
z-index: 1;
|
|
388
|
+
}
|
|
389
|
+
:host([overview]) .ov-cell[data-current] {
|
|
390
|
+
border-color: var(--rik-accent);
|
|
391
|
+
box-shadow: 0 0 0 3px var(--rik-accent--soft), var(--rik-elevation-2);
|
|
392
|
+
}
|
|
393
|
+
:host([overview]) .ov-cell[data-filtered-out] { opacity: 0.10; pointer-events: none; transform: scale(0.96); }
|
|
394
|
+
:host([overview]) .ov-cell:not([data-loaded]) .ov-thumb { display: none; }
|
|
395
|
+
:host([overview]) .ov-cell:not([data-loaded])::before {
|
|
396
|
+
content: '';
|
|
397
|
+
position: absolute; inset: 0;
|
|
398
|
+
background:
|
|
399
|
+
linear-gradient(110deg,
|
|
400
|
+
transparent 0%,
|
|
401
|
+
transparent 38%,
|
|
402
|
+
rgba(42, 37, 32, 0.04) 50%,
|
|
403
|
+
transparent 62%,
|
|
404
|
+
transparent 100%);
|
|
405
|
+
background-size: 200% 100%;
|
|
406
|
+
animation: ov-shimmer 1.4s linear infinite;
|
|
407
|
+
}
|
|
408
|
+
@keyframes ov-shimmer {
|
|
409
|
+
from { background-position: 100% 0; }
|
|
410
|
+
to { background-position: -100% 0; }
|
|
411
|
+
}
|
|
412
|
+
:host([overview]) .ov-thumb {
|
|
413
|
+
position: absolute; top: 0; left: 0;
|
|
414
|
+
width: var(--ov-thumb-w, 1920px); height: var(--ov-thumb-h, 1080px);
|
|
415
|
+
transform: scale(var(--overview-scale, 0.2));
|
|
416
|
+
transform-origin: top left;
|
|
417
|
+
pointer-events: none;
|
|
418
|
+
}
|
|
419
|
+
:host([overview]) .ov-thumb > * { display: flex !important; }
|
|
420
|
+
:host([overview]) .ov-cell-label {
|
|
421
|
+
position: absolute; bottom: 6px; right: 8px;
|
|
422
|
+
font: 700 0.70rem/1 var(--rik-font-mono);
|
|
423
|
+
color: var(--rik-text-default);
|
|
424
|
+
background: rgba(255, 255, 255, 0.92);
|
|
425
|
+
padding: 3px 7px; border-radius: 4px;
|
|
426
|
+
z-index: 2;
|
|
427
|
+
pointer-events: none;
|
|
428
|
+
}
|
|
429
|
+
:host(:not([overview])) #overview-grid { display: none; }
|
|
430
|
+
`});var Ut={};ze(Ut,{installTransitions:()=>wr});function wr(s){if(s.__rkTransitions)return s.__rkTransitions;let t=s.shadowRoot;if(!t)return()=>{};let e=document.createElement("style");e.textContent=xr,e.setAttribute("data-rik-transitions",""),t.appendChild(e);function r(d,h){if(!h)return 0;let v=d.compareDocumentPosition(h);return v&Node.DOCUMENT_POSITION_PRECEDING?1:v&Node.DOCUMENT_POSITION_FOLLOWING?-1:0}let i=d=>{let h=d,v=h.detail.current,g=h.detail.previous;if(!v)return;let f=v.dataset.transition||s.transition||"fade",x=r(v,g);f==="slide"&&x<0?f="slide-right":f==="slide-right"&&x>0?f="slide":f==="slide-up"&&x<0?f="slide-down":f==="slide-down"&&x>0&&(f="slide-up");let $=`rk-enter-${f}`,T=`rk-exit-${f}`,F=A[f]??480;g&&g!==v&&(g.classList.remove(...Ot,..._r,"rk-leaving"),g.style.display="flex",g.style.zIndex="1",g.offsetWidth,g.classList.add("rk-leaving",T),window.setTimeout(()=>{g.classList.remove("rk-leaving",T),g.style.display="",g.style.zIndex=""},F+40)),v.classList.remove(...Ot),v.style.zIndex="2",v.offsetWidth,v.classList.add($),window.setTimeout(()=>{v.classList.remove($),v.style.zIndex=""},F+40)};s.addEventListener("slide-change",i);let a=s.querySelector(":scope > [active]");a&&i(new CustomEvent("slide-change",{detail:{current:a,previous:null}}));let n=()=>{s.removeEventListener("slide-change",i),e.remove(),delete s.__rkTransitions};return s.__rkTransitions=n,n}var A,L,br,xr,Ot,_r,Rt=Le(()=>{"use strict";A={slide:560,"slide-up":520,"slide-down":520,"slide-right":560,fade:480,zoom:520,flip:560},L="var(--rik-motion__ease-out, cubic-bezier(0.16, 1, 0.3, 1))",br="var(--rik-motion__ease-spring, cubic-bezier(0.5, 1.8, 0.3, 1))",xr=`
|
|
431
|
+
/* Incoming \xB7 from right (forward) */
|
|
432
|
+
@keyframes rk-slide-in { from { transform: translateX(100%); } to { transform: translateX(0); } }
|
|
433
|
+
/* Outgoing \xB7 pushed off to the left (forward) */
|
|
434
|
+
@keyframes rk-slide-out { from { transform: translateX(0); } to { transform: translateX(-100%); } }
|
|
435
|
+
/* Incoming \xB7 from left (backward) */
|
|
436
|
+
@keyframes rk-slide-right-in { from { transform: translateX(-100%); } to { transform: translateX(0); } }
|
|
437
|
+
/* Outgoing \xB7 pushed off to the right (backward) */
|
|
438
|
+
@keyframes rk-slide-right-out { from { transform: translateX(0); } to { transform: translateX(100%); } }
|
|
439
|
+
/* Vertical \xB7 incoming from below, outgoing pushed up (forward) */
|
|
440
|
+
@keyframes rk-slide-up-in { from { transform: translateY(100%); } to { transform: translateY(0); } }
|
|
441
|
+
@keyframes rk-slide-up-out { from { transform: translateY(0); } to { transform: translateY(-100%); } }
|
|
442
|
+
/* Vertical \xB7 incoming from above, outgoing pushed down (backward) */
|
|
443
|
+
@keyframes rk-slide-down-in { from { transform: translateY(-100%); } to { transform: translateY(0); } }
|
|
444
|
+
@keyframes rk-slide-down-out { from { transform: translateY(0); } to { transform: translateY(100%); } }
|
|
445
|
+
/* Fade \xB7 pop in / pop out from center, no horizontal motion */
|
|
446
|
+
@keyframes rk-fade-in { from { transform: scale(0.94); } to { transform: scale(1); } }
|
|
447
|
+
@keyframes rk-fade-out { from { transform: scale(1); } to { transform: scale(1.06); } }
|
|
448
|
+
/* Zoom \xB7 aggressive scale (for hooks) */
|
|
449
|
+
@keyframes rk-zoom-in { from { transform: scale(0.86); } to { transform: scale(1); } }
|
|
450
|
+
@keyframes rk-zoom-out { from { transform: scale(1); } to { transform: scale(1.10); } }
|
|
451
|
+
/* Flip \xB7 3D rotateY */
|
|
452
|
+
@keyframes rk-flip-in { from { transform: perspective(900px) rotateY(-22deg) scale(0.94); }
|
|
453
|
+
to { transform: perspective(900px) rotateY(0) scale(1); } }
|
|
454
|
+
@keyframes rk-flip-out { from { transform: perspective(900px) rotateY(0) scale(1); }
|
|
455
|
+
to { transform: perspective(900px) rotateY(22deg) scale(0.94); } }
|
|
456
|
+
|
|
457
|
+
/* Outgoing slide stays display:flex via inline JS style; this rule is
|
|
458
|
+
a placeholder so the selector resolves cleanly in shadow CSS. */
|
|
459
|
+
::slotted(.rk-leaving) { }
|
|
460
|
+
|
|
461
|
+
::slotted([active].rk-enter-slide) { animation: rk-slide-in ${A.slide}ms ${L} both; }
|
|
462
|
+
::slotted(.rk-leaving.rk-exit-slide) { animation: rk-slide-out ${A.slide}ms ${L} both; }
|
|
463
|
+
::slotted([active].rk-enter-slide-right) { animation: rk-slide-right-in ${A["slide-right"]}ms ${L} both; }
|
|
464
|
+
::slotted(.rk-leaving.rk-exit-slide-right){ animation: rk-slide-right-out ${A["slide-right"]}ms ${L} both; }
|
|
465
|
+
::slotted([active].rk-enter-slide-up) { animation: rk-slide-up-in ${A["slide-up"]}ms ${L} both; }
|
|
466
|
+
::slotted(.rk-leaving.rk-exit-slide-up) { animation: rk-slide-up-out ${A["slide-up"]}ms ${L} both; }
|
|
467
|
+
::slotted([active].rk-enter-slide-down) { animation: rk-slide-down-in ${A["slide-down"]}ms ${L} both; }
|
|
468
|
+
::slotted(.rk-leaving.rk-exit-slide-down) { animation: rk-slide-down-out ${A["slide-down"]}ms ${L} both; }
|
|
469
|
+
::slotted([active].rk-enter-fade) { animation: rk-fade-in ${A.fade}ms ${L} both; }
|
|
470
|
+
::slotted(.rk-leaving.rk-exit-fade) { animation: rk-fade-out ${A.fade}ms ${L} both; }
|
|
471
|
+
::slotted([active].rk-enter-zoom) { animation: rk-zoom-in ${A.zoom}ms ${br} both; }
|
|
472
|
+
::slotted(.rk-leaving.rk-exit-zoom) { animation: rk-zoom-out ${A.zoom}ms ${L} both; }
|
|
473
|
+
::slotted([active].rk-enter-flip) { animation: rk-flip-in ${A.flip}ms ${L} both; }
|
|
474
|
+
::slotted(.rk-leaving.rk-exit-flip) { animation: rk-flip-out ${A.flip}ms ${L} both; }
|
|
475
|
+
|
|
476
|
+
@media (prefers-reduced-motion: reduce) {
|
|
477
|
+
::slotted([active][class*='rk-enter-']),
|
|
478
|
+
::slotted(.rk-leaving) { animation: none; }
|
|
479
|
+
}
|
|
480
|
+
`,Ot=["rk-enter-slide","rk-enter-slide-up","rk-enter-slide-down","rk-enter-slide-right","rk-enter-fade","rk-enter-zoom","rk-enter-flip"],_r=["rk-exit-slide","rk-exit-slide-up","rk-exit-slide-down","rk-exit-slide-right","rk-exit-fade","rk-exit-zoom","rk-exit-flip"]});var Me=globalThis,He=Me.ShadowRoot&&(Me.ShadyCSS===void 0||Me.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Be=Symbol(),lt=new WeakMap,fe=class{constructor(t,e,r){if(this._$cssResult$=!0,r!==Be)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(He&&t===void 0){let r=e!==void 0&&e.length===1;r&&(t=lt.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),r&<.set(e,t))}return t}toString(){return this.cssText}},dt=s=>new fe(typeof s=="string"?s:s+"",void 0,Be),m=(s,...t)=>{let e=s.length===1?s[0]:t.reduce((r,i,a)=>r+(n=>{if(n._$cssResult$===!0)return n.cssText;if(typeof n=="number")return n;throw Error("Value passed to 'css' function must be a 'css' function result: "+n+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+s[a+1],s[0]);return new fe(e,s,Be)},ct=(s,t)=>{if(He)s.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(let e of t){let r=document.createElement("style"),i=Me.litNonce;i!==void 0&&r.setAttribute("nonce",i),r.textContent=e.cssText,s.appendChild(r)}},qe=He?s=>s:s=>s instanceof CSSStyleSheet?(t=>{let e="";for(let r of t.cssRules)e+=r.cssText;return dt(e)})(s):s;var{is:Kt,defineProperty:Ft,getOwnPropertyDescriptor:Jt,getOwnPropertyNames:Zt,getOwnPropertySymbols:Qt,getPrototypeOf:Dt}=Object,Ce=globalThis,pt=Ce.trustedTypes,er=pt?pt.emptyScript:"",tr=Ce.reactiveElementPolyfillSupport,ge=(s,t)=>s,ke={toAttribute(s,t){switch(t){case Boolean:s=s?er:null;break;case Object:case Array:s=s==null?s:JSON.stringify(s)}return s},fromAttribute(s,t){let e=s;switch(t){case Boolean:e=s!==null;break;case Number:e=s===null?null:Number(s);break;case Object:case Array:try{e=JSON.parse(s)}catch{e=null}}return e}},Pe=(s,t)=>!Kt(s,t),ht={attribute:!0,type:String,converter:ke,reflect:!1,useDefault:!1,hasChanged:Pe};Symbol.metadata??=Symbol("metadata"),Ce.litPropertyMetadata??=new WeakMap;var j=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=ht){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){let r=Symbol(),i=this.getPropertyDescriptor(t,r,e);i!==void 0&&Ft(this.prototype,t,i)}}static getPropertyDescriptor(t,e,r){let{get:i,set:a}=Jt(this.prototype,t)??{get(){return this[e]},set(n){this[e]=n}};return{get:i,set(n){let d=i?.call(this);a?.call(this,n),this.requestUpdate(t,d,r)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??ht}static _$Ei(){if(this.hasOwnProperty(ge("elementProperties")))return;let t=Dt(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(ge("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(ge("properties"))){let e=this.properties,r=[...Zt(e),...Qt(e)];for(let i of r)this.createProperty(i,e[i])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[r,i]of e)this.elementProperties.set(r,i)}this._$Eh=new Map;for(let[e,r]of this.elementProperties){let i=this._$Eu(e,r);i!==void 0&&this._$Eh.set(i,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let r=new Set(t.flat(1/0).reverse());for(let i of r)e.unshift(qe(i))}else t!==void 0&&e.push(qe(t));return e}static _$Eu(t,e){let r=e.attribute;return r===!1?void 0:typeof r=="string"?r:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let r of e.keys())this.hasOwnProperty(r)&&(t.set(r,this[r]),delete this[r]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return ct(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,r){this._$AK(t,r)}_$ET(t,e){let r=this.constructor.elementProperties.get(t),i=this.constructor._$Eu(t,r);if(i!==void 0&&r.reflect===!0){let a=(r.converter?.toAttribute!==void 0?r.converter:ke).toAttribute(e,r.type);this._$Em=t,a==null?this.removeAttribute(i):this.setAttribute(i,a),this._$Em=null}}_$AK(t,e){let r=this.constructor,i=r._$Eh.get(t);if(i!==void 0&&this._$Em!==i){let a=r.getPropertyOptions(i),n=typeof a.converter=="function"?{fromAttribute:a.converter}:a.converter?.fromAttribute!==void 0?a.converter:ke;this._$Em=i;let d=n.fromAttribute(e,a.type);this[i]=d??this._$Ej?.get(i)??d,this._$Em=null}}requestUpdate(t,e,r,i=!1,a){if(t!==void 0){let n=this.constructor;if(i===!1&&(a=this[t]),r??=n.getPropertyOptions(t),!((r.hasChanged??Pe)(a,e)||r.useDefault&&r.reflect&&a===this._$Ej?.get(t)&&!this.hasAttribute(n._$Eu(t,r))))return;this.C(t,e,r)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:r,reflect:i,wrapped:a},n){r&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,n??e??this[t]),a!==!0||n!==void 0)||(this._$AL.has(t)||(this.hasUpdated||r||(e=void 0),this._$AL.set(t,e)),i===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[i,a]of this._$Ep)this[i]=a;this._$Ep=void 0}let r=this.constructor.elementProperties;if(r.size>0)for(let[i,a]of r){let{wrapped:n}=a,d=this[i];n!==!0||this._$AL.has(i)||d===void 0||this.C(i,void 0,a,d)}}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(r=>r.hostUpdate?.()),this.update(e)):this._$EM()}catch(r){throw t=!1,this._$EM(),r}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(e=>e.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach(e=>this._$ET(e,this[e])),this._$EM()}updated(t){}firstUpdated(t){}};j.elementStyles=[],j.shadowRootOptions={mode:"open"},j[ge("elementProperties")]=new Map,j[ge("finalized")]=new Map,tr?.({ReactiveElement:j}),(Ce.reactiveElementVersions??=[]).push("2.1.2");var Fe=globalThis,mt=s=>s,Ne=Fe.trustedTypes,vt=Ne?Ne.createPolicy("lit-html",{createHTML:s=>s}):void 0,bt="$lit$",X=`lit$${Math.random().toFixed(9).slice(2)}$`,xt="?"+X,rr=`<${xt}>`,D=document,be=()=>D.createComment(""),xe=s=>s===null||typeof s!="object"&&typeof s!="function",Je=Array.isArray,ir=s=>Je(s)||typeof s?.[Symbol.iterator]=="function",Ye=`[
|
|
481
|
+
\f\r]`,ye=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,ut=/-->/g,ft=/>/g,Z=RegExp(`>|${Ye}(?:([^\\s"'>=/]+)(${Ye}*=${Ye}*(?:[^
|
|
482
|
+
\f\r"'\`<>=]|("|')|))|$)`,"g"),gt=/'/g,kt=/"/g,_t=/^(?:script|style|textarea|title)$/i,Ze=s=>(t,...e)=>({_$litType$:s,strings:t,values:e}),c=Ze(1),Ur=Ze(2),Rr=Ze(3),ee=Symbol.for("lit-noChange"),w=Symbol.for("lit-nothing"),yt=new WeakMap,Q=D.createTreeWalker(D,129);function wt(s,t){if(!Je(s)||!s.hasOwnProperty("raw"))throw Error("invalid template strings array");return vt!==void 0?vt.createHTML(t):t}var sr=(s,t)=>{let e=s.length-1,r=[],i,a=t===2?"<svg>":t===3?"<math>":"",n=ye;for(let d=0;d<e;d++){let h=s[d],v,g,f=-1,x=0;for(;x<h.length&&(n.lastIndex=x,g=n.exec(h),g!==null);)x=n.lastIndex,n===ye?g[1]==="!--"?n=ut:g[1]!==void 0?n=ft:g[2]!==void 0?(_t.test(g[2])&&(i=RegExp("</"+g[2],"g")),n=Z):g[3]!==void 0&&(n=Z):n===Z?g[0]===">"?(n=i??ye,f=-1):g[1]===void 0?f=-2:(f=n.lastIndex-g[2].length,v=g[1],n=g[3]===void 0?Z:g[3]==='"'?kt:gt):n===kt||n===gt?n=Z:n===ut||n===ft?n=ye:(n=Z,i=void 0);let $=n===Z&&s[d+1].startsWith("/>")?" ":"";a+=n===ye?h+rr:f>=0?(r.push(v),h.slice(0,f)+bt+h.slice(f)+X+$):h+X+(f===-2?d:$)}return[wt(s,a+(s[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),r]},_e=class s{constructor({strings:t,_$litType$:e},r){let i;this.parts=[];let a=0,n=0,d=t.length-1,h=this.parts,[v,g]=sr(t,e);if(this.el=s.createElement(v,r),Q.currentNode=this.el.content,e===2||e===3){let f=this.el.content.firstChild;f.replaceWith(...f.childNodes)}for(;(i=Q.nextNode())!==null&&h.length<d;){if(i.nodeType===1){if(i.hasAttributes())for(let f of i.getAttributeNames())if(f.endsWith(bt)){let x=g[n++],$=i.getAttribute(f).split(X),T=/([.?@])?(.*)/.exec(x);h.push({type:1,index:a,name:T[2],strings:$,ctor:T[1]==="."?Ve:T[1]==="?"?Xe:T[1]==="@"?Ge:ae}),i.removeAttribute(f)}else f.startsWith(X)&&(h.push({type:6,index:a}),i.removeAttribute(f));if(_t.test(i.tagName)){let f=i.textContent.split(X),x=f.length-1;if(x>0){i.textContent=Ne?Ne.emptyScript:"";for(let $=0;$<x;$++)i.append(f[$],be()),Q.nextNode(),h.push({type:2,index:++a});i.append(f[x],be())}}}else if(i.nodeType===8)if(i.data===xt)h.push({type:2,index:a});else{let f=-1;for(;(f=i.data.indexOf(X,f+1))!==-1;)h.push({type:7,index:a}),f+=X.length-1}a++}}static createElement(t,e){let r=D.createElement("template");return r.innerHTML=t,r}};function oe(s,t,e=s,r){if(t===ee)return t;let i=r!==void 0?e._$Co?.[r]:e._$Cl,a=xe(t)?void 0:t._$litDirective$;return i?.constructor!==a&&(i?._$AO?.(!1),a===void 0?i=void 0:(i=new a(s),i._$AT(s,e,r)),r!==void 0?(e._$Co??=[])[r]=i:e._$Cl=i),i!==void 0&&(t=oe(s,i._$AS(s,t.values),i,r)),t}var We=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:r}=this._$AD,i=(t?.creationScope??D).importNode(e,!0);Q.currentNode=i;let a=Q.nextNode(),n=0,d=0,h=r[0];for(;h!==void 0;){if(n===h.index){let v;h.type===2?v=new we(a,a.nextSibling,this,t):h.type===1?v=new h.ctor(a,h.name,h.strings,this,t):h.type===6&&(v=new Ke(a,this,t)),this._$AV.push(v),h=r[++d]}n!==h?.index&&(a=Q.nextNode(),n++)}return Q.currentNode=D,i}p(t){let e=0;for(let r of this._$AV)r!==void 0&&(r.strings!==void 0?(r._$AI(t,r,e),e+=r.strings.length-2):r._$AI(t[e])),e++}},we=class s{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,r,i){this.type=2,this._$AH=w,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=r,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=oe(this,t,e),xe(t)?t===w||t==null||t===""?(this._$AH!==w&&this._$AR(),this._$AH=w):t!==this._$AH&&t!==ee&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):ir(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==w&&xe(this._$AH)?this._$AA.nextSibling.data=t:this.T(D.createTextNode(t)),this._$AH=t}$(t){let{values:e,_$litType$:r}=t,i=typeof r=="number"?this._$AC(t):(r.el===void 0&&(r.el=_e.createElement(wt(r.h,r.h[0]),this.options)),r);if(this._$AH?._$AD===i)this._$AH.p(e);else{let a=new We(i,this),n=a.u(this.options);a.p(e),this.T(n),this._$AH=a}}_$AC(t){let e=yt.get(t.strings);return e===void 0&&yt.set(t.strings,e=new _e(t)),e}k(t){Je(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,r,i=0;for(let a of t)i===e.length?e.push(r=new s(this.O(be()),this.O(be()),this,this.options)):r=e[i],r._$AI(a),i++;i<e.length&&(this._$AR(r&&r._$AB.nextSibling,i),e.length=i)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t!==this._$AB;){let r=mt(t).nextSibling;mt(t).remove(),t=r}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},ae=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,r,i,a){this.type=1,this._$AH=w,this._$AN=void 0,this.element=t,this.name=e,this._$AM=i,this.options=a,r.length>2||r[0]!==""||r[1]!==""?(this._$AH=Array(r.length-1).fill(new String),this.strings=r):this._$AH=w}_$AI(t,e=this,r,i){let a=this.strings,n=!1;if(a===void 0)t=oe(this,t,e,0),n=!xe(t)||t!==this._$AH&&t!==ee,n&&(this._$AH=t);else{let d=t,h,v;for(t=a[0],h=0;h<a.length-1;h++)v=oe(this,d[r+h],e,h),v===ee&&(v=this._$AH[h]),n||=!xe(v)||v!==this._$AH[h],v===w?t=w:t!==w&&(t+=(v??"")+a[h+1]),this._$AH[h]=v}n&&!i&&this.j(t)}j(t){t===w?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},Ve=class extends ae{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===w?void 0:t}},Xe=class extends ae{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==w)}},Ge=class extends ae{constructor(t,e,r,i,a){super(t,e,r,i,a),this.type=5}_$AI(t,e=this){if((t=oe(this,t,e,0)??w)===ee)return;let r=this._$AH,i=t===w&&r!==w||t.capture!==r.capture||t.once!==r.once||t.passive!==r.passive,a=t!==w&&(r===w||i);i&&this.element.removeEventListener(this.name,this,r),a&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},Ke=class{constructor(t,e,r){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=r}get _$AU(){return this._$AM._$AU}_$AI(t){oe(this,t)}};var or=Fe.litHtmlPolyfillSupport;or?.(_e,we),(Fe.litHtmlVersions??=[]).push("3.3.3");var Et=(s,t,e)=>{let r=e?.renderBefore??t,i=r._$litPart$;if(i===void 0){let a=e?.renderBefore??null;r._$litPart$=i=new we(t.insertBefore(be(),a),a,void 0,e??{})}return i._$AI(s),i};var Qe=globalThis,p=class extends j{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=Et(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return ee}};p._$litElement$=!0,p.finalized=!0,Qe.litElementHydrateSupport?.({LitElement:p});var ar=Qe.litElementPolyfillSupport;ar?.({LitElement:p});(Qe.litElementVersions??=[]).push("4.2.2");var u=s=>(t,e)=>{e!==void 0?e.addInitializer(()=>{customElements.define(s,t)}):customElements.define(s,t)};var nr={attribute:!0,type:String,converter:ke,reflect:!1,hasChanged:Pe},lr=(s=nr,t,e)=>{let{kind:r,metadata:i}=e,a=globalThis.litPropertyMetadata.get(i);if(a===void 0&&globalThis.litPropertyMetadata.set(i,a=new Map),r==="setter"&&((s=Object.create(s)).wrapped=!0),a.set(e.name,s),r==="accessor"){let{name:n}=e;return{set(d){let h=t.get.call(this);t.set.call(this,d),this.requestUpdate(n,h,s,!0,d)},init(d){return d!==void 0&&this.C(n,void 0,s,d),d}}}if(r==="setter"){let{name:n}=e;return function(d){let h=this[n];t.call(this,d),this.requestUpdate(n,h,s,!0,d)}}throw Error("Unsupported decorator location: "+r)};function l(s){return(t,e)=>typeof e=="object"?lr(s,t,e):((r,i,a)=>{let n=i.hasOwnProperty(a);return i.constructor.createProperty(a,r),n?Object.getOwnPropertyDescriptor(i,a):void 0})(s,t,e)}function N(s){return l({...s,state:!0,attribute:!1})}var z=class extends p{constructor(){super(...arguments);this.current=0;this.step=0;this.blank=null;this.overview=!1;this.transition=null;this.autoplay=0;this.loop=!1;this.swipe=!1;this.slides=[];this.chapters=[];this._overviewTeardown=null;this._transitionLoaded=!1;this._autoplayTimer=null;this._autoplayPaused=!1;this._swipeStartX=0;this._swipeStartY=0;this._swipePointerId=null;this._onHoverEnter=()=>{this._autoplayPaused=!0,this._stopAutoplay()};this._onHoverLeave=()=>{this._autoplayPaused=!1,this.autoplay>0&&this._startAutoplay()};this._onPointerDown=e=>{!this.swipe||e.pointerType==="mouse"&&e.button!==0||e.target?.closest("a, button, input, textarea, [contenteditable]")||(this._swipePointerId=e.pointerId,this._swipeStartX=e.clientX,this._swipeStartY=e.clientY)};this._onPointerUp=e=>{if(this._swipePointerId===null||e.pointerId!==this._swipePointerId)return;let r=e.clientX-this._swipeStartX,i=e.clientY-this._swipeStartY;this._swipePointerId=null,!(Math.abs(r)<60||Math.abs(r)<Math.abs(i)*2)&&(this._stopAutoplay(),r<0?this._advance():this._back(),this.autoplay>0&&!this._autoplayPaused&&this._startAutoplay())};this._onHash=()=>{this._readHash(!1)};this._onKey=e=>{if(!(e.target&&e.target.matches?.("input,textarea,[contenteditable]"))){if(this.autoplay>0&&!this._autoplayPaused&&this._startAutoplay(),this.overview){(e.key==="Escape"||e.key==="o"||e.key==="O"||e.key==="Enter")&&(e.preventDefault(),this.overview=!1);return}if(this.blank){e.preventDefault(),this.blank=null;return}if(e.key==="."||e.key==="b"||e.key==="B"){e.preventDefault(),this.blank="black";return}if(e.key===","||e.key==="w"||e.key==="W"){e.preventDefault(),this.blank="white";return}if(e.key==="?"||e.key==="h"||e.key==="H"){this._toggleHelp();return}if(e.key==="Escape"){this._closeHelp();return}if(e.key==="o"||e.key==="O"){e.preventDefault(),this.overview=!0;return}if(e.key==="p"||e.key==="P"){e.preventDefault(),this._togglePresenter();return}if(e.key==="Home"){this._goTo(0);return}if(e.key==="End"){this._goTo(this.slides.length-1);return}if(e.key===" "||e.key==="PageDown"){e.preventDefault(),this._advance();return}if(e.key==="PageUp"){e.preventDefault(),this._back();return}if(this._has2DNav()){let{c:r,i}=this._coords(this.current);if(e.key==="ArrowRight"){e.preventDefault(),r+1<this.chapters.length?this._goToCoords(r+1,0):this._advance();return}if(e.key==="ArrowLeft"){e.preventDefault(),r-1>=0?this._goToCoords(r-1,0):this._back();return}if(e.key==="ArrowDown"){e.preventDefault();let a=this.chapters[r];a&&i+1<a.slides.length?this._goToCoords(r,i+1):this._advance();return}if(e.key==="ArrowUp"){e.preventDefault(),i-1>=0?this._goToCoords(r,i-1):this._back();return}}else{if(e.key==="ArrowRight"||e.key==="ArrowDown"){e.preventDefault(),this._advance();return}if(e.key==="ArrowLeft"||e.key==="ArrowUp"){e.preventDefault(),this._back();return}}}}}firstUpdated(){this.slides=Array.from(this.querySelectorAll(":scope > *")).filter(e=>e.tagName?.toLowerCase().startsWith("deck-")&&e.tagName?.toLowerCase()!=="deck-root"),this._buildChapters(),this._readHash(!0),this._applyActive(),this._applyStep(),this._updateUI(),this.requestUpdate(),window.addEventListener("keydown",this._onKey),window.addEventListener("hashchange",this._onHash),this.autoplay>0&&this._startAutoplay(),this.swipe?(this.addEventListener("pointerdown",this._onPointerDown),this.addEventListener("pointerup",this._onPointerUp),this.addEventListener("pointercancel",this._onPointerUp),this.addEventListener("mouseenter",this._onHoverEnter),this.addEventListener("mouseleave",this._onHoverLeave)):this.autoplay>0&&(this.addEventListener("mouseenter",this._onHoverEnter),this.addEventListener("mouseleave",this._onHoverLeave))}disconnectedCallback(){super.disconnectedCallback(),window.removeEventListener("keydown",this._onKey),window.removeEventListener("hashchange",this._onHash),this._stopAutoplay(),this.removeEventListener("pointerdown",this._onPointerDown),this.removeEventListener("pointerup",this._onPointerUp),this.removeEventListener("pointercancel",this._onPointerUp),this.removeEventListener("mouseenter",this._onHoverEnter),this.removeEventListener("mouseleave",this._onHoverLeave)}_startAutoplay(){this._stopAutoplay(),!(this.autoplay<=0||this._autoplayPaused)&&(this._autoplayTimer=window.setInterval(()=>this._autoTick(),this.autoplay))}_stopAutoplay(){this._autoplayTimer!==null&&(window.clearInterval(this._autoplayTimer),this._autoplayTimer=null)}_autoTick(){if(this.overview)return;this.current>=this.slides.length-1&&this.step>=this._maxSteps()&&this.loop?this._goTo(0):this._advance()}_buildChapters(){this.chapters=[];let e=null;this.slides.forEach((r,i)=>{r.tagName?.toLowerCase()==="deck-section"||!e?(e={startIdx:i,slides:[r]},this.chapters.push(e)):e.slides.push(r)})}_has2DNav(){return this.chapters.some(e=>e.slides.length>1)&&this.chapters.length>1}_coords(e){for(let r=0;r<this.chapters.length;r++){let i=this.chapters[r],a=e-i.startIdx;if(a>=0&&a<i.slides.length)return{c:r,i:a}}return{c:0,i:0}}_flatFromCoords(e,r){let i=this.chapters[e];return i?i.startIdx+Math.max(0,Math.min(i.slides.length-1,r)):0}_readHash(e){let r=location.hash,i=r.match(/^#(\d+)\.(\d+)(?:s(\d+))?$/),a=r.match(/^#(\d+)(?:\.(\d+))?$/),n=this.current,d=this.step;if(this._has2DNav()&&i){let h=parseInt(i[1],10)-1,v=parseInt(i[2],10)-1;n=this._flatFromCoords(Math.max(0,h),Math.max(0,v)),d=i[3]?parseInt(i[3],10):0}else if(a)n=parseInt(a[1],10)-1,d=a[2]?parseInt(a[2],10):0;else return;n===this.current&&d===this.step&&!e||(this.current=Math.max(0,Math.min(this.slides.length-1,n)),this.step=Math.max(0,d),e||(this._applyActive(),this._applyStep(),this._updateUI()))}_writeHash(){let e=`#${this.current+1}`+(this.step>0?`.${this.step}`:"");location.hash!==e&&history.replaceState(null,"",e)}async _toggleHelp(){(await Promise.resolve().then(()=>(et(),De))).toggleHelp(this)}async _togglePresenter(){(await Promise.resolve().then(()=>(Mt(),zt))).installPresenter(this)}async _closeHelp(){(await Promise.resolve().then(()=>(et(),De))).closeHelp(this)}async _renderOverviewIfActive(){if(!this.overview){this._overviewTeardown?.(),this._overviewTeardown=null;return}let{mountOverview:e}=await Promise.resolve().then(()=>(It(),Nt));this._overviewTeardown=e(this,{slides:this.slides,chapters:this.chapters,currentIdx:this.current,onPick:r=>{this.overview=!1,this._goTo(r)}})}_maxSteps(){let e=this.slides[this.current];if(!e)return 0;let r=parseInt(e.getAttribute("steps")||e.dataset?.steps||"0",10);if(r>0)return r;let i=e.querySelector("deck-code[step-groups]");if(i)try{return JSON.parse(i.getAttribute("step-groups")).length}catch{}return 0}_advance(){let e=this._maxSteps();this.step<e?(this.step++,this._applyStep(),this._updateUI(),this._writeHash()):this.current<this.slides.length-1?this._goTo(this.current+1):this.loop&&this._goTo(0)}_back(){this.step>0?(this.step--,this._applyStep(),this._updateUI(),this._writeHash()):this.current>0?(this._goTo(this.current-1),this.step=this._maxSteps(),this._applyStep(),this._updateUI(),this._writeHash()):this.loop&&(this._goTo(this.slides.length-1),this.step=this._maxSteps(),this._applyStep(),this._updateUI(),this._writeHash())}_goTo(e){this.current=Math.max(0,Math.min(this.slides.length-1,e)),this.step=0,this._applyActive(),this._applyStep(),this._updateUI(),this._writeHash()}_goToCoords(e,r){let i=Math.max(0,Math.min(this.chapters.length-1,e)),a=this.chapters[i];if(!a)return;let n=Math.max(0,Math.min(a.slides.length-1,r));this._goTo(this._flatFromCoords(i,n))}_applyActive(){let e=this.slides.find(i=>i.hasAttribute("active"))??null,r=this.slides[this.current]??null;this.slides.forEach((i,a)=>{let n=a===this.current;i.toggleAttribute("active",n),n&&i.querySelectorAll("deck-mermaid").forEach(d=>d.render?.())}),this.transition&&!this._transitionLoaded&&(this._transitionLoaded=!0,Promise.resolve().then(()=>(Rt(),Ut)).then(i=>i.installTransitions(this))),e!==r&&this.dispatchEvent(new CustomEvent("slide-change",{detail:{current:r,previous:e},bubbles:!1}))}_applyStep(){let e=this.slides[this.current];e&&(e.applyStep?.(this.step),e.querySelectorAll("*").forEach(r=>r.applyStep?.(this.step)),e.querySelectorAll("[data-step-block]").forEach(r=>{let i=parseInt(r.dataset.stepBlock,10);r.style.transition="opacity 0.25s ease",r.style.opacity=this.step===0||i<=this.step?"1":"0.15"}))}_updateUI(){let e=this.slides.length,r=this.current+1,i=this.renderRoot.querySelector("#progress"),a=this.renderRoot.querySelector("#counter"),n=this.renderRoot.querySelector("#step-dots");i&&(i.style.width=r/e*100+"%"),a&&(a.textContent=`${r} / ${e}`);let d=this._maxSteps();n&&(n.innerHTML=d===0?"":Array.from({length:d},(h,v)=>`<div class="dot${v<this.step?" active":""}"></div>`).join(""))}updated(){this._updateUI(),this._renderOverviewIfActive()}render(){return c`<div id="progress"></div> <div id="counter"></div> <div id="step-dots"></div> <div id="kb-hint"> <kbd>←</kbd><kbd>→</kbd> ${this._has2DNav()?c`<kbd>↑</kbd><kbd>↓</kbd>`:""}
|
|
483
|
+
<span>·</span>
|
|
484
|
+
<kbd>O</kbd>
|
|
485
|
+
<span>·</span>
|
|
486
|
+
<kbd>P</kbd>
|
|
487
|
+
<span>·</span>
|
|
488
|
+
<kbd>?</kbd>
|
|
489
|
+
</div>
|
|
490
|
+
<slot></slot>
|
|
491
|
+
${this.blank?c`<div id="blank" data-tone="${this.blank}" @click=${()=>{this.blank=null}}></div>`:""}
|
|
492
|
+
`}};z.styles=m`:host{display:block;width:100vw;height:100vh;position:relative;background:var(--deck-root-bg,var(--rik-surface-page))}#progress{position:fixed;bottom:0;left:0;height:var(--deck-root-progress-height,3px);background:var(--deck-root-progress-color,linear-gradient(90deg,var(--rik-accent),var(--rik-accent--soft)));transition:width 0.25s ease;z-index:100}#counter{position:fixed;bottom:1rem;right:1.5rem;font-size:var(--rik-font-size-xs);color:var(--deck-root-counter-color,var(--rik-text-default--faint));font-family:var(--rik-font-mono);z-index:100}#step-dots{position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:100}.dot{width:6px;height:6px;border-radius:50%;background:var(--deck-root-dot-bg,#d4d4d0);transition:background 0.2s}.dot.active{background:var(--deck-root-dot-active-bg,var(--rik-accent))}#kb-hint{position:fixed;bottom:1rem;left:1.5rem;display:inline-flex;align-items:center;gap:6px;font:600 0.62rem/1 var(--rik-font-mono);color:var(--deck-root-kb-hint-color,var(--rik-text-default--faint));z-index:100;opacity:0.5;transition:opacity 0.2s ease;cursor:help}#kb-hint:hover{opacity:1}#kb-hint kbd{background:var(--rik-surface-raised);border:1px solid var(--rik-border-default);border-bottom:2px solid var(--rik-border-default);border-radius:4px;padding:2px 6px;color:var(--rik-text-default);font:inherit;min-width:16px;text-align:center}#kb-hint .sep{opacity:0.4}#blank{position:fixed;inset:0;z-index:9999;cursor:pointer}#blank[data-tone="black"]{background:#000}#blank[data-tone="white"]{background:#fff}`,o([N()],z.prototype,"current",2),o([N()],z.prototype,"step",2),o([N()],z.prototype,"blank",2),o([l({type:Boolean,reflect:!0})],z.prototype,"overview",2),o([l({type:String,reflect:!0})],z.prototype,"transition",2),o([l({type:Number,reflect:!0})],z.prototype,"autoplay",2),o([l({type:Boolean,reflect:!0})],z.prototype,"loop",2),o([l({type:Boolean,reflect:!0})],z.prototype,"swipe",2),z=o([u("deck-root")],z);var tt=m`:host{display:none;position:absolute;inset:0;padding:var(--rik-slide-padding-y) var(--rik-slide-padding-x);flex-direction:column;overflow:hidden;background:var(--rik-surface-page);font-family:var(--rik-font-sans);color:var(--rik-text-default)}:host([active]){display:flex}`,Er=m`h1{font-size:var(--rik-font-size-h1);font-weight:700;color:var(--rik-text-default);letter-spacing:-0.022em;line-height:1.15;margin-bottom:var(--rik-space-4);padding-bottom:var(--rik-space-2);border-bottom:3px solid var(--rik-accent);display:inline-block;align-self:flex-start;flex:0 0 auto}h1 .accent{color:var(--rik-accent)}::slotted(p),p{font-size:var(--rik-font-size-body);line-height:1.65;color:var(--rik-text-default--muted);margin:0}::slotted(strong),strong{color:var(--rik-text-default);font-weight:700}::slotted(code),code{font-family:var(--rik-font-mono);font-size:var(--rik-font-size-mono-sm);background:rgba(0,0,0,0.06);padding:2px 6px;border-radius:var(--rik-radius-sm);color:var(--rik-text-default)}`,$r=m`.lbl{display:inline-block;padding:var(--deck-eyebrow-padding-y,4px) var(--deck-eyebrow-padding-x,12px);background:var(--deck-eyebrow-bg,var(--rik-accent));color:var(--deck-eyebrow-color,var(--rik-accent__on,var(--rik-surface-inverse)));border-radius:var(--deck-eyebrow-radius,var(--rik-radius-pill));font-size:var(--rik-font-size-xs);font-weight:700;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:var(--rik-space-1);align-self:flex-start}.lead{font-size:var(--rik-font-size-lead);color:var(--rik-text-default--faint);line-height:1.5;margin-bottom:var(--rik-space-4);max-width:75ch;flex:0 0 auto}.kicker{font-size:var(--rik-font-size-xs);font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--rik-text-default--faint);margin-bottom:var(--rik-space-3);display:block}.kicker.on-dark{color:rgba(255,255,255,0.35)}.caption{font-size:var(--rik-font-size-sm);color:var(--rik-text-default--faint);line-height:1.55}.caption.on-dark{color:rgba(255,255,255,0.5)}.col-label{font-size:var(--rik-font-size-xs);font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--rik-text-default--faint);margin-bottom:var(--rik-space-2)}`,C=[tt,Er,$r];var E=class extends p{render(){let t=(this.brand??"").split("\xB7").map(n=>n.trim()).filter(Boolean),e=t[0]??"",r=t.slice(1).join(" \xB7 "),i=[this.speaker&&{l:this.speakerLabel??"Pr\xE9sent\xE9 par",v:this.speaker},this.company&&{l:this.companyLabel??"Entreprise",v:this.company},this.duration&&{l:this.durationLabel??"Dur\xE9e",v:this.duration},this.audience&&{l:this.audienceLabel??"Audience",v:this.audience},this.runtime&&{l:this.runtimeLabel??"Runtime",v:this.runtime}].filter(n=>!!n),a=!!this.brandSrc;return c`<div class="brand" part="brand"> ${a?c`<span class="brand-tile"><img src="${this.brandSrc}" alt="${e}"></span>`:""}
|
|
493
|
+
${e?c`<span class="brand-name">${e}</span>`:""}
|
|
494
|
+
${r?c`<span class="brand-context">${r}</span>`:""}
|
|
495
|
+
</div>
|
|
496
|
+
<slot></slot>
|
|
497
|
+
${i.length?c`<div class="meta" part="meta"> ${i.map(n=>c`
|
|
498
|
+
<div class="meta-item"><strong>${n.l}</strong><span>${n.v}</span></div>
|
|
499
|
+
`)}
|
|
500
|
+
</div>`:""}
|
|
501
|
+
`}};E.styles=[...C,m`:host{background:var(--deck-cover-bg,var(--rik-surface-inverse));justify-content:center;color:var(--deck-cover-text,var(--rik-text-inverse))}.brand{display:inline-flex;align-items:center;gap:var(--rik-space-3);margin-bottom:var(--rik-space-5);align-self:flex-start}.brand-tile{width:64px;height:64px;display:inline-flex;align-items:center;justify-content:center}.brand-tile img{width:100%;height:100%;display:block}.brand-name{font-family:var(--rik-font-display,inherit);font-size:var(--rik-font-size-xs);font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--deck-cover-soft,var(--rik-text-inverse--muted))}.brand-context{font-size:var(--rik-font-size-xs);font-weight:700;color:var(--deck-cover-muted,var(--rik-text-inverse--faint));letter-spacing:0.2em;text-transform:uppercase;padding-left:var(--rik-space-3);border-left:1px solid var(--deck-cover-border,var(--rik-border-inverse))}::slotted(h1){font-size:clamp(3.6rem,9vw,8.5rem);font-weight:900;color:var(--deck-cover-text,var(--rik-text-inverse));line-height:1.02;letter-spacing:-0.035em;margin-bottom:var(--rik-space-4);border:none;padding:0}::slotted(.sub){font-size:var(--rik-font-size-h2);color:var(--deck-cover-muted,var(--rik-text-inverse--faint));margin-bottom:var(--rik-space-6);max-width:60ch;line-height:1.45;display:block}.meta{display:flex;gap:var(--rik-space-6);border-top:1px solid var(--deck-cover-border,var(--rik-border-inverse));padding-top:var(--rik-space-4)}.meta-item strong{display:block;font-size:var(--rik-font-size-xs);letter-spacing:0.12em;text-transform:uppercase;color:var(--deck-cover-faint,var(--rik-text-inverse--ghost));margin-bottom:6px;font-weight:700}.meta-item span{color:var(--deck-cover-text,var(--rik-text-inverse));font-size:var(--rik-font-size-body);font-weight:600}`],o([l({type:String})],E.prototype,"brand",2),o([l({type:String,attribute:"brand-src"})],E.prototype,"brandSrc",2),o([l({type:String})],E.prototype,"speaker",2),o([l({type:String})],E.prototype,"company",2),o([l({type:String})],E.prototype,"duration",2),o([l({type:String})],E.prototype,"audience",2),o([l({type:String})],E.prototype,"runtime",2),o([l({type:String,attribute:"speaker-label"})],E.prototype,"speakerLabel",2),o([l({type:String,attribute:"company-label"})],E.prototype,"companyLabel",2),o([l({type:String,attribute:"duration-label"})],E.prototype,"durationLabel",2),o([l({type:String,attribute:"audience-label"})],E.prototype,"audienceLabel",2),o([l({type:String,attribute:"runtime-label"})],E.prototype,"runtimeLabel",2),E=o([u("deck-cover")],E);var le=class extends p{render(){return c`${this.num?c`<div class="sec-num" part="num">${this.num}</div>`:""}
|
|
502
|
+
<slot></slot>
|
|
503
|
+
`}};le.styles=[...C,m`:host{background:var(--deck-section-bg,var(--rik-surface-inverse));color:var(--rik-text-inverse);justify-content:center;align-items:center;text-align:center}.sec-num{font-size:var(--rik-font-size-xs);font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--deck-section-num-color,var(--rik-text-inverse--ghost));margin-bottom:var(--rik-space-3);display:inline-flex;align-items:center;gap:0.8rem;font-family:var(--rik-font-mono)}.sec-num::before,.sec-num::after{content:'';width:32px;height:1px;background:var(--deck-section-rule-color,var(--rik-border-inverse))}::slotted(h1){font-size:var(--rik-font-size-section);font-weight:900;color:var(--deck-section-title-color,var(--rik-accent));line-height:1.02;letter-spacing:-0.03em;max-width:18ch;border:none;padding:0;margin:0;text-align:center;align-self:center}::slotted(h1 em){color:var(--deck-section-em-color,var(--rik-text-inverse--muted));font-style:normal;font-weight:700}`],o([l({type:String})],le.prototype,"num",2),le=o([u("deck-section")],le);var de=class extends p{render(){return c`${this.eyebrow?c`<span class="lbl">${this.eyebrow}</span>`:""}
|
|
504
|
+
<slot name="title"></slot>
|
|
505
|
+
<slot name="lead"></slot>
|
|
506
|
+
<div class="body" part="body"><slot></slot></div>
|
|
507
|
+
`}};de.styles=[...C,m`:host{justify-content:flex-start}.body{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:flex-start;gap:var(--rik-space-3);overflow:hidden}::slotted(deck-code:not([nested])),::slotted(deck-mermaid),::slotted(table),::slotted(pre),::slotted(svg),::slotted(.hero-main){max-height:100%;flex:0 1 auto}`],o([l({type:String})],de.prototype,"eyebrow",2),de=o([u("deck-feature")],de);var B=class extends p{_resolveSp(t){let e=parseInt(t,10);return!Number.isNaN(e)&&e>=1&&e<=6?`var(--rik-space-${e})`:t}updated(){this.gap&&this.style.setProperty("--_gap",this._resolveSp(this.gap)),this.colGap&&this.style.setProperty("--_col-gap",this._resolveSp(this.colGap))}render(){let t=this.querySelector('[slot="a"]'),e=this.cols==="3"||!!t;return c`${this.eyebrow?c`<span class="lbl">${this.eyebrow}</span>`:""}
|
|
508
|
+
<slot name="title"></slot>
|
|
509
|
+
<slot name="lead"></slot>
|
|
510
|
+
<div class="body" part="body">
|
|
511
|
+
${e?c`<div class="col" part="col"><slot name="a"></slot></div> <div class="col" part="col"><slot name="b"></slot></div> <div class="col" part="col"><slot name="c"></slot></div>`:c`<div class="col" part="col"><slot name="left"></slot></div> <div class="col" part="col"><slot name="right"></slot></div>`}
|
|
512
|
+
</div>
|
|
513
|
+
`}};B.styles=[...C,m`:host{justify-content:flex-start}.body{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr);gap:var(--_gap,var(--deck-split-gap,var(--rik-space-5)))}:host([cols="1-2"]) .body{grid-template-columns:1fr 2fr}:host([cols="2-1"]) .body{grid-template-columns:2fr 1fr}:host([cols="3"]) .body{grid-template-columns:1fr 1fr 1fr;gap:var(--_gap,var(--deck-split-gap,var(--rik-space-4)))}.col{display:flex;flex-direction:column;min-height:0;min-width:0;gap:var(--_col-gap,var(--deck-split-col-gap,var(--rik-space-3)));overflow:hidden}.col.center{justify-content:center}`],o([l({type:String})],B.prototype,"eyebrow",2),o([l({type:String})],B.prototype,"cols",2),o([l({type:String})],B.prototype,"gap",2),o([l({type:String,attribute:"col-gap"})],B.prototype,"colGap",2),B=o([u("deck-split")],B);var ce=class extends p{render(){return c`${this.eyebrow?c`<span class="lbl">${this.eyebrow}</span>`:""}
|
|
514
|
+
<slot name="title"></slot>
|
|
515
|
+
<slot name="lead"></slot>
|
|
516
|
+
<div class="hero" part="hero"><slot></slot></div>
|
|
517
|
+
<div class="detail" part="detail">
|
|
518
|
+
<div class="col"><slot name="left"></slot></div>
|
|
519
|
+
<div class="col"><slot name="right"></slot></div>
|
|
520
|
+
</div>
|
|
521
|
+
`}};ce.styles=[...C,m`:host{justify-content:flex-start}.hero{flex:var(--deck-feature-cards-hero-flex,1 1 50%);min-height:0;display:flex;flex-direction:column;overflow:hidden}::slotted(deck-code),::slotted(deck-mermaid),::slotted(pre),::slotted(table),::slotted(svg){max-height:100%;flex:1 1 auto}.detail{flex:var(--deck-feature-cards-detail-flex,0 1 40%);min-height:0;margin-top:var(--deck-feature-cards-gap,var(--rik-space-3));display:grid;grid-template-columns:1fr 1fr;gap:var(--deck-feature-cards-col-gap,var(--rik-space-4));overflow:hidden}.col{display:flex;flex-direction:column;gap:var(--rik-space-2);min-width:0;min-height:0;overflow:hidden}`],o([l({type:String})],ce.prototype,"eyebrow",2),ce=o([u("deck-feature-cards")],ce);var O=class extends p{updated(){this.position&&this.style.setProperty("--_pos",this.position),typeof this.darken=="number"&&this.style.setProperty("--_dim",String(this.darken));let t=this.align==="top"?"flex-start":this.align==="bottom"?"flex-end":"center";if(this.style.setProperty("--_align",t),this.textAlign){this.style.setProperty("--_text-align",this.textAlign);let e=this.textAlign==="center"?"center":this.textAlign==="right"?"flex-end":"flex-start";this.style.setProperty("--_text-align-items",e)}}render(){let t=this.src?`background-image: url("${this.src.replace(/"/g,"%22")}")`:"";return c`<div class="bg" part="bg" style=${t}></div> <div class="overlay" part="overlay"></div> <div class="content" part="content"><slot></slot></div>`}};O.styles=[tt,m`:host{padding:0;color:var(--deck-photo-text-color,var(--rik-text-inverse));overflow:hidden}.bg{position:absolute;inset:0;background-size:cover;background-position:var(--_pos,center);background-repeat:no-repeat}.overlay{position:absolute;inset:0;background:var(--deck-photo-overlay-color,rgba(0,0,0,var(--_dim,0.35)))}.content{position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--rik-space-3);padding:var(--deck-photo-padding-y,var(--rik-slide-padding-y)) var(--deck-photo-padding-x,var(--rik-slide-padding-x));width:100%;height:100%;max-width:100%;box-sizing:border-box;justify-content:var(--_align,center);text-align:var(--_text-align,left);align-items:var(--_text-align-items,flex-start)}.content > *{max-width:var(--deck-photo-content-max-width,36ch)}::slotted(h1){font-family:var(--rik-font-display,var(--rik-font-sans));font-size:clamp(2.5rem,6vw,5.5rem);font-weight:900;letter-spacing:-0.035em;line-height:1.02;color:var(--deck-photo-text-color,var(--rik-text-inverse));margin:0;text-shadow:0 2px 16px rgba(0,0,0,0.35)}::slotted(h2){font-family:var(--rik-font-display,var(--rik-font-sans));font-size:clamp(1.6rem,3vw,2.6rem);font-weight:800;letter-spacing:-0.025em;line-height:1.1;color:var(--deck-photo-text-color,var(--rik-text-inverse));margin:0;text-shadow:0 2px 12px rgba(0,0,0,0.35)}::slotted(p),::slotted(.sub){font-size:var(--rik-font-size-lead);color:var(--deck-photo-text-muted,var(--rik-text-inverse--muted));line-height:1.5;margin:0;text-shadow:0 1px 8px rgba(0,0,0,0.35)}::slotted(.kicker){font:700 var(--rik-font-size-xs)/1 var(--rik-font-mono);letter-spacing:0.18em;text-transform:uppercase;color:var(--deck-photo-text-muted,var(--rik-text-inverse--muted));margin:0}`],o([l({type:String})],O.prototype,"src",2),o([l({type:String})],O.prototype,"position",2),o([l({type:Number})],O.prototype,"darken",2),o([l({type:String})],O.prototype,"align",2),o([l({type:String,attribute:"text-align"})],O.prototype,"textAlign",2),O=o([u("deck-photo")],O);var pe=class extends p{render(){return c`<div class="body" part="body"> ${this.kicker?c`<span class="kicker on-dark">${this.kicker}</span>`:""}
|
|
522
|
+
<slot></slot>
|
|
523
|
+
</div>
|
|
524
|
+
`}};pe.styles=[...C,m`:host{background:var(--deck-takeaway-bg,var(--rik-surface-inverse));color:var(--rik-text-inverse);justify-content:center;align-items:center;text-align:center}.body{display:flex;flex-direction:column;align-items:center;gap:var(--deck-takeaway-gap,var(--rik-space-4));max-width:75vw}::slotted(.display){font-family:var(--rik-font-display,var(--rik-font-sans));font-size:clamp(3rem,7vw,5.5rem);font-weight:900;color:var(--deck-takeaway-display-color,var(--rik-accent));letter-spacing:-0.03em;line-height:1.05;margin:0}::slotted(.display.danger){color:var(--rik-status-danger)}::slotted(.caption){font-size:var(--rik-font-size-lead);color:var(--deck-takeaway-caption-color,var(--rik-text-inverse--faint))}`],o([l({type:String})],pe.prototype,"kicker",2),pe=o([u("deck-takeaway")],pe);import{marked as jt}from"https://cdn.jsdelivr.net/npm/marked@12/+esm";jt.setOptions({gfm:!0,breaks:!1});var he=class extends p{constructor(){super(...arguments);this._html=""}connectedCallback(){super.connectedCallback(),this._parse()}_parse(){let e=this.textContent??"",r=e.split(`
|
|
525
|
+
`),i=r.filter(n=>n.trim().length>0).reduce((n,d)=>Math.min(n,d.match(/^ */)?.[0].length??0),1/0),a=i===1/0?e:r.map(n=>n.slice(i)).join(`
|
|
526
|
+
`);this._html=jt.parse(a.trim()),this.textContent=""}render(){return c`<div class="content" .innerHTML="${this._html}"></div>`}};he.styles=m`:host{display:block;color:var(--rik-text-default--muted);font-family:var(--rik-font-sans)}h1,h2,h3,h4{color:var(--rik-text-default);font-weight:700;letter-spacing:-0.01em}h2{font-size:var(--rik-font-size-h2);margin-bottom:var(--rik-space-2)}h3{font-size:var(--rik-font-size-lead);margin-bottom:var(--rik-space-2);margin-top:var(--rik-space-3)}h4{font-size:var(--rik-font-size-body);margin-bottom:var(--rik-space-1);margin-top:var(--rik-space-3)}p{font-size:var(--rik-font-size-body);line-height:1.65;margin:0 0 var(--rik-space-3)}p:last-child{margin-bottom:0}strong{color:var(--rik-text-default);font-weight:700}em{font-style:italic}code{font-family:var(--rik-font-mono);font-size:var(--rik-font-size-mono-sm);background:var(--rik-surface-tint);padding:2px 6px;border-radius:var(--rik-radius-sm);color:var(--rik-text-default)}pre{background:var(--deck-md-pre-bg,var(--rik-code__bg));border:1px solid var(--deck-md-pre-border,var(--rik-code__border));border-radius:var(--rik-radius-md);padding:var(--rik-space-3) var(--rik-space-4);overflow:auto;font-family:var(--rik-font-mono);font-size:var(--rik-font-size-mono);line-height:1.75;color:var(--deck-md-pre-text,var(--rik-code__text));margin:0 0 var(--rik-space-3);box-shadow:var(--rik-elevation-2)}pre code{background:none;padding:0;color:inherit;border-radius:0}ul,ol{padding-left:1.4rem;margin:0 0 var(--rik-space-3)}li{margin-bottom:var(--rik-space-1);font-size:var(--rik-font-size-body);line-height:1.55}li::marker{color:var(--rik-accent)}a{color:var(--rik-accent);text-decoration:underline;text-decoration-thickness:1px}blockquote{border-left:3px solid var(--rik-accent);padding:var(--rik-space-1) var(--rik-space-3);color:var(--rik-text-default--faint);font-style:italic;margin:0 0 var(--rik-space-3)}hr{border:none;border-top:1px solid var(--rik-border-default);margin:var(--rik-space-4) 0}.content{display:contents}`,o([N()],he.prototype,"_html",2),he=o([u("deck-md")],he);function Sr(s,t){let e=s.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">"),r=[],i=(d,h)=>{let v="P"+r.length+"E";return r.push('<span class="'+d+'">'+h+"</span>"),v};return t==="html"||t==="xml"||t==="svg"?(e=e.replace(/(<!--[\s\S]*?-->)/g,d=>i("cmt",d)),e=e.replace(/(<!doctype[^&]*>)/gi,d=>i("cmt",d)),e=e.replace(/("[^"]*"|'[^']*')/g,d=>i("str",d)),e=e.replace(/(<\/?)([a-zA-Z][a-zA-Z0-9:-]*)/g,(d,h,v)=>h+i("kw",v)),e=e.replace(/\b([a-zA-Z][a-zA-Z0-9-]*)(?==)/g,d=>i("prop",d))):t==="css"||t==="scss"||t==="less"?(e=e.replace(/(\/\*[\s\S]*?\*\/)/g,d=>i("cmt",d)),e=e.replace(/("[^"]*"|'[^']*')/g,d=>i("str",d)),e=e.replace(/([a-zA-Z-]+)(?=\s*:)/g,d=>i("prop",d)),e=e.replace(/(#[0-9a-fA-F]{3,8})\b/g,d=>i("num",d)),e=e.replace(/\b(\d+(?:\.\d+)?)(px|rem|em|%|vh|vw|vmin|vmax|s|ms|deg)?/g,(d,h,v)=>i("num",h+(v??"")))):(e=e.replace(/(\/\/[^\n]*)/g,d=>i("cmt",d)),e=e.replace(/(['"`])((?:\\.|(?!\1)[^\\])*)\1/g,d=>i("str",d)),e=e.replace(/\b(const|let|var|function|return|if|else|for|while|class|extends|new|export|import|from|as|await|async|of|in|typeof|instanceof|true|false|null|undefined)\b/g,d=>i("kw",d)),e=e.replace(/\b(\d+(?:\.\d+)?)\b/g,d=>i("num",d))),e=e.replace(/P(\d+)E/g,(d,h)=>r[+h]??""),e}var U=class extends p{constructor(){super(...arguments);this.lang="";this.hero=!1;this.nested=!1;this._html="";this._groups=null}connectedCallback(){super.connectedCallback(),this._highlight();try{this._groups=JSON.parse(this.getAttribute("step-groups")??"null")}catch{this._groups=null}}_highlight(){let r=(this.textContent??"").split(`
|
|
527
|
+
`);for(;r.length&&!r[0].trim();)r.shift();for(;r.length&&!r[r.length-1].trim();)r.pop();let i=r.filter(n=>n.trim().length>0).reduce((n,d)=>Math.min(n,d.match(/^ */)?.[0].length??0),1/0),a=i===1/0?r:r.map(n=>n.slice(i));this._html=a.map((n,d)=>'<span class="line" data-line="'+(d+1)+'">'+Sr(n||" ",this.lang)+"</span>").join("")}applyStep(e){if(!this._groups)return;let r=this.shadowRoot?.querySelectorAll(".line");if(r)if(e===0)r.forEach(i=>i.classList.remove("dim","lit"));else{let i=this._groups[Math.min(e-1,this._groups.length-1)]??[];r.forEach(a=>{let n=parseInt(a.dataset.line??"0",10);a.classList.toggle("lit",i.includes(n)),a.classList.toggle("dim",!i.includes(n))})}}render(){return c`<pre><code .innerHTML="${this._html}"></code></pre>`}};U.styles=m`:host{display:block;background:var(--deck-code-bg,var(--rik-code__bg));border:1px solid var(--deck-code-border,var(--rik-code__border));border-radius:var(--deck-code-radius,var(--rik-radius-md));padding:var(--deck-code-padding-y,var(--rik-space-3)) var(--deck-code-padding-x,var(--rik-space-4));font-family:var(--rik-font-mono);font-size:var(--rik-font-size-mono);line-height:1.7;color:var(--deck-code-text,var(--rik-code__text));box-shadow:var(--rik-elevation-2);overflow:auto;white-space:pre}:host([hero]){display:flex;align-items:safe center;padding:var(--rik-space-4) var(--rik-space-5)}:host([nested]){box-shadow:none;border-radius:var(--rik-radius-sm);padding:var(--rik-space-2) var(--rik-space-3)}pre{margin:0;font:inherit;color:inherit}code{display:block;width:100%;font:inherit;color:inherit}.line{transition:opacity 0.25s ease;display:block}.line.dim{opacity:0.25}.line.lit{opacity:1}.kw{color:var(--deck-code-syntax-kw,var(--rik-code__syntax-keyword))}.fn{color:var(--deck-code-syntax-fn,var(--rik-code__syntax-function))}.str{color:var(--deck-code-syntax-str,var(--rik-code__syntax-string))}.num{color:var(--deck-code-syntax-num,var(--rik-code__syntax-number))}.cmt{color:var(--deck-code-syntax-cmt,var(--rik-code__syntax-comment));font-style:italic}.ty{color:var(--deck-code-syntax-ty,var(--rik-code__syntax-type))}.prop{color:var(--deck-code-syntax-prop,var(--rik-code__syntax-property))}`,o([l({type:String})],U.prototype,"lang",2),o([l({type:Boolean,reflect:!0})],U.prototype,"hero",2),o([l({type:Boolean,reflect:!0})],U.prototype,"nested",2),o([l({type:String,attribute:"step-groups"})],U.prototype,"stepGroups",2),o([N()],U.prototype,"_html",2),U=o([u("deck-code")],U);var Bt={info:'<circle cx="12" cy="12" r="10"/><path d="M12 16v-4"/><path d="M12 8h.01"/>',warn:'<path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"/><path d="M12 9v4"/><path d="M12 17h.01"/>',danger:'<circle cx="12" cy="12" r="10"/><path d="M12 8v4"/><path d="M12 16h.01"/>',ok:'<path d="M20 6 9 17l-5-5"/>'},me=class extends p{render(){let t=this.type??"info",e=Bt[t]??Bt.info;return c`<div class="icon-box"> <svg viewBox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" .innerHTML="${e}"></svg> </div> <div class="content"><slot></slot></div>`}};me.styles=m`:host{display:flex;gap:var(--rik-space-3);padding:var(--deck-callout-padding-y,var(--rik-space-3)) var(--deck-callout-padding-x,var(--rik-space-4));border-radius:var(--deck-callout-radius,var(--rik-radius-md));background:var(--deck-callout-bg,var(--rik-status-info__bg--mid));border:1px solid var(--deck-callout-border,var(--rik-status-info__border));box-shadow:var(--rik-elevation-2);align-items:center;color:var(--rik-text-default--muted);font-family:var(--rik-font-sans);font-size:var(--rik-font-size-body);line-height:1.55}:host([type="info"]){--deck-callout-bg:var(--rik-status-info__bg--mid);--deck-callout-border:var(--rik-status-info__border);--deck-callout-stroke:var(--rik-accent)}:host([type="warn"]){--deck-callout-bg:var(--rik-status-warn__bg);--deck-callout-border:var(--rik-status-warn__border);--deck-callout-stroke:var(--rik-status-warn)}:host([type="danger"]){--deck-callout-bg:var(--rik-status-danger__bg);--deck-callout-border:var(--rik-status-danger__border);--deck-callout-stroke:var(--rik-status-danger)}:host([type="ok"]){--deck-callout-bg:var(--rik-status-success__bg);--deck-callout-border:var(--rik-status-success__border);--deck-callout-stroke:var(--rik-status-success)}.icon-box{flex-shrink:0;width:var(--rik-icon-2xl);height:var(--rik-icon-2xl);display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--rik-surface-tint)}.icon-box svg{width:var(--rik-icon-lg);height:var(--rik-icon-lg);stroke:var(--deck-callout-stroke,var(--rik-accent));stroke-width:2.2}.content{flex:1}::slotted(p){margin:0}::slotted(strong){color:var(--rik-text-default);font-weight:700}::slotted(code){font-family:var(--rik-font-mono);font-size:var(--rik-font-size-mono-sm);background:var(--rik-surface-tint);padding:2px 6px;border-radius:var(--rik-radius-sm);color:var(--rik-text-default)}`,o([l({type:String})],me.prototype,"type",2),me=o([u("deck-callout")],me);var G=class extends p{constructor(){super(...arguments);this.center=!1;this.compact=!1}render(){return c`<slot></slot>`}};G.styles=m`:host{display:flex;flex-direction:column;gap:var(--deck-card-gap,var(--rik-space-2));background:var(--deck-card-bg,var(--rik-surface-raised--strong));border:1px solid var(--deck-card-border,var(--rik-border-default));border-radius:var(--deck-card-radius,var(--rik-radius-lg));padding:var(--deck-card-padding-y,var(--rik-space-3)) var(--deck-card-padding-x,var(--rik-space-4));box-shadow:var(--deck-card-shadow,var(--rik-elevation-2));min-height:0;font-family:var(--rik-font-sans);color:var(--deck-card-text,var(--rik-text-default--muted))}:host([color="yellow"]){background:var(--deck-card-bg,var(--rik-status-info__bg));border:4px solid var(--deck-card-border,var(--rik-status-info__border))}:host([color="orange"]){background:var(--deck-card-bg,var(--rik-status-warn__bg));border:4px solid var(--deck-card-border,var(--rik-status-warn__border))}:host([color="green"]){background:var(--deck-card-bg,var(--rik-status-success__bg));border:4px solid var(--deck-card-border,var(--rik-status-success__border))}:host([color="red"]){background:var(--deck-card-bg,var(--rik-status-danger__bg));border:4px solid var(--deck-card-border,var(--rik-status-danger__border))}::slotted(h3){font-family:var(--rik-font-display,var(--rik-font-sans));font-size:var(--rik-font-size-h2);font-weight:700;color:var(--deck-card-title-color,var(--rik-text-default));letter-spacing:-0.01em;line-height:1.25;margin:0}::slotted(p){font-size:var(--rik-font-size-body);line-height:1.55;margin:0}::slotted(strong){color:var(--rik-text-default);font-weight:700}:host([center]){text-align:center;align-items:center}:host([compact]){padding:var(--rik-space-2) var(--rik-space-3)}`,o([l({type:String})],G.prototype,"color",2),o([l({type:Boolean})],G.prototype,"center",2),o([l({type:Boolean})],G.prototype,"compact",2),G=o([u("deck-card")],G);var qt=!1;async function Ar(){qt||(window.mermaid||await new Promise((s,t)=>{let e=document.createElement("script");e.src="https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js",e.onload=()=>s(),e.onerror=()=>t(new Error("mermaid failed to load")),document.head.appendChild(e)}),window.mermaid.initialize({startOnLoad:!1,theme:"dark",themeVariables:{background:"#0f0f10",mainBkg:"#2a2a2a",nodeBorder:"#555",lineColor:"#777",textColor:"#e5e5e5",fontSize:"13px",edgeLabelBackground:"#111"},flowchart:{curve:"basis",htmlLabels:!0,padding:12},securityLevel:"loose"}),qt=!0)}var Tr=0,te=class extends p{constructor(){super(...arguments);this.rendered=!1;this._svg="";this._source=""}connectedCallback(){super.connectedCallback(),this._source=(this.textContent??"").trim();let e=this._source.split(`
|
|
528
|
+
`),r=e.filter(i=>i.trim()).reduce((i,a)=>Math.min(i,a.match(/^ */)?.[0].length??0),1/0);r<1/0&&(this._source=e.map(i=>i.slice(r)).join(`
|
|
529
|
+
`)),this._render()}async _render(){if(!this._source)return;await Ar();let e=`mmd-${++Tr}`;try{let{svg:r}=await window.mermaid.render(e,this._source);this._svg=r,this.rendered=!0}catch(r){console.error("Mermaid render error",r);let i=r instanceof Error?r.message:String(r);this._svg=`<pre style="color:#f87171">${i}</pre>`}}render(){return c`<div class="canvas" .innerHTML="${this._svg}"></div>`}};te.styles=m`:host{display:flex;align-items:center;justify-content:center;background:var(--deck-mermaid-bg,var(--rik-code__bg));border:1px solid var(--deck-mermaid-border,var(--rik-code__border));border-radius:var(--deck-mermaid-radius,var(--rik-radius-md));padding:var(--deck-mermaid-padding,var(--rik-space-4));box-shadow:var(--rik-elevation-2);overflow:hidden;min-width:0}:host([compact]){padding:var(--rik-space-2)}.canvas{width:100%;max-width:100%;text-align:center;overflow:hidden}.canvas svg{width:100% !important;height:auto !important;max-width:100% !important;max-height:60vh}:host([compact]) .canvas{max-width:60%}:host([compact]) .canvas svg{max-height:22vh}`,o([l({type:Boolean,reflect:!0})],te.prototype,"rendered",2),o([N()],te.prototype,"_svg",2),te=o([u("deck-mermaid")],te);var Ee=class extends p{render(){return c`<slot></slot>`}};Ee.styles=m`:host{display:flex;flex-direction:column;gap:var(--rik-space-2xs)}`,Ee=o([u("deck-step-list")],Ee);var re=class extends p{render(){return c`<span class="step-num">${this.n}</span> <span class="label"><slot></slot></span> ${this.note?c`<span class="chip">${this.note}</span>`:""}
|
|
530
|
+
`}};re.styles=m`:host{display:flex;align-items:center;gap:var(--rik-space-3);background:var(--deck-step-bg,var(--rik-surface-raised--strong));border:1px solid var(--deck-step-border,var(--rik-border-default));border-radius:var(--deck-step-radius,var(--rik-radius-md));padding:var(--deck-step-padding-y,var(--rik-space-2xs)) var(--deck-step-padding-x,var(--rik-space-3));box-shadow:var(--deck-step-shadow,var(--rik-elevation-2));font-family:var(--rik-font-sans);font-size:var(--rik-font-size-body)}.step-num{flex:0 0 auto;width:var(--deck-step-num-size,var(--rik-icon-sm));height:var(--deck-step-num-size,var(--rik-icon-sm));display:inline-flex;align-items:center;justify-content:center;background:var(--deck-step-num-bg,var(--rik-accent));color:var(--deck-step-num-color,var(--rik-accent__on,var(--rik-surface-inverse)));border-radius:50%;font:700 var(--rik-font-size-xs)/1 var(--rik-font-sans)}.label{flex:1;font-family:var(--rik-font-mono);font-weight:600;color:var(--deck-step-label-color,var(--rik-text-default))}.chip{flex:0 0 auto;display:inline-block;padding:2px var(--rik-space-2);background:var(--deck-step-chip-bg,var(--rik-surface-tint));color:var(--deck-step-chip-color,var(--rik-text-default--faint));border-radius:var(--rik-radius-pill);font:600 var(--rik-font-size-sm)/1.4 var(--rik-font-sans)}`,o([l({type:String})],re.prototype,"n",2),o([l({type:String})],re.prototype,"note",2),re=o([u("deck-step")],re);var $e=class extends p{render(){return c`<slot></slot>`}};$e.styles=m`:host{display:flex;flex-direction:column;gap:var(--rik-space-2)}`,$e=o([u("deck-metric-list")],$e);var K=class extends p{constructor(){super(...arguments);this.mono=!1}render(){return c`<span class="label ${this.mono?"mono":""}"><slot></slot></span> <span class="value" data-severity="${this.severity??""}">${this.value}</span>`}};K.styles=m`:host{display:flex;justify-content:space-between;align-items:center;background:var(--deck-metric-bg,var(--rik-surface-raised--strong));border:1px solid var(--deck-metric-border,var(--rik-border-default));border-radius:var(--deck-metric-radius,var(--rik-radius-md));padding:var(--deck-metric-padding-y,var(--rik-space-2)) var(--deck-metric-padding-x,var(--rik-space-4));font-family:var(--rik-font-sans);font-size:var(--rik-font-size-body);color:var(--deck-metric-text,var(--rik-text-default--muted));box-shadow:var(--deck-metric-shadow,var(--rik-elevation-2))}.label{font-family:inherit}.label.mono{font-family:var(--rik-font-mono);font-size:var(--rik-font-size-sm);color:var(--deck-metric-label-color,var(--rik-text-default--faint))}.value{font-weight:700}.value[data-severity="bad"]{color:var(--deck-metric-value-bad,var(--rik-status-danger))}.value[data-severity="warn"]{color:var(--deck-metric-value-warn,var(--rik-status-warn))}.value[data-severity="ok"]{color:var(--deck-metric-value-ok,var(--rik-status-success))}.value[data-severity="info"]{color:var(--deck-metric-value-info,var(--rik-status-info__text))}`,o([l({type:String})],K.prototype,"value",2),o([l({type:String})],K.prototype,"severity",2),o([l({type:Boolean})],K.prototype,"mono",2),K=o([u("deck-metric")],K);var Se=class extends p{render(){return c`<slot></slot>`}};Se.styles=m`:host{display:flex;flex-direction:column;gap:var(--rik-space-2xs)}`,Se=o([u("deck-tier-list")],Se);var q=class extends p{constructor(){super(...arguments);this.hot=!1}render(){return c`<div class="head"> <span class="name">${this.name}</span> <span class="speed" data-severity="${this.severity??(this.hot?"hot":"")}">${this.speed}</span> </div> <div class="desc"><slot></slot></div>`}};q.styles=m`:host{display:flex;flex-direction:column;gap:var(--rik-space-hair);background:var(--deck-tier-bg,var(--rik-surface-raised--strong));border:1px solid var(--deck-tier-border,var(--rik-border-default));border-radius:var(--deck-tier-radius,var(--rik-radius-md));padding:var(--deck-tier-padding-y,var(--rik-space-2)) var(--deck-tier-padding-x,var(--rik-space-4));box-shadow:var(--deck-tier-shadow,var(--rik-elevation-2));font-family:var(--rik-font-sans)}:host([hot]){border-color:var(--deck-tier-hot-border,var(--rik-status-info__border));background:var(--deck-tier-hot-bg,var(--rik-status-info__bg))}.head{display:flex;justify-content:space-between;align-items:baseline}.name{font:700 var(--rik-font-size-body)/1 var(--rik-font-mono);color:var(--deck-tier-name-color,var(--rik-text-default))}:host([hot]) .name{color:var(--deck-tier-hot-color,var(--rik-accent))}.speed{font:700 var(--rik-font-size-body)/1 var(--rik-font-mono)}.speed[data-severity="muted"]{color:var(--deck-tier-speed-muted,var(--rik-text-default--faint))}.speed[data-severity="warn"]{color:var(--deck-tier-speed-warn,var(--rik-status-warn))}.speed[data-severity="ok"]{color:var(--deck-tier-speed-ok,var(--rik-status-success))}:host([hot]) .speed{color:var(--deck-tier-hot-color,var(--rik-accent))}.desc{font-size:var(--rik-font-size-sm);color:var(--deck-tier-desc-color,var(--rik-text-default--faint));line-height:1.4}`,o([l({type:String})],q.prototype,"name",2),o([l({type:String})],q.prototype,"speed",2),o([l({type:String})],q.prototype,"severity",2),o([l({type:Boolean,reflect:!0})],q.prototype,"hot",2),q=o([u("deck-tier")],q);var Ae=class extends p{render(){return c`<slot></slot>`}};Ae.styles=m`:host{display:block;text-align:center;color:var(--rik-text-default--faint);opacity:var(--rik-opacity-soft);font-size:var(--rik-font-size-xs);padding:2px 0}`,Ae=o([u("deck-tier-arrow")],Ae);var ve=class extends p{render(){return c`<slot></slot>`}};ve.styles=m`:host{display:inline-block;padding:var(--deck-badge-padding-y,var(--rik-space-1)) var(--deck-badge-padding-x,var(--rik-space-3));margin-bottom:var(--rik-space-2);font:700 var(--rik-font-size-xs)/1.2 var(--rik-font-sans);letter-spacing:0.1em;text-transform:uppercase;border-radius:var(--deck-badge-radius,var(--rik-radius-pill));background:var(--deck-badge-bg,var(--rik-surface-tint));color:var(--deck-badge-fg,var(--rik-text-default--faint));border:1px solid var(--deck-badge-border,var(--rik-border-default))}:host([type="bad"]){--deck-badge-bg:var(--rik-status-danger__bg);--deck-badge-fg:var(--rik-status-danger);--deck-badge-border:var(--rik-status-danger__border)}:host([type="ok"]){--deck-badge-bg:var(--rik-status-success__bg);--deck-badge-fg:var(--rik-status-success);--deck-badge-border:var(--rik-status-success__border)}:host([type="info"]){--deck-badge-bg:var(--rik-status-info__bg--strong);--deck-badge-fg:var(--rik-status-info__text);--deck-badge-border:var(--rik-status-info__border)}:host([type="warn"]){--deck-badge-bg:var(--rik-status-warn__bg);--deck-badge-fg:var(--rik-status-warn);--deck-badge-border:var(--rik-status-warn__border)}`,o([l({type:String})],ve.prototype,"type",2),ve=o([u("deck-badge")],ve);var rt=class extends p{static{this.styles=m`:host{display:block;font:700 var(--deck-kicker-font-size,var(--rik-font-size-xs))/1.2 var(--rik-font-sans);letter-spacing:var(--deck-kicker-tracking,0.14em);text-transform:uppercase;color:var(--deck-kicker-color,var(--rik-text-default--faint));margin-bottom:var(--deck-kicker-margin,var(--rik-space-2))}:host([on-dark]){color:var(--deck-kicker-on-dark-color,var(--rik-text-inverse--faint))}`}render(){return c`<slot></slot>`}};customElements.define("deck-kicker",rt);var Lr={start:"flex-start",center:"center",end:"flex-end",between:"space-between",around:"space-around"},zr={start:"flex-start",center:"center",end:"flex-end",stretch:"stretch"},Y=class extends p{updated(){if(this.gap){let t=parseInt(this.gap,10);!Number.isNaN(t)&&t>=1&&t<=6?this.style.setProperty("--_gap",`var(--rik-space-${t})`):this.style.setProperty("--_gap",this.gap)}else this.style.removeProperty("--_gap");this.style.setProperty("--_dir",this.direction==="row"?"row":"column"),this.align&&this.style.setProperty("--_align",zr[this.align]??this.align),this.justify&&this.style.setProperty("--_justify",Lr[this.justify]??this.justify)}render(){return c`<slot></slot>`}};Y.styles=m`:host{display:flex;flex-direction:var(--_dir,column);gap:var(--_gap,var(--deck-stack-gap,var(--rik-space-3)));align-items:var(--_align,stretch);justify-content:var(--_justify,flex-start);min-width:0;min-height:0}:host([fill]){flex:1 1 auto}`,o([l({type:String})],Y.prototype,"gap",2),o([l({type:String})],Y.prototype,"direction",2),o([l({type:String})],Y.prototype,"align",2),o([l({type:String})],Y.prototype,"justify",2),Y=o([u("deck-stack")],Y);var Yt={start:"start",center:"center",end:"end",stretch:"stretch"};function Wt(s){if(!s)return null;let t=parseInt(s,10);return!Number.isNaN(t)&&String(t)===s.trim()&&t>=1&&t<=12?`repeat(${t}, minmax(0, 1fr))`:s}function Mr(s){if(!s)return null;let t=parseInt(s,10);return!Number.isNaN(t)&&t>=1&&t<=6?`var(--rik-space-${t})`:s}var R=class extends p{updated(){let t=Wt(this.cols),e=Wt(this.rows),r=Mr(this.gap);t&&this.style.setProperty("--_cols",t),e&&this.style.setProperty("--_rows",e),r&&this.style.setProperty("--_gap",r),this.align&&this.style.setProperty("--_align",Yt[this.align]??this.align),this.justify&&this.style.setProperty("--_justify",Yt[this.justify]??this.justify)}render(){return c`<slot></slot>`}};R.styles=m`:host{display:grid;grid-template-columns:var(--_cols,1fr);grid-template-rows:var(--_rows,auto);gap:var(--_gap,var(--deck-grid-gap,var(--rik-space-3)));align-items:var(--_align,stretch);justify-items:var(--_justify,stretch);min-width:0;min-height:0}:host([fill]){flex:1 1 auto;height:100%}`,o([l({type:String})],R.prototype,"cols",2),o([l({type:String})],R.prototype,"rows",2),o([l({type:String})],R.prototype,"gap",2),o([l({type:String})],R.prototype,"align",2),o([l({type:String})],R.prototype,"justify",2),R=o([u("deck-grid")],R);var Vt={warn:"var(--rik-status-warn)",danger:"var(--rik-status-danger)",ok:"var(--rik-status-success)",info:"var(--rik-accent)",muted:"var(--rik-text-default--faint)",accent:"var(--rik-accent)"},Xt={lead:"var(--rik-font-size-lead)",big:"var(--rik-font-size-big)",mega:"var(--rik-font-size-mega)",stat:"var(--rik-font-size-stat)",display:"clamp(2.6rem, 6vw, 5rem)"},W=class extends p{updated(){this.tone&&Vt[this.tone]?this.style.setProperty("--_color",Vt[this.tone]):this.style.removeProperty("--_color"),this.size&&Xt[this.size]?this.style.setProperty("--_size",Xt[this.size]):this.style.removeProperty("--_size")}render(){return c`<slot></slot>`}};W.styles=m`:host{display:block;margin:0;font-family:var(--rik-font-display,var(--rik-font-sans));font-weight:900;line-height:1.1;letter-spacing:-0.02em;font-size:var(--deck-punch-size,var(--_size,var(--rik-font-size-lead)));color:var(--deck-punch-color,var(--_color,inherit))}:host([weight="700"]){font-weight:700}:host([weight="800"]){font-weight:800}:host([align="center"]){text-align:center}:host([align="right"]){text-align:right}`,o([l({type:String})],W.prototype,"tone",2),o([l({type:String})],W.prototype,"size",2),o([l({type:String,reflect:!0})],W.prototype,"weight",2),o([l({type:String,reflect:!0})],W.prototype,"align",2),W=o([u("deck-punch")],W);var Hr={yellow:"var(--rik-accent)",orange:"var(--rik-status-warn)",green:"var(--rik-status-success)",red:"var(--rik-status-danger)",purple:"var(--rik-decor-orchid)",lime:"var(--rik-decor-lime)",cyan:"var(--rik-decor-canary)"},ie=class extends p{updated(){this.tone?this.style.setProperty("--_c",Hr[this.tone]??this.tone):this.style.removeProperty("--_c")}render(){return c`${this.num?c`<div class="num" part="num">${this.num}</div>`:""}
|
|
531
|
+
<slot name="claim"></slot>
|
|
532
|
+
<div class="body" part="body"><slot></slot></div>
|
|
533
|
+
`}};ie.styles=m`:host{display:flex;flex-direction:column;gap:var(--deck-stat-gap,var(--rik-space-2));padding:var(--deck-stat-padding-y,var(--rik-space-4)) var(--deck-stat-padding-x,var(--rik-space-3));border-left:var(--deck-stat-border-width,4px) solid var(--_c,var(--deck-stat-color,var(--rik-accent)));min-width:0;font-family:var(--rik-font-sans)}.num{font-family:var(--rik-font-display,var(--rik-font-sans));font-size:var(--deck-stat-num-size,clamp(3.5rem,7vw,6rem));font-weight:var(--deck-stat-num-weight,900);line-height:0.9;color:var(--_c,var(--deck-stat-color,var(--rik-accent)));letter-spacing:-0.04em}::slotted([slot="claim"]){font-family:var(--rik-font-display,var(--rik-font-sans));font-size:var(--rik-font-size-strong);font-weight:800;color:var(--deck-stat-claim-color,var(--rik-text-default));line-height:1.1;letter-spacing:-0.02em;margin:0}.body{font-size:var(--rik-font-size-body);color:var(--deck-stat-body-color,var(--rik-text-default--faint));line-height:1.45;margin-top:var(--rik-space-2)}::slotted(strong){color:var(--rik-text-default);font-weight:700}::slotted(code){font-family:var(--rik-font-mono);font-size:var(--rik-font-size-mono-sm);background:var(--rik-surface-tint);color:var(--rik-text-default);padding:2px 6px;border-radius:var(--rik-radius-sm)}`,o([l({type:String})],ie.prototype,"num",2),o([l({type:String})],ie.prototype,"tone",2),ie=o([u("deck-stat")],ie);var ue=class extends p{render(){return c`<slot></slot>`}};ue.styles=m`:host{display:inline-flex;align-items:center;justify-content:center;background:var(--deck-kbd-bg,var(--rik-surface-raised--strong));border:1px solid var(--deck-kbd-border,var(--rik-border-default));border-bottom:3px solid var(--rik-surface-tint--strong,rgba(0,0,0,0.10));border-radius:var(--deck-kbd-radius,5px);padding:var(--deck-kbd-padding-y,3px) var(--deck-kbd-padding-x,8px);font:700 0.92rem/1 var(--rik-font-mono);color:var(--deck-kbd-color,var(--rik-text-default));min-width:22px;text-align:center;box-shadow:0 1px 0 rgba(255,255,255,0.5) inset}:host([tone="accent"]){background:var(--deck-kbd-accent-bg,var(--rik-accent));color:var(--deck-kbd-color,var(--rik-accent__on,var(--rik-surface-inverse)));border-color:rgba(0,0,0,0.15)}:host([tone="ok"]){background:var(--deck-kbd-ok-bg,var(--rik-status-success));color:var(--deck-kbd-color,var(--rik-surface-inverse));border-color:rgba(0,0,0,0.15)}`,o([l({type:String})],ue.prototype,"tone",2),ue=o([u("deck-kbd")],ue);var V=class extends p{render(){let t=(this.keys??"").trim().split(/\s+/).filter(Boolean);return c`<span class="keys" part="keys"> ${t.map(e=>c`<span class="k">${e}</span>`)}
|
|
534
|
+
</span>
|
|
535
|
+
<div class="body" part="body">
|
|
536
|
+
${this.label?c`<div class="label">${this.label}</div>`:""}
|
|
537
|
+
${this.note?c`<div class="note">${this.note}</div>`:c`<div class="note"><slot></slot></div>`}
|
|
538
|
+
</div>
|
|
539
|
+
`}};V.styles=m`:host{display:flex;align-items:center;gap:var(--rik-space-3);padding:var(--rik-space-2) 0;font-family:var(--rik-font-sans)}.keys{display:inline-flex;gap:4px;flex-shrink:0}.keys deck-kbd,.keys .k{display:inline-flex;align-items:center;justify-content:center;background:var(--rik-surface-raised--strong);border:1px solid var(--rik-border-default);border-bottom:3px solid rgba(0,0,0,0.10);border-radius:5px;padding:3px 8px;font:700 0.92rem/1 var(--rik-font-mono);color:var(--rik-text-default);min-width:22px;text-align:center}.body{flex:1;min-width:0}.label{font:700 var(--rik-font-size-body)/1.2 var(--rik-font-sans);color:var(--rik-text-default)}.note{font:400 var(--rik-font-size-sm)/1.4 var(--rik-font-sans);color:var(--rik-text-default--faint);margin-top:2px}:host([tone="accent"]) .keys .k{background:var(--rik-accent);color:var(--rik-surface-inverse);border-color:rgba(0,0,0,0.15)}:host([tone="ok"]) .keys .k{background:var(--rik-status-success);color:var(--rik-surface-inverse);border-color:rgba(0,0,0,0.15)}`,o([l({type:String})],V.prototype,"keys",2),o([l({type:String})],V.prototype,"label",2),o([l({type:String})],V.prototype,"note",2),o([l({type:String})],V.prototype,"tone",2),V=o([u("deck-shortcut")],V);var se=class extends p{updated(){if(this.colGap){let t=parseInt(this.colGap,10),e=!Number.isNaN(t)&&t>=1&&t<=6?`var(--sp-${t})`:this.colGap;this.style.setProperty("--_col-gap",e)}}render(){return c`<slot></slot>`}};se.styles=m`:host{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--_col-gap,var(--rik-space-5));font-family:var(--rik-font-sans)}:host([cols="1"]){grid-template-columns:1fr}::slotted(deck-shortcut){border-bottom:1px solid var(--rik-border-default)}`,o([l({type:String})],se.prototype,"cols",2),o([l({type:String,attribute:"col-gap"})],se.prototype,"colGap",2),se=o([u("deck-shortcut-list")],se);var Te=class extends p{get notes(){return(this.textContent??"").trim()}render(){return c`<slot></slot>`}};Te.styles=m`:host{display:none}`,Te=o([u("deck-notes")],Te);
|