dev-process-kit 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/README.md +10 -9
  2. package/dist/chunks/shared-B2K3LoOU.js +1016 -0
  3. package/dist/chunks/{shared-D6UXy-Qw.js → shared-BqW3KAJ4.js} +99 -46
  4. package/dist/chunks/{shared-DZlREPaN.js → shared-Byv6cc0r.js} +480 -238
  5. package/dist/chunks/{shared-D3EKtSkd.js → shared-CKG_SQh5.js} +1 -1
  6. package/dist/chunks/{shared-C4Y4jSXa.js → shared-CPAT0Cgk.js} +4 -2
  7. package/dist/chunks/shared-CwbzACTe.js +1874 -0
  8. package/dist/chunks/{shared-utv1engQ.js → shared-DBDgdVsd.js} +1 -1
  9. package/dist/chunks/shared-DMlMTd3c.js +1018 -0
  10. package/dist/chunks/shared-DaoPCw6-.js +556 -0
  11. package/dist/chunks/shared-DqB_TR20.js +1599 -0
  12. package/dist/chunks/shared-DsVxrO_3.js +609 -0
  13. package/dist/chunks/shared-iQIywbRc.js +676 -0
  14. package/dist/chunks/shared-xrCdgpNS.js +1 -0
  15. package/dist/components.js +1 -1
  16. package/dist/index.js +1 -1
  17. package/dist/templates/event-storming.js +1 -1
  18. package/dist/templates/example-mapping.js +1 -1
  19. package/dist/templates/grill.js +1 -1
  20. package/dist/templates/plain.js +1 -1
  21. package/dist/templates/prototype.js +1 -1
  22. package/dist/templates/slides.js +1 -1
  23. package/dist/templates/task-board.js +1 -0
  24. package/dist/templates/usm.js +1 -1
  25. package/package.json +3 -2
  26. package/dist/chunks/shared-BFAVBf4I.js +0 -1
  27. package/dist/chunks/shared-BXV4Dm_n.js +0 -522
  28. package/dist/chunks/shared-CQlssGTf.js +0 -692
  29. package/dist/chunks/shared-CcD4vDCE.js +0 -1461
  30. package/dist/chunks/shared-D2QreyJq.js +0 -926
  31. package/dist/chunks/shared-OdGbSUTa.js +0 -574
  32. package/dist/chunks/shared-TjJWiz7W.js +0 -546
@@ -1,26 +1,26 @@
1
- import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I,V as u,C as k,i as U,a3 as x,a1 as d,a2 as o,aF as J,aG as V,a7 as W,z as Q,a0 as X,T as y}from"./shared-CcD4vDCE.js";const m=_({en:{wholeDeck:"Whole deck",slideGroup:"Slide",outline:"Slides",previous:"Previous slide",next:"Next slide",position:(t,e)=>`Slide ${t} of ${e}`,commentOnSlide:"Comment on this slide",commentPlaceholder:"A question, or what should change (passed to the agent)",addComment:"Add comment",deleteComment:"Delete this comment",submitHint:"\u2318 / Ctrl + Enter",fullscreen:"Full screen",fullscreenHint:"\u2190 \u2192 to move \xB7 Esc to leave",noSlidesBefore:"There are no slides yet. Add them to ",noSlidesAfter:" in the base data."},ja:{wholeDeck:"\u30C7\u30C3\u30AD\u5168\u4F53",slideGroup:"\u30B9\u30E9\u30A4\u30C9",outline:"\u30B9\u30E9\u30A4\u30C9",previous:"\u524D\u306E\u30B9\u30E9\u30A4\u30C9",next:"\u6B21\u306E\u30B9\u30E9\u30A4\u30C9",position:(t,e)=>`${e} \u679A\u4E2D ${t} \u679A\u76EE`,commentOnSlide:"\u3053\u306E\u30B9\u30E9\u30A4\u30C9\u306B\u30B3\u30E1\u30F3\u30C8",commentPlaceholder:"\u8CEA\u554F\u3084\u3001\u5909\u3048\u3066\u307B\u3057\u3044\u3053\u3068\uFF08Agent \u306B\u6E21\u308B\uFF09",addComment:"\u30B3\u30E1\u30F3\u30C8\u3092\u8FFD\u52A0",deleteComment:"\u3053\u306E\u30B3\u30E1\u30F3\u30C8\u3092\u524A\u9664",submitHint:"\u2318 / Ctrl + Enter",fullscreen:"\u5168\u753B\u9762\u8868\u793A",fullscreenHint:"\u2190 \u2192 \u3067\u79FB\u52D5 \xB7 Esc \u3067\u623B\u308B",noSlidesBefore:"\u30B9\u30E9\u30A4\u30C9\u304C\u307E\u3060\u3042\u308A\u307E\u305B\u3093\u3002base data \u306E ",noSlidesAfter:" \u306B\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002"}}),w=["title","section","content"],Z=b({id:G,layout:c(I(w),"content"),title:R(p(),Y(1)),subtitle:c(p(),""),points:c(v(p()),[])}),$=b({title:c(p(),""),slides:c(v(Z),[])}),S=t=>{const e=N($,t),i=new Set;for(const n of e.slides){if(i.has(n.id))throw new Error(`duplicate slide id: ${n.id}`);i.add(n.id)}return{title:e.title,slides:e.slides}},C=()=>({title:"",slides:[]}),r=(t,e)=>e===void 0?-1:t.slides.findIndex(i=>i.id===e),T=(t,e)=>t.slides[r(t,e)],q=t=>t.title===""?"Slides":t.title,h=(t,e)=>`${e+1}. ${t.title}`,E=(t,e,i)=>{switch(i.type){case"slide":{const n=r(e,i.id),s=e.slides[n];return s===void 0?i.id:h(s,n)}case"page":return t.wholeDeck;default:return i.id}},A=(t,e,i)=>({title:e.type,targetLabel:E(t,i,e.target),tone:"meta"}),z=t=>`${t.type} ${u(t.target)} ${JSON.stringify(t.payload)}`,D=(t,e)=>e.slides.map((i,n)=>({value:u({type:"slide",id:i.id}),label:h(i,n),group:t.slideGroup})),M=(t,e,i)=>{const n=r(e,i.slide),s=e.slides[n];return s===void 0?null:{value:u({type:"slide",id:s.id}),label:h(s,n),group:t.slideGroup}},F=(t,e)=>{const i=t.slides[r(t,e.slide)]??t.slides[0],n={...e};return i?n.slide=i.id:delete n.slide,n},H=(t,e)=>{const i=r(t,e.slide),n=i===-1?0:i,s=t.slides[n];return s===void 0?null:{slide:s,index:n,total:t.slides.length,previous:t.slides[n-1],next:t.slides[n+1]}},ee=(t,e)=>t.filter(i=>i.type===k&&i.target.type==="slide"&&i.target.id===e).map(i=>({id:i.id,body:U(i)})).filter(i=>i.body!==""),L=(t,e)=>{switch(e.type){case"slide":return T(t,e.id)!==void 0;case"page":return!0;default:return!1}},P=t=>{const e=m(t);return{name:"slides",label:"Slides",parseBase:S,emptyBase:C,actions:{},apply:()=>null,hasTarget:L,describe:(i,n)=>A(e,i,n),serialize:z,resolveNavigation:F,commentTargets:i=>D(e,i),currentTarget:(i,n)=>M(e,i,n),title:q}},te={ArrowRight:"next",PageDown:"next",ArrowLeft:"previous",PageUp:"previous",Home:"first",End:"last"},O=t=>t.altKey===!0||t.ctrlKey===!0||t.metaKey===!0||t.shiftKey===!0?null:te[t.key]??null,j=(t,e,i)=>{const n=t.slides.length-1;if(n<0)return;const s=Math.max(r(t,e),0),a={next:Math.min(s+1,n),previous:Math.max(s-1,0),first:0,last:n}[i];return t.slides[a]?.id},ie=(t,e)=>{const{state:i,navigation:n}=t,s=n.slide;return o`
1
+ import{_,a9 as N,aa as f,ab as c,ac as k,ad as p,au as G,af as R,ag as Y,ae as I,V as u,C as v,i as U,a3 as x,a1 as l,a2 as d,aG as J,ay as V,a7 as W,z as Q,a0 as X,T as w}from"./shared-CwbzACTe.js";const m=_({en:{wholeDeck:"Whole deck",slideGroup:"Slide",outline:"Slides",previous:"Previous slide",next:"Next slide",position:(t,e)=>`Slide ${t} of ${e}`,commentOnSlide:"Comment on this slide",commentPlaceholder:"A question, or what should change (passed to the agent)",addComment:"Add comment",deleteComment:"Delete this comment",submitHint:"\u2318 / Ctrl + Enter",fullscreen:"Full screen",fullscreenHint:"\u2190 \u2192 to move \xB7 Esc to leave",noSlidesBefore:"There are no slides yet. Add them to ",noSlidesAfter:" in the base data."},ja:{wholeDeck:"\u30C7\u30C3\u30AD\u5168\u4F53",slideGroup:"\u30B9\u30E9\u30A4\u30C9",outline:"\u30B9\u30E9\u30A4\u30C9",previous:"\u524D\u306E\u30B9\u30E9\u30A4\u30C9",next:"\u6B21\u306E\u30B9\u30E9\u30A4\u30C9",position:(t,e)=>`${e} \u679A\u4E2D ${t} \u679A\u76EE`,commentOnSlide:"\u3053\u306E\u30B9\u30E9\u30A4\u30C9\u306B\u30B3\u30E1\u30F3\u30C8",commentPlaceholder:"\u8CEA\u554F\u3084\u3001\u5909\u3048\u3066\u307B\u3057\u3044\u3053\u3068\uFF08Agent \u306B\u6E21\u308B\uFF09",addComment:"\u30B3\u30E1\u30F3\u30C8\u3092\u8FFD\u52A0",deleteComment:"\u3053\u306E\u30B3\u30E1\u30F3\u30C8\u3092\u524A\u9664",submitHint:"\u2318 / Ctrl + Enter",fullscreen:"\u5168\u753B\u9762\u8868\u793A",fullscreenHint:"\u2190 \u2192 \u3067\u79FB\u52D5 \xB7 Esc \u3067\u623B\u308B",noSlidesBefore:"\u30B9\u30E9\u30A4\u30C9\u304C\u307E\u3060\u3042\u308A\u307E\u305B\u3093\u3002base data \u306E ",noSlidesAfter:" \u306B\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002"}}),y=["title","section","content"],Z=f({id:G,layout:c(I(y),"content"),title:R(p(),Y(1)),subtitle:c(p(),""),points:c(k(p()),[])}),$=f({title:c(p(),""),slides:c(k(Z),[])}),S=t=>{const e=N($,t),i=new Set;for(const n of e.slides){if(i.has(n.id))throw new Error(`duplicate slide id: ${n.id}`);i.add(n.id)}return{title:e.title,slides:e.slides}},C=()=>({title:"",slides:[]}),r=(t,e)=>e===void 0?-1:t.slides.findIndex(i=>i.id===e),T=(t,e)=>t.slides[r(t,e)],q=t=>t.title===""?"Slides":t.title,h=(t,e)=>`${e+1}. ${t.title}`,E=(t,e,i)=>{switch(i.type){case"slide":{const n=r(e,i.id),s=e.slides[n];return s===void 0?i.id:h(s,n)}case"page":return t.wholeDeck;default:return i.id}},A=(t,e,i)=>({title:e.type,targetLabel:E(t,i,e.target),tone:"meta"}),z=t=>`${t.type} ${u(t.target)} ${JSON.stringify(t.payload)}`,D=(t,e)=>e.slides.map((i,n)=>({value:u({type:"slide",id:i.id}),label:h(i,n),group:t.slideGroup})),M=(t,e,i)=>{const n=r(e,i.slide),s=e.slides[n];return s===void 0?null:{value:u({type:"slide",id:s.id}),label:h(s,n),group:t.slideGroup}},H=(t,e)=>{const i=t.slides[r(t,e.slide)]??t.slides[0],n={...e};return i?n.slide=i.id:delete n.slide,n},L=(t,e)=>{const i=r(t,e.slide),n=i===-1?0:i,s=t.slides[n];return s===void 0?null:{slide:s,index:n,total:t.slides.length,previous:t.slides[n-1],next:t.slides[n+1]}},ee=(t,e)=>t.filter(i=>i.type===v&&i.target.type==="slide"&&i.target.id===e).map(i=>({id:i.id,body:U(i)})).filter(i=>i.body!==""),P=(t,e)=>{switch(e.type){case"slide":return T(t,e.id)!==void 0;case"page":return!0;default:return!1}},F=t=>{const e=m(t);return{name:"slides",label:"Slides",parseBase:S,emptyBase:C,actions:{},apply:()=>null,hasTarget:P,describe:(i,n)=>A(e,i,n),serialize:z,resolveNavigation:H,commentTargets:i=>D(e,i),currentTarget:(i,n)=>M(e,i,n),title:q}},te={ArrowRight:"next",PageDown:"next",ArrowLeft:"previous",PageUp:"previous",Home:"first",End:"last"},O=t=>t.altKey===!0||t.ctrlKey===!0||t.metaKey===!0||t.shiftKey===!0?null:te[t.key]??null,j=(t,e,i)=>{const n=t.slides.length-1;if(n<0)return;const s=Math.max(r(t,e),0),o={next:Math.min(s+1,n),previous:Math.max(s-1,0),first:0,last:n}[i];return t.slides[o]?.id},ie=(t,e)=>{const{state:i,navigation:n}=t,s=n.slide;return d`
2
2
  <nav class="outline" aria-label=${e.outline}>
3
3
  <div class="outline-head">
4
4
  <span class="dpk-label">${e.outline}</span>
5
5
  <span class="dpk-label">${i.slides.length}</span>
6
6
  </div>
7
7
  <ol class="outline-list">
8
- ${x(i.slides,a=>a.id,(a,l)=>{const f=a.id===s,g=t.commentCount({type:"slide",id:a.id});return o`
9
- <li class="outline-row" data-current=${String(f)} data-layout=${a.layout}>
10
- <a href=${t.hashFor({slide:a.id})} aria-current=${f?"page":d}>
11
- <span class="outline-index">${String(l+1).padStart(2,"0")}</span>
12
- <span class="outline-title">${a.title}</span>
13
- ${g>0?o`<span class="outline-note">${g}</span>`:d}
8
+ ${x(i.slides,o=>o.id,(o,a)=>{const g=o.id===s,b=t.commentCount({type:"slide",id:o.id});return d`
9
+ <li class="outline-row" data-current=${String(g)} data-layout=${o.layout}>
10
+ <a href=${t.hashFor({slide:o.id})} aria-current=${g?"page":l}>
11
+ <span class="outline-index">${String(a+1).padStart(2,"0")}</span>
12
+ <span class="outline-title">${o.title}</span>
13
+ ${b>0?d`<span class="outline-note">${b}</span>`:l}
14
14
  </a>
15
15
  </li>
16
16
  `})}
17
17
  </ol>
18
18
  </nav>
19
- `},ne=(t,e,i)=>{const n=H(t.state,t.navigation);if(n===null)return o`<div class="deck">
19
+ `},ne=(t,e,i)=>{const n=L(t.state,t.navigation);if(n===null)return d`<div class="deck">
20
20
  <p class="deck-empty">${e.noSlidesBefore}<code>slides</code>${e.noSlidesAfter}</p>
21
- </div>`;const{slide:s,index:a,total:l}=n;return o`
21
+ </div>`;const{slide:s,index:o,total:a}=n;return d`
22
22
  <div class="deck">
23
- <div class="stage">${se(s,a)}</div>
23
+ <div class="stage">${se(s,o)}</div>
24
24
  <div class="deck-bar">
25
25
  <div class="deck-move">
26
26
  <button
@@ -33,8 +33,8 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
33
33
  >
34
34
  ${J()}
35
35
  </button>
36
- <span class="deck-counter" role="status" aria-label=${e.position(a+1,l)}>
37
- <strong>${a+1}</strong> / ${l}
36
+ <span class="deck-counter" role="status" aria-label=${e.position(o+1,a)}>
37
+ <strong>${o+1}</strong> / ${a}
38
38
  </span>
39
39
  <button
40
40
  class="dpk-icon-btn deck-next"
@@ -48,21 +48,21 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
48
48
  </button>
49
49
  </div>
50
50
  <div class="deck-progress" aria-hidden="true">
51
- <span style=${`width:${(a+1)/l*100}%`}></span>
51
+ <span style=${`width:${(o+1)/a*100}%`}></span>
52
52
  </div>
53
- ${i.canFullscreen?o`<button
53
+ ${i.canFullscreen?d`<button
54
54
  class="dpk-btn deck-fullscreen"
55
55
  type="button"
56
56
  title=${e.fullscreenHint}
57
57
  @click=${i.onFullscreen}
58
58
  >
59
59
  ${W()} ${e.fullscreen}
60
- </button>`:d}
60
+ </button>`:l}
61
61
  </div>
62
- ${le(e,s,ee(t.comments,s.id),i)}
63
- ${ae(t.state,s.id)}
62
+ ${ae(e,s,ee(t.comments,s.id),i)}
63
+ ${oe(t.state,s.id)}
64
64
  </div>
65
- `},se=(t,e)=>o`
65
+ `},se=(t,e)=>d`
66
66
  <article
67
67
  class="slide"
68
68
  data-layout=${t.layout}
@@ -71,25 +71,25 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
71
71
  >
72
72
  <div class="slide-content">
73
73
  <h2 class="slide-title">${t.title}</h2>
74
- ${t.subtitle===""?d:o`<p class="slide-subtitle">${t.subtitle}</p>`}
75
- ${t.points.length===0?d:o`<ul class="slide-points">
76
- ${t.points.map(i=>o`<li>${i}</li>`)}
74
+ ${t.subtitle===""?l:d`<p class="slide-subtitle">${t.subtitle}</p>`}
75
+ ${t.points.length===0?l:d`<ul class="slide-points">
76
+ ${t.points.map(i=>d`<li>${i}</li>`)}
77
77
  </ul>`}
78
78
  <div class="slide-body"><slot name=${`preview:${t.id}`}></slot></div>
79
79
  </div>
80
80
  <span class="slide-number" aria-hidden="true">${e+1}</span>
81
81
  </article>
82
- `,le=(t,e,i,n)=>{const s=n.draftFor(e.id),a=s.trim()!=="";return o`
82
+ `,ae=(t,e,i,n)=>{const s=n.draftFor(e.id),o=s.trim()!=="";return d`
83
83
  <section class="slide-comments" aria-label=${t.commentOnSlide}>
84
- ${i.length===0?d:o`<ul class="slide-comment-list">
85
- ${x(i,l=>l.id,l=>o`<li>
86
- <span class="slide-comment-body">${l.body}</span>
84
+ ${i.length===0?l:d`<ul class="slide-comment-list">
85
+ ${x(i,a=>a.id,a=>d`<li>
86
+ <span class="slide-comment-body">${a.body}</span>
87
87
  <button
88
88
  class="dpk-icon-btn slide-comment-delete"
89
89
  type="button"
90
90
  aria-label=${t.deleteComment}
91
91
  title=${t.deleteComment}
92
- @click=${()=>n.onDeleteComment(l.id)}
92
+ @click=${()=>n.onDeleteComment(a.id)}
93
93
  >
94
94
  ${Q()}
95
95
  </button>
@@ -101,14 +101,14 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
101
101
  aria-label=${t.commentOnSlide}
102
102
  placeholder=${t.commentPlaceholder}
103
103
  .value=${s}
104
- @input=${l=>{l.currentTarget instanceof HTMLTextAreaElement&&n.onDraft(e.id,l.currentTarget.value)}}
105
- @keydown=${l=>{l.isComposing||l.key!=="Enter"||!(l.metaKey||l.ctrlKey)||(l.preventDefault(),a&&n.onComment(e.id))}}
104
+ @input=${a=>{a.currentTarget instanceof HTMLTextAreaElement&&n.onDraft(e.id,a.currentTarget.value)}}
105
+ @keydown=${a=>{a.isComposing||a.key!=="Enter"||!(a.metaKey||a.ctrlKey)||(a.preventDefault(),o&&n.onComment(e.id))}}
106
106
  ></textarea>
107
107
  <div class="slide-comment-actions">
108
108
  <button
109
109
  class="dpk-btn dpk-btn--accent slide-comment-submit"
110
110
  type="button"
111
- ?disabled=${!a}
111
+ ?disabled=${!o}
112
112
  @click=${()=>n.onComment(e.id)}
113
113
  >
114
114
  ${t.addComment}
@@ -117,15 +117,17 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
117
117
  </div>
118
118
  </div>
119
119
  </section>
120
- `},ae=(t,e)=>{const i=t.slides.filter(n=>n.id!==e);return i.length===0?d:o`<div class="parked" aria-hidden="true">
121
- ${i.map(n=>o`<slot name=${`preview:${n.id}`}></slot>`)}
122
- </div>`},oe=X`
120
+ `},oe=(t,e)=>{const i=t.slides.filter(n=>n.id!==e);return i.length===0?l:d`<div class="parked" aria-hidden="true">
121
+ ${i.map(n=>d`<slot name=${`preview:${n.id}`}></slot>`)}
122
+ </div>`},de=X`
123
123
  /* ------------------------------------------------------------ outline */
124
124
 
125
125
  .outline-head {
126
126
  display: flex;
127
127
  justify-content: space-between;
128
128
  padding: 0 6px 8px;
129
+ border-bottom: 1px solid var(--dpk-rule);
130
+ margin-bottom: 6px;
129
131
  }
130
132
 
131
133
  .outline-list {
@@ -136,19 +138,36 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
136
138
  list-style: none;
137
139
  }
138
140
 
141
+ .outline-row {
142
+ position: relative;
143
+ }
144
+
145
+ .outline-row::before {
146
+ content: '';
147
+ position: absolute;
148
+ left: 0;
149
+ top: 6px;
150
+ bottom: 6px;
151
+ width: 3px;
152
+ border-radius: var(--dpk-radius-xs);
153
+ background: transparent;
154
+ transition: background 140ms var(--dpk-ease);
155
+ }
156
+
139
157
  .outline-row a {
140
158
  display: flex;
141
159
  align-items: baseline;
142
160
  gap: 10px;
143
- padding: 7px 8px;
161
+ padding: 7px 8px 7px 14px;
144
162
  border-radius: var(--dpk-radius-sm);
145
163
  color: var(--dpk-ink-soft);
146
164
  font-size: 13px;
147
165
  line-height: 1.4;
148
166
  text-decoration: none;
149
167
  transition:
150
- background 140ms ease,
151
- color 140ms ease;
168
+ background 140ms var(--dpk-ease),
169
+ color 140ms var(--dpk-ease),
170
+ box-shadow 140ms var(--dpk-ease);
152
171
  }
153
172
 
154
173
  .outline-row a:hover {
@@ -161,10 +180,17 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
161
180
  box-shadow: var(--dpk-focus);
162
181
  }
163
182
 
183
+ .outline-row[data-current='true']::before {
184
+ background: linear-gradient(180deg, var(--dpk-accent-bright), var(--dpk-accent-strong));
185
+ box-shadow: 0 0 8px color-mix(in srgb, var(--dpk-accent) 45%, transparent);
186
+ }
187
+
164
188
  .outline-row[data-current='true'] a {
165
- background: var(--dpk-paper-raised);
189
+ background: color-mix(in srgb, var(--dpk-accent) 8%, var(--dpk-paper-raised));
166
190
  color: var(--dpk-ink);
167
- box-shadow: var(--dpk-shadow-xs);
191
+ box-shadow:
192
+ inset 0 0 0 1px color-mix(in srgb, var(--dpk-accent) 20%, transparent),
193
+ var(--dpk-shadow-xs);
168
194
  }
169
195
 
170
196
  /* A section slide opens a chapter: it reads as a heading in the outline. */
@@ -222,10 +248,19 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
222
248
  color: var(--dpk-ink-faint);
223
249
  }
224
250
 
251
+ /*
252
+ * The work surface the slide is projected onto: a quiet dot lattice, sunken
253
+ * a shade below the page, so the slide's own shadow has somewhere to land.
254
+ */
225
255
  .stage {
226
256
  display: flex;
227
257
  justify-content: center;
228
258
  width: 100%;
259
+ padding: 28px;
260
+ border: 1px solid var(--dpk-rule);
261
+ border-radius: var(--dpk-radius-xl);
262
+ background: var(--dpk-dots), var(--dpk-paper-sunken);
263
+ box-shadow: inset 0 1px 3px var(--dpk-shade-1);
229
264
  }
230
265
 
231
266
  /*
@@ -242,7 +277,7 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
242
277
  border: 1px solid var(--dpk-rule);
243
278
  border-radius: var(--dpk-radius-lg);
244
279
  background: var(--dpk-paper-raised);
245
- box-shadow: var(--dpk-shadow);
280
+ box-shadow: var(--dpk-bevel), var(--dpk-shadow-lg);
246
281
  }
247
282
 
248
283
  .slide-content {
@@ -295,7 +330,8 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
295
330
  width: 0.9cqw;
296
331
  height: 0.9cqw;
297
332
  border-radius: 50%;
298
- background: var(--dpk-accent);
333
+ background: linear-gradient(135deg, var(--dpk-accent-bright), var(--dpk-accent-strong));
334
+ box-shadow: 0 0 0 3px color-mix(in srgb, var(--dpk-accent) 14%, transparent);
299
335
  }
300
336
 
301
337
  .slide-body {
@@ -328,10 +364,11 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
328
364
  position: absolute;
329
365
  left: 6.5cqw;
330
366
  top: 50%;
331
- width: 0.5cqw;
367
+ width: 0.55cqw;
332
368
  height: 16cqw;
333
369
  border-radius: 999px;
334
- background: var(--dpk-accent);
370
+ background: linear-gradient(180deg, var(--dpk-accent-bright), var(--dpk-accent-strong));
371
+ box-shadow: 0 0 20px color-mix(in srgb, var(--dpk-accent) 35%, transparent);
335
372
  transform: translateY(-50%);
336
373
  }
337
374
 
@@ -364,13 +401,17 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
364
401
  height: 0.5cqw;
365
402
  margin-top: 2.4cqw;
366
403
  border-radius: 999px;
367
- background: var(--dpk-accent);
404
+ background: linear-gradient(90deg, var(--dpk-accent-bright), var(--dpk-accent-strong));
368
405
  }
369
406
 
370
407
  /* Full screen: the stage alone, the slide as large as the screen allows. */
371
408
  .stage:fullscreen {
372
409
  align-items: center;
373
- background: var(--dpk-paper-sunken);
410
+ padding: 0;
411
+ border: none;
412
+ border-radius: 0;
413
+ box-shadow: none;
414
+ background: var(--dpk-dots), var(--dpk-paper-sunken);
374
415
  }
375
416
 
376
417
  .stage:fullscreen .slide {
@@ -388,6 +429,12 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
388
429
  align-items: center;
389
430
  gap: 8px 12px;
390
431
  width: min(100%, 1180px);
432
+ padding: 8px 12px;
433
+ border: 1px solid var(--dpk-rule);
434
+ border-radius: var(--dpk-radius-lg);
435
+ background: var(--dpk-glass);
436
+ backdrop-filter: blur(12px);
437
+ box-shadow: var(--dpk-bevel), var(--dpk-shadow-xs);
391
438
  }
392
439
 
393
440
  .deck-move {
@@ -417,9 +464,10 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
417
464
 
418
465
  .deck-progress {
419
466
  flex: 1 1 80px;
420
- height: 3px;
467
+ height: 4px;
421
468
  border-radius: 999px;
422
469
  background: var(--dpk-paper-inset);
470
+ box-shadow: inset 0 1px 2px var(--dpk-shade-1);
423
471
  overflow: hidden;
424
472
  }
425
473
 
@@ -440,8 +488,13 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
440
488
 
441
489
  .slide-comments {
442
490
  display: grid;
443
- gap: 8px;
491
+ gap: 10px;
444
492
  width: min(100%, 1180px);
493
+ padding: 14px;
494
+ border: 1px solid var(--dpk-rule);
495
+ border-radius: var(--dpk-radius-lg);
496
+ background: var(--dpk-paper-raised);
497
+ box-shadow: var(--dpk-bevel), var(--dpk-shadow-xs);
445
498
  }
446
499
 
447
500
  /* About three short comments; more scroll inside the list, not the page. */
@@ -557,4 +610,4 @@ import{_,a9 as N,aa as b,ab as c,ac as v,ad as p,au as G,af as R,ag as Y,ae as I
557
610
  transition: none;
558
611
  }
559
612
  }
560
- `,de='input, textarea, select, [contenteditable]:not([contenteditable="false"])',re=t=>t instanceof HTMLElement&&(t.isContentEditable||t.matches(de));class B extends y{static{this.styles=[y.styles,oe]}#e=new Map;#t={slide:"",count:0};definitionFor(e){return P(e)}connectedCallback(){super.connectedCallback(),document.addEventListener("keydown",this.#s)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("keydown",this.#s)}renderRegions(e){const i=m(this.locale);return{sidebar:ie(e,i),sidebarHidden:e.state.slides.length===0,main:ne(e,i,{canFullscreen:document.fullscreenEnabled===!0,draftFor:n=>this.#e.get(n)??"",onStep:n=>this.#i(n),onFullscreen:()=>this.#o(),onDraft:(n,s)=>this.#n(n,s),onComment:n=>this.#a(n),onDeleteComment:n=>this.removeAction(n)})}}updated(){super.updated(),this.#l()}#l(){const e=this.renderRoot.querySelector(".slide-comment-list"),i={slide:this.navigation.slide??"",count:e?.childElementCount??0},n=this.#t;this.#t=i,!(e===null||i.slide===n.slide&&i.count<=n.count)&&(e.scrollTop=e.scrollHeight)}#i(e){const i=j(this.derivation.state,this.navigation.slide,e);i!==void 0&&this.navigate({slide:i})}#n(e,i){const n=new Map(this.#e);i===""?n.delete(e):n.set(e,i),this.#e=n,this.requestUpdate()}#a(e){const i=(this.#e.get(e)??"").trim();if(i==="")return;this.dispatch({type:k,target:{type:"slide",id:e},payload:{body:i}}).ok&&this.#n(e,"")}#o(){const e=this.renderRoot.querySelector(".stage");!(e instanceof HTMLElement)||document.fullscreenElement!==null||e.requestFullscreen().catch(()=>{})}#s=e=>{if(e.defaultPrevented)return;const i=O(e);i===null||e.composedPath().some(re)||(e.preventDefault(),this.#i(i))}}const K=()=>{customElements.get("dpk-template-slides")||customElements.define("dpk-template-slides",B)},ce=Object.freeze(Object.defineProperty({__proto__:null,DpkTemplateSlides:B,SLIDE_LAYOUTS:w,defineSlidesElement:K,describeSlidesAction:A,emptySlidesBase:C,findSlide:T,findSlideIndex:r,parseSlidesBase:S,resolveSlidesNavigation:F,serializeSlidesAction:z,slideKeyStep:O,slidePosition:H,slidesBaseSchema:$,slidesCommentTargets:D,slidesCurrentTarget:M,slidesDefinitionFor:P,slidesHasTarget:L,slidesMessages:m,slidesTargetLabel:E,slidesTitle:q,stepSlide:j},Symbol.toStringTag,{value:"Module"}));export{K as d,ce as i};
613
+ `,le='input, textarea, select, [contenteditable]:not([contenteditable="false"])',re=t=>t instanceof HTMLElement&&(t.isContentEditable||t.matches(le));class B extends w{static{this.styles=[w.styles,de]}#e=new Map;#t={slide:"",count:0};definitionFor(e){return F(e)}connectedCallback(){super.connectedCallback(),document.addEventListener("keydown",this.#s)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("keydown",this.#s)}renderRegions(e){const i=m(this.locale);return{sidebar:ie(e,i),sidebarHidden:e.state.slides.length===0,main:ne(e,i,{canFullscreen:document.fullscreenEnabled===!0,draftFor:n=>this.#e.get(n)??"",onStep:n=>this.#i(n),onFullscreen:()=>this.#d(),onDraft:(n,s)=>this.#n(n,s),onComment:n=>this.#o(n),onDeleteComment:n=>this.removeAction(n)})}}updated(){super.updated(),this.#a()}#a(){const e=this.renderRoot.querySelector(".slide-comment-list"),i={slide:this.navigation.slide??"",count:e?.childElementCount??0},n=this.#t;this.#t=i,!(e===null||i.slide===n.slide&&i.count<=n.count)&&(e.scrollTop=e.scrollHeight)}#i(e){const i=j(this.derivation.state,this.navigation.slide,e);i!==void 0&&this.navigate({slide:i})}#n(e,i){const n=new Map(this.#e);i===""?n.delete(e):n.set(e,i),this.#e=n,this.requestUpdate()}#o(e){const i=(this.#e.get(e)??"").trim();if(i==="")return;this.dispatch({type:v,target:{type:"slide",id:e},payload:{body:i}}).ok&&this.#n(e,"")}#d(){const e=this.renderRoot.querySelector(".stage");!(e instanceof HTMLElement)||document.fullscreenElement!==null||e.requestFullscreen().catch(()=>{})}#s=e=>{if(e.defaultPrevented)return;const i=O(e);i===null||e.composedPath().some(re)||(e.preventDefault(),this.#i(i))}}const K=()=>{customElements.get("dpk-template-slides")||customElements.define("dpk-template-slides",B)},ce=Object.freeze(Object.defineProperty({__proto__:null,DpkTemplateSlides:B,SLIDE_LAYOUTS:y,defineSlidesElement:K,describeSlidesAction:A,emptySlidesBase:C,findSlide:T,findSlideIndex:r,parseSlidesBase:S,resolveSlidesNavigation:H,serializeSlidesAction:z,slideKeyStep:O,slidePosition:L,slidesBaseSchema:$,slidesCommentTargets:D,slidesCurrentTarget:M,slidesDefinitionFor:F,slidesHasTarget:P,slidesMessages:m,slidesTargetLabel:E,slidesTitle:q,stepSlide:j},Symbol.toStringTag,{value:"Module"}));export{K as d,ce as i};