graview 0.1.28 → 0.1.30

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 (178) hide show
  1. package/dist/preview/chunk.26CZTUY4.js +1 -0
  2. package/dist/preview/chunk.2CIBWZJG.js +1 -0
  3. package/dist/preview/chunk.2EXGG6BB.js +1 -0
  4. package/dist/preview/chunk.2NBYNZRD.js +1 -0
  5. package/dist/preview/chunk.2XAONC66.js +1 -0
  6. package/dist/preview/chunk.34ZMMURV.js +27 -0
  7. package/dist/preview/chunk.3ADPAGPY.js +28 -0
  8. package/dist/preview/chunk.3JGGBLRB.js +1 -0
  9. package/dist/preview/chunk.3JNMSOFG.js +1 -0
  10. package/dist/preview/chunk.3R4W2P5X.js +1 -0
  11. package/dist/preview/chunk.3SKKIHU3.js +4 -0
  12. package/dist/preview/{chunk.5BGA2VUS.js → chunk.3URFMWXZ.js} +4 -4
  13. package/dist/preview/chunk.3VL5WECB.js +1 -0
  14. package/dist/preview/chunk.42YX6NOY.js +2 -0
  15. package/dist/preview/chunk.4ALKPNXM.js +1 -0
  16. package/dist/preview/chunk.4HP7UWA2.js +1 -0
  17. package/dist/preview/chunk.4SJUTBDV.js +1 -0
  18. package/dist/preview/chunk.5U5J3ISK.js +1 -0
  19. package/dist/preview/chunk.6T2Q6NLO.js +1 -0
  20. package/dist/preview/chunk.6V2RG5JG.js +5 -0
  21. package/dist/preview/chunk.6XMEU2Q2.js +1 -0
  22. package/dist/preview/chunk.7BWT5L2L.js +1 -0
  23. package/dist/preview/chunk.AK3IHFCF.js +1 -0
  24. package/dist/preview/chunk.BPWNWE7N.js +1 -0
  25. package/dist/preview/chunk.C5CYZNSJ.js +1 -0
  26. package/dist/preview/chunk.CM6LOIQE.js +88 -0
  27. package/dist/preview/chunk.D3IECJ2S.js +17 -0
  28. package/dist/preview/chunk.DT7LHWU2.js +1 -0
  29. package/dist/preview/chunk.DZRTOURR.js +1 -0
  30. package/dist/preview/chunk.ERXSYPYL.js +84 -0
  31. package/dist/preview/chunk.EYZ7MHBZ.js +0 -0
  32. package/dist/preview/chunk.FDELO7NY.js +116 -0
  33. package/dist/preview/chunk.FGVKJWNS.js +6 -0
  34. package/dist/preview/chunk.FWCOJDOD.js +1 -0
  35. package/dist/preview/chunk.GFF2FB2J.js +25 -0
  36. package/dist/preview/chunk.GLBHQFJ2.js +1 -0
  37. package/dist/preview/chunk.HHI65WFZ.js +3 -0
  38. package/dist/preview/chunk.HHPGWJDO.js +2 -0
  39. package/dist/preview/chunk.HJCQ6I3S.js +1 -0
  40. package/dist/preview/chunk.HSCTWAUV.js +1 -0
  41. package/dist/preview/chunk.INZUEWC5.js +1 -0
  42. package/dist/preview/chunk.J2ITFGN3.js +1 -0
  43. package/dist/preview/chunk.JH6MU6TX.js +2 -0
  44. package/dist/preview/chunk.JISMMIMX.js +1 -0
  45. package/dist/preview/chunk.JN7DIFR3.js +1 -0
  46. package/dist/preview/chunk.JPHNKWTY.js +1 -0
  47. package/dist/preview/chunk.JTNWD2CN.js +1 -0
  48. package/dist/preview/chunk.K75FUIZI.js +1 -0
  49. package/dist/preview/chunk.K776HO42.js +2 -0
  50. package/dist/preview/chunk.KN3ULTGF.js +1 -0
  51. package/dist/preview/chunk.KOB6N3SL.js +1 -0
  52. package/dist/preview/chunk.KQT7WAQE.js +1 -0
  53. package/dist/preview/chunk.L4DECHXR.js +327 -0
  54. package/dist/preview/chunk.L6OMEYL6.js +10 -0
  55. package/dist/preview/chunk.LQ7V6KEE.js +1 -0
  56. package/dist/preview/chunk.MB7LKKUD.js +1 -0
  57. package/dist/preview/chunk.MD74YVRN.js +3 -0
  58. package/dist/preview/chunk.MGNP4LAM.js +1 -0
  59. package/dist/preview/chunk.NCTOBUCT.js +1 -0
  60. package/dist/preview/chunk.NDADLJE6.js +1 -0
  61. package/dist/preview/chunk.NO52VON3.js +1 -0
  62. package/dist/preview/chunk.O2LK2AO7.js +1 -0
  63. package/dist/preview/chunk.OAF7TUMI.js +1 -0
  64. package/dist/preview/chunk.OQ4KFN6W.js +1 -0
  65. package/dist/preview/chunk.OQDETV4X.js +1 -0
  66. package/dist/preview/chunk.OXQMNIRO.js +1 -0
  67. package/dist/preview/chunk.OZNW5W4Z.js +1 -0
  68. package/dist/preview/chunk.PAVR5TK5.js +1 -0
  69. package/dist/preview/chunk.PKK6FRZR.js +2 -0
  70. package/dist/preview/chunk.Q5WEOX3Q.js +1 -0
  71. package/dist/preview/chunk.QIAKO27D.js +1 -0
  72. package/dist/preview/chunk.QNGWEV47.js +1 -0
  73. package/dist/preview/{chunk.EYF6ONTA.js → chunk.QTA4ROAK.js} +1 -1
  74. package/dist/preview/chunk.QTMWHE5O.js +1 -0
  75. package/dist/preview/chunk.R26DREVU.js +1 -0
  76. package/dist/preview/chunk.RI3PYG5T.js +19 -0
  77. package/dist/preview/chunk.RIEHYQLK.js +1101 -0
  78. package/dist/preview/chunk.RRVIXV7W.js +1 -0
  79. package/dist/preview/chunk.RYT5U3QM.js +1 -0
  80. package/dist/preview/chunk.SE5SKFQH.js +1 -0
  81. package/dist/preview/chunk.SHPXD6FC.js +1 -0
  82. package/dist/preview/chunk.SOBC3CTN.js +47 -0
  83. package/dist/preview/chunk.SOD3PBJM.js +1 -0
  84. package/dist/preview/chunk.T3VPD7JQ.js +1 -0
  85. package/dist/preview/chunk.TI4OSTQV.js +1 -0
  86. package/dist/preview/chunk.UDSEJKCY.js +1 -0
  87. package/dist/preview/chunk.UGFDSE37.js +1 -0
  88. package/dist/preview/chunk.UT6642FC.js +1 -0
  89. package/dist/preview/chunk.UWGWXFWZ.js +1 -0
  90. package/dist/preview/{chunk.IKT7JQUW.js → chunk.UZWWDAGM.js} +1 -1
  91. package/dist/preview/chunk.V5ZYUVMH.js +1 -0
  92. package/dist/preview/chunk.V7BDAGDE.js +35 -0
  93. package/dist/preview/chunk.VG56IUIQ.js +9 -0
  94. package/dist/preview/chunk.VOAZBHCG.js +1 -0
  95. package/dist/preview/chunk.VS7K3SCD.js +9 -0
  96. package/dist/preview/chunk.VSZQXB4Q.js +3 -0
  97. package/dist/preview/chunk.W3S6UXNA.js +1 -0
  98. package/dist/preview/chunk.WAFDCOOG.js +3 -0
  99. package/dist/preview/chunk.WYTIOLPP.js +1 -0
  100. package/dist/preview/chunk.X37L5TN5.js +1 -0
  101. package/dist/preview/chunk.XDYAG276.js +1 -0
  102. package/dist/preview/chunk.XRJBLH4N.js +1 -0
  103. package/dist/preview/chunk.XS7YFNDU.js +1 -0
  104. package/dist/preview/chunk.XSTXV6FP.js +6 -0
  105. package/dist/preview/chunk.Y4UXEL6Y.js +1 -0
  106. package/dist/preview/chunk.YJUB4OD7.js +1 -0
  107. package/dist/preview/chunk.YLQB3KBA.js +1 -0
  108. package/dist/preview/chunk.YNQDVGZM.js +1 -0
  109. package/dist/preview/chunk.YV2LJFGS.js +1 -0
  110. package/dist/preview/chunk.Z2YUYZT4.js +1 -0
  111. package/dist/preview/chunk.ZYKAS4BT.js +1 -0
  112. package/dist/preview/page.js +6 -6
  113. package/package.json +6 -6
  114. package/dist/preview/chunk.22H4JXTH.js +0 -8
  115. package/dist/preview/chunk.25OYH6MY.js +0 -1
  116. package/dist/preview/chunk.2GBQJXJH.js +0 -19
  117. package/dist/preview/chunk.2VUG6EAN.js +0 -1
  118. package/dist/preview/chunk.337WDTG3.js +0 -2
  119. package/dist/preview/chunk.3HLLQ5CJ.js +0 -1
  120. package/dist/preview/chunk.46KUPBQC.js +0 -1
  121. package/dist/preview/chunk.4H7CQE56.js +0 -1
  122. package/dist/preview/chunk.4HGBVU5B.js +0 -1
  123. package/dist/preview/chunk.4RO5DA22.js +0 -1
  124. package/dist/preview/chunk.4TUNX4WM.js +0 -29
  125. package/dist/preview/chunk.6LJ66MB7.js +0 -1
  126. package/dist/preview/chunk.6R4EI47C.js +0 -1
  127. package/dist/preview/chunk.7S22MBNN.js +0 -1
  128. package/dist/preview/chunk.A73BXXE4.js +0 -3
  129. package/dist/preview/chunk.AHDOKM4O.js +0 -1
  130. package/dist/preview/chunk.ARE3MEDN.js +0 -1
  131. package/dist/preview/chunk.ASFZTYFO.js +0 -1
  132. package/dist/preview/chunk.BBJZ6O7J.js +0 -1
  133. package/dist/preview/chunk.BCBH6WJF.js +0 -1
  134. package/dist/preview/chunk.CAZAB352.js +0 -1
  135. package/dist/preview/chunk.CY7MDLRS.js +0 -1
  136. package/dist/preview/chunk.DAVRLRGB.js +0 -1
  137. package/dist/preview/chunk.DCIC3YHX.js +0 -1
  138. package/dist/preview/chunk.EW4JFOJY.js +0 -1
  139. package/dist/preview/chunk.FP27W5MU.js +0 -1
  140. package/dist/preview/chunk.G2OOBROL.js +0 -1040
  141. package/dist/preview/chunk.GCKSQ52O.js +0 -1
  142. package/dist/preview/chunk.GE5EAN36.js +0 -2
  143. package/dist/preview/chunk.HOPIZMJR.js +0 -2
  144. package/dist/preview/chunk.IBGO4BUF.js +0 -1
  145. package/dist/preview/chunk.IDI2BQ7Y.js +0 -9
  146. package/dist/preview/chunk.IH42QTOM.js +0 -1
  147. package/dist/preview/chunk.ISRS7GOT.js +0 -321
  148. package/dist/preview/chunk.J6CBMLGR.js +0 -1
  149. package/dist/preview/chunk.JRCV6HVV.js +0 -1
  150. package/dist/preview/chunk.KWW3YHQ4.js +0 -23
  151. package/dist/preview/chunk.MKNXV4TM.js +0 -8
  152. package/dist/preview/chunk.MRK6QJV5.js +0 -25
  153. package/dist/preview/chunk.MVNIKZIC.js +0 -1
  154. package/dist/preview/chunk.N2WTNKEV.js +0 -1
  155. package/dist/preview/chunk.N7HCALRK.js +0 -61
  156. package/dist/preview/chunk.NRRUGG22.js +0 -1
  157. package/dist/preview/chunk.OGL4PHTY.js +0 -1
  158. package/dist/preview/chunk.ONDILMIX.js +0 -1
  159. package/dist/preview/chunk.PFQFPJ5L.js +0 -16
  160. package/dist/preview/chunk.PN2H6X7O.js +0 -1
  161. package/dist/preview/chunk.PWHJHFC4.js +0 -1
  162. package/dist/preview/chunk.Q3HVA6L4.js +0 -1
  163. package/dist/preview/chunk.RZLNDVGN.js +0 -107
  164. package/dist/preview/chunk.SBHVVJY7.js +0 -1
  165. package/dist/preview/chunk.SNBIZ3B6.js +0 -1
  166. package/dist/preview/chunk.TBG2QBOS.js +0 -1
  167. package/dist/preview/chunk.VR735ZQL.js +0 -1
  168. package/dist/preview/chunk.VSXCXPK2.js +0 -1
  169. package/dist/preview/chunk.W3LDQ6B2.js +0 -1
  170. package/dist/preview/chunk.WCNONCTL.js +0 -6
  171. package/dist/preview/chunk.WHTNSETN.js +0 -1
  172. package/dist/preview/chunk.XG67BWH6.js +0 -1
  173. package/dist/preview/chunk.XRM6WXPW.js +0 -1
  174. package/dist/preview/chunk.Y5LPZLDE.js +0 -1
  175. package/dist/preview/chunk.YETBY2LM.js +0 -1
  176. package/dist/preview/chunk.YSYT3ASK.js +0 -1
  177. package/dist/preview/chunk.ZEUBAAVQ.js +0 -1
  178. package/dist/preview/chunk.ZJDRD6PO.js +0 -1
@@ -1,1040 +0,0 @@
1
- import{a as Be,b as Oe,c as qt,d as _t,f as We}from"./chunk.J6CBMLGR.js";import{h as Pt,i as Dt,j as Bt,k as Ot,n as Wt,o as Ft}from"./chunk.22H4JXTH.js";import"./chunk.2VUG6EAN.js";import"./chunk.IH42QTOM.js";import"./chunk.TBG2QBOS.js";import"./chunk.PN2H6X7O.js";import"./chunk.BCBH6WJF.js";import"./chunk.N7HCALRK.js";import{d as Kt}from"./chunk.XG67BWH6.js";import{b as Nt}from"./chunk.25OYH6MY.js";import{b as Lt}from"./chunk.OGL4PHTY.js";import{a as na}from"./chunk.IKT7JQUW.js";import{b as Et,i as Mt}from"./chunk.ISRS7GOT.js";import"./chunk.DCIC3YHX.js";import{l as Rt}from"./chunk.WHTNSETN.js";import{a as Ht}from"./chunk.4H7CQE56.js";import{a as It,b as Q}from"./chunk.W3LDQ6B2.js";import"./chunk.Q3HVA6L4.js";import"./chunk.AHDOKM4O.js";import"./chunk.6R4EI47C.js";import"./chunk.SNBIZ3B6.js";import{a as wt,d as ze}from"./chunk.6LJ66MB7.js";import{A as yt,D as kt,E as St,F as $t,J as he,V as zt,ca as Ct,da as T,fa as At,h as ht,i as ye,l as we,m as mt,n as ft,o as ke,p as bt,q as Se,qa as De,r as Ne,ra as Tt,sa as de,u as Pe,va as $e,x as xt,ya as Ee}from"./chunk.NRRUGG22.js";import{$ as Le,$a as gt,Fb as W,Hb as F,V as lt,X as xe,Y as dt,_ as Me,cb as pt,db as ct,nb as ut,ub as vt}from"./chunk.MKNXV4TM.js";import{a as ae,b as E}from"./chunk.MRK6QJV5.js";import{b as w}from"./chunk.AJZBJBMO.js";var Ce=t=>`${t.saturation}% ${t.lightness}%`,Ut=t=>`${Ce(t)} / ${t.alpha}`;function la(t){let a=vt(t);return`
2
-
3
-
4
- .graview-altitude-control {
5
- --graview-altitude: 0;
6
- transition:
7
- --graview-altitude 640ms cubic-bezier(0.33, 0, 0.2, 1),
8
- color 240ms ease,
9
- border-color 240ms ease;
10
- }
11
- .graview-altitude-mark * {
12
- transform-box: fill-box;
13
- transform-origin: center;
14
- }
15
-
16
- .graview-altitude-mark-ring {
17
- transform: scaleX(calc(1 - 0.48 * var(--graview-altitude)));
18
- opacity: calc(0.55 + 0.4 * var(--graview-altitude));
19
- }
20
- .graview-altitude-mark-apex {
21
- transform: translateY(calc(2.6px * var(--graview-altitude)));
22
- }
23
-
24
- .graview-altitude-mark-wing {
25
- opacity: calc(0.75 * (1 - var(--graview-altitude)));
26
- }
27
- .graview-altitude-mark-wing[data-side="left"] {
28
- transform: translate(calc(4.4px * var(--graview-altitude)), calc(-0.8px * var(--graview-altitude)));
29
- }
30
- .graview-altitude-mark-wing[data-side="right"] {
31
- transform: translate(calc(-4.4px * var(--graview-altitude)), calc(-0.8px * var(--graview-altitude)));
32
- }
33
-
34
-
35
- .graview-kind-card {
36
- height: 100%;
37
- transition: transform 170ms cubic-bezier(0.22, 1, 0.36, 1), height 170ms ease,
38
- box-shadow 170ms ease;
39
-
40
- overflow: clip;
41
- }
42
- .graview-kind-card:hover,
43
- .graview-kind-card:focus-within {
44
- height: auto;
45
- transform: translateY(-4px) scale(1.05);
46
- box-shadow: var(--graview-lift-high);
47
- position: relative;
48
- z-index: ${W.lines};
49
- }
50
-
51
-
52
- .graview-kind-open { display: none; }
53
-
54
-
55
-
56
- .graview-drive-in {
57
-
58
- position: absolute;
59
- left: 50%;
60
- top: 42px;
61
- transform: translateX(-50%);
62
- z-index: ${W.lines};
63
- display: grid;
64
- justify-items: center;
65
- gap: 4px;
66
- animation: graview-settle 240ms ease backwards;
67
- }
68
- [data-graview-landmark] .graview-drive-in {
69
- top: 4px;
70
- }
71
-
72
- .graview-drive-in-marquee {
73
- display: grid;
74
- gap: ${2}px;
75
- width: ${156}px;
76
- justify-items: stretch;
77
- }
78
- .graview-drive-in-thumb {
79
- position: relative;
80
- display: grid;
81
- align-content: center;
82
- box-sizing: border-box;
83
- min-height: max(${he/16}rem, ${he}px);
84
- padding: 3px 6px 3px 10px;
85
- border-left: 2px solid var(--graview-edge-bright, var(--graview-edge));
86
- color: var(--graview-ink);
87
- font: inherit;
88
- text-align: left;
89
- }
90
- .graview-drive-in-thumb[data-graview-pressed] {
91
- border-left-color: var(--graview-accent);
92
- color: var(--graview-accent);
93
- }
94
-
95
- .graview-drive-in-thumb-press {
96
- position: absolute;
97
- inset: 0;
98
- min-height: max(${he/16}rem, ${he}px);
99
- margin: 0;
100
- padding: 0;
101
- border: none;
102
- border-radius: 0 4px 4px 0;
103
- background: transparent;
104
- box-shadow: none;
105
- cursor: pointer;
106
- }
107
- .graview-drive-in-thumb-press:hover {
108
- background: color-mix(in srgb, var(--graview-accent) 8%, transparent);
109
- }
110
- .graview-drive-in-thumb-press:focus-visible {
111
- outline: 2px solid var(--graview-accent);
112
- outline-offset: 1px;
113
- }
114
- .graview-drive-in-thumb-title {
115
- display: block;
116
- font-size: 0.8125rem;
117
- font-weight: 500;
118
- line-height: 1.25;
119
- overflow-wrap: anywhere;
120
- text-shadow: 0 0 3px var(--graview-ground), 0 0 6px var(--graview-ground);
121
- }
122
- .graview-drive-in-thumb[data-graview-pressed] .graview-drive-in-thumb-title {
123
- font-weight: 600;
124
- }
125
-
126
-
127
- .graview-occupants {
128
- position: absolute;
129
- inset: 0;
130
- pointer-events: none;
131
- z-index: ${W.occupants};
132
- }
133
- .graview-figure {
134
- position: absolute;
135
- left: 0;
136
- top: 0;
137
- width: 0;
138
- height: 0;
139
- pointer-events: none;
140
- transition: transform 420ms cubic-bezier(0.33, 0, 0.2, 1);
141
- will-change: transform;
142
- }
143
- .graview-figure-body {
144
- position: absolute;
145
- left: -16px;
146
- top: -38px;
147
- width: 32px;
148
- height: 38px;
149
- min-height: max(1.5rem, 24px);
150
- padding: 0;
151
- border: 0;
152
- background: transparent;
153
- color: hsl(var(--graview-hue, 200) 50% 48%);
154
- cursor: pointer;
155
- pointer-events: auto;
156
- border-radius: 6px;
157
- }
158
- .graview-figure-body:focus-visible {
159
- outline: 2px solid var(--graview-accent);
160
- outline-offset: 2px;
161
- }
162
- .graview-figure-body svg {
163
- display: block;
164
- width: 32px;
165
- height: 38px;
166
- overflow: visible;
167
- }
168
- .graview-figure[data-graview-mode="following"] .graview-figure-body {
169
- color: var(--graview-accent);
170
- }
171
- .graview-figure[data-graview-mode="refused"] .graview-figure-body {
172
- color: var(--graview-warn);
173
- }
174
- .graview-figure-name {
175
- position: absolute;
176
- left: 50%;
177
- top: 2px;
178
- transform: translateX(-50%);
179
- white-space: nowrap;
180
- font-size: 0.75rem;
181
- letter-spacing: 0.08em;
182
- text-transform: uppercase;
183
- color: var(--graview-ink-muted);
184
- pointer-events: none;
185
- }
186
-
187
- .graview-figure[data-graview-person] .graview-figure-body {
188
- left: -11px;
189
- top: -24px;
190
- width: 22px;
191
- height: 24px;
192
- min-height: 0;
193
- }
194
- .graview-figure[data-graview-person] .graview-figure-body svg {
195
- width: 22px;
196
- height: 24px;
197
- }
198
- .graview-figure[data-graview-person][data-graview-followed] .graview-figure-body {
199
- color: var(--graview-accent);
200
- }
201
-
202
- .graview-figure[data-graview-theirs] .graview-figure-body {
203
- opacity: 0.85;
204
- }
205
-
206
- .graview-figure-count {
207
- position: absolute;
208
- transform: translate(-50%, -100%);
209
- padding: 1px 7px;
210
- border-radius: 999px;
211
- border: 1px solid var(--graview-edge);
212
- background: var(--graview-float);
213
- color: var(--graview-ink-muted);
214
- font-size: 0.75rem;
215
- white-space: nowrap;
216
- pointer-events: auto;
217
- }
218
-
219
- .graview-presence-over {
220
- position: absolute;
221
- border: 2px solid hsl(var(--graview-hue, 200) 55% 52%);
222
- border-radius: 8px;
223
- pointer-events: none;
224
- opacity: 0.75;
225
- transition: left 200ms ease, top 200ms ease, width 200ms ease, height 200ms ease;
226
- }
227
-
228
- .graview-figure-edge {
229
- position: absolute;
230
- min-height: max(1.5rem, 24px);
231
- padding: 3px 8px;
232
- border-radius: 999px;
233
- border: 1px solid var(--graview-edge);
234
- background: var(--graview-float);
235
- color: var(--graview-ink-muted);
236
- font-size: 0.75rem;
237
- white-space: nowrap;
238
- pointer-events: auto;
239
- cursor: pointer;
240
- }
241
-
242
- .graview-kind-members {
243
- display: flex;
244
- flex-direction: column;
245
- align-items: stretch;
246
- gap: 3px;
247
- margin-top: 7px;
248
- animation: graview-settle 240ms ease backwards;
249
- }
250
-
251
-
252
- .graview-kind-past {
253
- display: inline-flex;
254
- align-items: center;
255
- flex: 0 0 auto;
256
-
257
- min-height: max(1.5rem, 24px);
258
- padding: 1px 8px;
259
- margin: -3px 0;
260
- border-radius: 999px;
261
- border: 1px dashed var(--graview-edge);
262
- background: none;
263
- box-shadow: none;
264
- color: var(--graview-ink-faint);
265
- cursor: pointer;
266
- font-size: 0.75rem;
267
- white-space: nowrap;
268
- }
269
- .graview-kind-past:hover {
270
- color: var(--graview-accent);
271
- border-color: var(--graview-accent-dim);
272
- }
273
-
274
-
275
- .graview-kind-card[data-graview-emphasis="dimmed"] {
276
- opacity: 0.42;
277
- transition: opacity 160ms ease;
278
- }
279
- .graview-kind-card[data-graview-emphasis="lit"] {
280
- z-index: ${W.stage};
281
- }
282
- .graview-kind-card[data-graview-emphasis="lit"] .graview-kind-face {
283
- border-color: var(--graview-accent) !important;
284
- box-shadow: 0 0 0 1px var(--graview-accent-dim);
285
- }
286
- .graview-kind-hits {
287
- display: inline-flex;
288
- align-items: center;
289
- flex: 0 0 auto;
290
- min-height: max(1.5rem, 24px);
291
- padding: 1px 8px;
292
- margin: -3px 0;
293
- border-radius: 999px;
294
- border: 1px solid var(--graview-accent);
295
- background: none;
296
- box-shadow: none;
297
- color: var(--graview-accent);
298
- cursor: pointer;
299
- font-size: 0.75rem;
300
- font-variant-numeric: tabular-nums;
301
- white-space: nowrap;
302
- }
303
- @media (prefers-reduced-motion: reduce) {
304
- .graview-kind-card[data-graview-emphasis="dimmed"] { transition: none; }
305
- }
306
-
307
-
308
- .graview-kind-block {
309
- display: block;
310
-
311
- pointer-events: none;
312
- position: absolute;
313
- left: 8%;
314
- bottom: 2px;
315
- width: 84%;
316
- height: auto;
317
-
318
- max-height: calc(100% - var(--graview-marquee-room, 0px));
319
- opacity: var(--graview-altitude);
320
- transform: translateY(calc((1 - var(--graview-altitude)) * 18px));
321
- filter: drop-shadow(${t==="light"?"10px 7px 14px rgba(20,30,32,0.28)":"12px 8px 18px rgba(0,0,0,0.6)"});
322
- }
323
-
324
-
325
- .graview-kind-landmark {
326
- display: block;
327
- left: 50%;
328
-
329
- bottom: 2px;
330
- aspect-ratio: 1;
331
-
332
- height: calc((100% - var(--graview-marquee-room, 0px)) * (0.72 + var(--graview-rise, 24) * 0.008));
333
- width: auto;
334
-
335
- min-height: min(5em, calc(96% - var(--graview-marquee-room, 0px)));
336
-
337
- transform-origin: bottom center;
338
- transform: translateX(-50%) scale(calc(0.55 + var(--graview-altitude) * 0.45));
339
-
340
- filter: drop-shadow(${t==="light"?"6px 5px 7px rgba(20,30,32,0.16)":"7px 6px 9px rgba(0,0,0,0.45)"});
341
- }
342
-
343
-
344
- .graview-kind-landmark [data-graview-figure] {
345
- width: 100% !important;
346
- height: 100% !important;
347
- color: hsl(var(--graview-hue, 200) ${t==="light"?"42% 44%":"45% 62%"}) !important;
348
- }
349
- .graview-kind-landmark svg {
350
- width: 100%;
351
- height: 100%;
352
- stroke-width: 0.85;
353
- }
354
-
355
-
356
- .graview-kind-face {
357
- transition: border-radius 640ms cubic-bezier(0.33, 0, 0.2, 1),
358
- padding 640ms cubic-bezier(0.33, 0, 0.2, 1),
359
- box-shadow 640ms ease;
360
- }
361
-
362
-
363
- .graview-seat-marks {
364
- position: absolute;
365
- inset: 0;
366
- pointer-events: none;
367
- z-index: ${W.seatMarks};
368
- }
369
- .graview-seat-mark {
370
- position: absolute;
371
- display: grid;
372
- place-items: center;
373
- width: 16px;
374
- height: 16px;
375
- margin: -8px 0 0 -8px;
376
- border-radius: 999px;
377
- border: 1px solid var(--graview-edge);
378
- background: var(--graview-float);
379
- color: oklch(0.62 0.16 var(--graview-hue, 250));
380
- font-size: 0.6875rem;
381
- line-height: 1;
382
- box-shadow: var(--graview-lift-low);
383
- animation: graview-seat-mark 4000ms ease-out forwards;
384
- }
385
-
386
- .graview-seat-asking {
387
- position: absolute;
388
- transform: translate(-50%, -100%);
389
- display: inline-flex;
390
- align-items: center;
391
- gap: 6px;
392
- max-width: 260px;
393
- padding: 3px 9px 3px 6px;
394
- border-radius: 999px;
395
- border: 1px solid var(--graview-accent);
396
- background: var(--graview-float);
397
- color: var(--graview-ink);
398
- font-size: 0.75rem;
399
- line-height: 1.3;
400
- box-shadow: var(--graview-lift-low);
401
- pointer-events: auto;
402
- }
403
- .graview-seat-asking > [aria-hidden] {
404
- display: grid;
405
- place-items: center;
406
- width: 14px;
407
- height: 14px;
408
- border-radius: 999px;
409
- background: var(--graview-accent);
410
- color: var(--graview-panel);
411
- font-size: 0.6875rem;
412
- }
413
- .graview-seat-asking-said {
414
- overflow: hidden;
415
- text-overflow: ellipsis;
416
- white-space: nowrap;
417
- }
418
-
419
- @keyframes graview-seat-mark {
420
- 0% { opacity: 0; transform: translateY(3px) scale(0.8); }
421
- 8% { opacity: 1; transform: none; }
422
- 80% { opacity: 1; }
423
- 100% { opacity: 0; }
424
- }
425
- @media (prefers-reduced-motion: reduce) {
426
- .graview-figure { transition: none; }
427
- }
428
-
429
- [data-graview-altitude] .graview-kind-card {
430
- overflow: visible;
431
- }
432
-
433
- [data-graview-altitude] .graview-kind-card:hover,
434
- [data-graview-altitude] .graview-kind-card:focus-within {
435
- transform: none;
436
- box-shadow: none;
437
- background: transparent;
438
- }
439
-
440
-
441
- .graview-plots {
442
- z-index: ${W.plots};
443
- opacity: var(--graview-altitude);
444
- transition: opacity 640ms cubic-bezier(0.33, 0, 0.2, 1);
445
- }
446
- .graview-plot-tile {
447
- fill: hsl(var(--graview-hue, 200) ${Ut(a.plot)});
448
- stroke: hsl(var(--graview-hue, 200) ${Ut(a.plotEdge)});
449
- stroke-width: 1;
450
- stroke-linejoin: round;
451
- pointer-events: auto;
452
- cursor: pointer;
453
- filter: drop-shadow(${t==="light"?"5px 4px 6px rgba(20,30,32,0.14)":"6px 5px 8px rgba(0,0,0,0.4)"});
454
- transition: fill 170ms ease;
455
- }
456
- .graview-plot-tile:hover {
457
- fill: hsl(var(--graview-hue, 200) 45% ${t==="light"?"58%":"48%"} / ${t==="light"?"0.2":"0.3"});
458
- }
459
- .graview-plot[data-graview-pinned] .graview-plot-tile {
460
- stroke-dasharray: 4 3;
461
- }
462
-
463
- .graview-village { pointer-events: none; }
464
- .graview-building polygon { stroke-width: 0.8; }
465
- .graview-building[data-graview-flagged] .graview-iso-roof { fill: var(--graview-warn); stroke: var(--graview-warn); }
466
- .graview-building[data-graview-selected] polygon { stroke: var(--graview-accent); stroke-width: 1.4; }
467
- .graview-building[data-graview-selected] .graview-iso-roof { fill: color-mix(in oklab, var(--graview-accent) 45%, var(--graview-panel)); }
468
- .graview-village-rest {
469
- font-size: 0.75rem;
470
- letter-spacing: 0.06em;
471
- fill: var(--graview-ink-muted);
472
- }
473
-
474
- .graview-road-edge {
475
- fill: none;
476
- stroke: var(--graview-ink);
477
- stroke-opacity: ${t==="light"?"0.28":"0.4"};
478
- stroke-width: 7;
479
- stroke-linejoin: round;
480
- stroke-linecap: round;
481
- }
482
- .graview-road-bed {
483
- fill: none;
484
- stroke: var(--graview-ground);
485
- stroke-width: 5;
486
- stroke-linejoin: round;
487
- stroke-linecap: round;
488
- }
489
- .graview-road[data-graview-lit] .graview-road-edge {
490
- stroke: var(--graview-accent);
491
- stroke-opacity: 0.9;
492
- }
493
-
494
- .graview-ground[data-graview-altitude] {
495
- background:
496
- linear-gradient(to top, color-mix(in oklab, var(--graview-ground) ${t==="light"?"93%":"88%"}, var(--graview-ink)) 0%, var(--graview-ground) 78%),
497
- var(--graview-ground);
498
- }
499
-
500
-
501
- [data-graview-altitude] .graview-kind-open {
502
- opacity: 0.5;
503
- transition: opacity 150ms ease;
504
- }
505
-
506
- [data-graview-altitude] .graview-kind-open-word {
507
- display: none;
508
- }
509
- [data-graview-altitude] .graview-kind-card:hover .graview-kind-open,
510
- [data-graview-altitude] .graview-kind-card:focus-within .graview-kind-open,
511
- [data-graview-altitude] .graview-kind-open[aria-expanded="true"] {
512
- opacity: 1;
513
- }
514
- [data-graview-altitude] .graview-kind-card:hover .graview-kind-open-word,
515
- [data-graview-altitude] .graview-kind-card:focus-within .graview-kind-open-word,
516
- [data-graview-altitude] .graview-kind-open[aria-expanded="true"] .graview-kind-open-word {
517
- display: inline;
518
- }
519
- [data-graview-altitude] .graview-kind-open {
520
- display: inline-flex;
521
- align-items: center;
522
- justify-content: center;
523
- flex: 0 0 auto;
524
-
525
- min-height: max(1.5rem, 24px);
526
-
527
- min-width: max(1.5rem, 24px);
528
- padding: 1px 6px;
529
- margin: -3px 0;
530
-
531
- border-radius: 6px;
532
- border: 1px solid transparent;
533
- background: transparent;
534
- box-shadow: none;
535
- color: var(--graview-ink-muted);
536
- cursor: pointer;
537
-
538
- font-size: 0.75rem;
539
- letter-spacing: 0.08em;
540
- text-transform: uppercase;
541
- line-height: 1;
542
- white-space: nowrap;
543
- }
544
- [data-graview-altitude] .graview-kind-open:hover {
545
- color: var(--graview-accent);
546
- text-decoration: underline;
547
- }
548
-
549
-
550
- .graview-screen-grip {
551
- display: none;
552
- }
553
- [data-graview-altitude] [data-graview-screen] .graview-screen-grip {
554
- display: flex;
555
- align-items: center;
556
- gap: 8px;
557
- position: absolute;
558
- left: 0;
559
- right: 0;
560
- top: 0;
561
-
562
- height: 32px;
563
- padding: 0 6px 0 12px;
564
- box-sizing: border-box;
565
- cursor: grab;
566
-
567
- background: var(--graview-panel-muted);
568
- border-bottom: 1px solid var(--graview-edge);
569
- z-index: ${W.lines};
570
- }
571
- [data-graview-altitude] [data-graview-screen] .graview-screen-title {
572
- flex: 1 1 auto;
573
- min-width: 0;
574
- overflow: hidden;
575
- text-overflow: ellipsis;
576
- white-space: nowrap;
577
- font-size: 0.8125rem;
578
- font-weight: 600;
579
- color: var(--graview-ink);
580
- }
581
- [data-graview-altitude] [data-graview-screen] .graview-screen-grip:active {
582
- cursor: grabbing;
583
- }
584
- .graview-screen-fullscreen {
585
- flex: 0 0 auto;
586
- min-height: max(1.5rem, 24px);
587
- padding: 1px 10px;
588
- border-radius: 999px;
589
- border: 1px solid var(--graview-edge);
590
- background: var(--graview-panel);
591
- color: var(--graview-accent);
592
- font-size: 0.8125rem;
593
- font-weight: 600;
594
- white-space: nowrap;
595
- cursor: pointer;
596
- box-shadow: none;
597
- }
598
- .graview-screen-fullscreen:hover:not(:disabled) {
599
- border-color: var(--graview-accent);
600
- }
601
- [data-graview-altitude] .graview-kind-members > [data-graview-pick] {
602
- width: 100%;
603
- box-sizing: border-box;
604
- justify-content: flex-start;
605
- max-width: none;
606
- }
607
-
608
- [data-graview-altitude] .graview-kind-face[data-graview-opened] {
609
-
610
- display: flex !important;
611
- flex-wrap: wrap;
612
- justify-content: flex-start !important;
613
- align-items: baseline !important;
614
- column-gap: 10px;
615
- row-gap: 2px;
616
- border-radius: var(--graview-radius) !important;
617
-
618
- background: var(--graview-panel) !important;
619
- border-color: var(--graview-edge) !important;
620
- text-shadow: none;
621
- padding: 10px 12px 11px !important;
622
- width: 236px;
623
- max-width: 236px;
624
- box-shadow: var(--graview-lift-high) !important;
625
- }
626
- [data-graview-altitude] .graview-kind-face[data-graview-opened] .graview-kind-members {
627
- flex: 1 0 100%;
628
- margin-top: 8px;
629
- padding-top: 8px;
630
- border-top: 1px solid var(--graview-edge);
631
- }
632
- [data-graview-altitude] .graview-kind-block[data-graview-opened] {
633
- opacity: calc(var(--graview-altitude) * 0.22);
634
- }
635
-
636
-
637
- .graview-kind-tag {
638
- position: absolute;
639
- top: -9px;
640
- right: 14px;
641
- z-index: ${W.tag};
642
- display: var(--graview-kit-tags, inline-flex);
643
- align-items: center;
644
- gap: 5px;
645
- padding: 2px 8px;
646
-
647
- border-radius: 4px;
648
-
649
- border: 1px solid hsl(var(--graview-hue, 200) 45% var(--graview-tint-lightness) / 0.55);
650
- color: hsl(var(--graview-hue, 200) 45% calc(var(--graview-tint-lightness) + ${t==="light"?"-32%":"28%"}));
651
- background: var(--graview-float);
652
- box-shadow: var(--graview-lift-low);
653
- font-size: 0.6875rem;
654
- letter-spacing: 0.14em;
655
- text-transform: uppercase;
656
- color: var(--graview-ink-faint);
657
- pointer-events: none;
658
- }
659
-
660
-
661
- .graview-edge-hit:hover {
662
- stroke: var(--graview-accent);
663
- opacity: 0.3;
664
- }
665
-
666
-
667
-
668
- .graview-band-group {
669
- display: grid;
670
- align-content: center;
671
- gap: 2px;
672
- height: 100%;
673
-
674
- min-height: max(1.75rem, 28px);
675
- box-sizing: border-box;
676
- padding: 6px 10px;
677
- border-radius: var(--graview-radius-sm, 8px);
678
- border: 1px solid var(--graview-edge);
679
- background: var(--graview-panel);
680
- color: var(--graview-ink);
681
- overflow: hidden;
682
- cursor: pointer;
683
- }
684
- .graview-band-group[data-graview-band="picture"] {
685
- border-style: dashed;
686
- }
687
- .graview-band-group[data-graview-emphasis="lit"] {
688
- border-color: var(--graview-accent);
689
- }
690
- .graview-band-group[data-graview-emphasis="dimmed"] {
691
- opacity: 0.5;
692
- }
693
- .graview-band-group-head {
694
- display: flex;
695
- align-items: baseline;
696
- gap: 6px;
697
- min-width: 0;
698
- }
699
- .graview-band-group-name {
700
- flex: 1;
701
- min-width: 0;
702
- font-weight: 600;
703
- font-size: 0.9375rem;
704
- line-height: 1.25;
705
- white-space: nowrap;
706
- overflow: hidden;
707
- text-overflow: ellipsis;
708
- }
709
- .graview-band-group-open {
710
- font-size: 0.75rem;
711
- color: var(--graview-accent);
712
- }
713
- .graview-band-group-names {
714
- font-size: 0.8125rem;
715
- line-height: 1.3;
716
- color: var(--graview-ink-muted);
717
- white-space: nowrap;
718
- overflow: hidden;
719
- text-overflow: ellipsis;
720
- }
721
- .graview-band-group-count {
722
- color: var(--graview-ink);
723
- font-variant-numeric: tabular-nums;
724
- }
725
- .graview-beyond {
726
- position: relative;
727
- height: 100%;
728
- box-sizing: border-box;
729
- border-radius: var(--graview-radius-sm, 8px);
730
- border: 1px solid var(--graview-edge);
731
- background: var(--graview-panel);
732
- }
733
- .graview-beyond-more {
734
- display: flex;
735
- align-items: center;
736
- gap: 6px;
737
- width: 100%;
738
- height: 100%;
739
- min-height: max(1.75rem, 28px);
740
- padding: var(--graview-pad-sm, 8px);
741
- box-sizing: border-box;
742
- border: none;
743
- border-radius: inherit;
744
- background: none;
745
- color: var(--graview-ink-muted);
746
- cursor: pointer;
747
- font: inherit;
748
- font-size: 0.875rem;
749
- text-align: left;
750
- }
751
- .graview-beyond-more:hover,
752
- .graview-beyond[data-graview-beyond-open] .graview-beyond-more {
753
- color: var(--graview-accent);
754
- background: var(--graview-wash);
755
- }
756
- .graview-beyond-count {
757
- font-family: var(--graview-font-display);
758
- font-size: 1.1875rem;
759
- line-height: 1;
760
- color: inherit;
761
- }
762
- .graview-beyond-word {
763
- font-size: 0.75rem;
764
- letter-spacing: 0.08em;
765
- text-transform: uppercase;
766
- }
767
- .graview-beyond-chevron {
768
- margin-left: auto;
769
- font-size: 0.8125rem;
770
- }
771
-
772
- .graview-beyond-list {
773
- position: absolute;
774
- left: 0;
775
- bottom: calc(100% + 6px);
776
-
777
- z-index: ${F("popover")};
778
- margin: 0;
779
- padding: 6px;
780
- list-style: none;
781
- display: flex;
782
- flex-direction: column;
783
- gap: 1px;
784
-
785
- min-width: 200px;
786
- max-width: min(280px, 92%);
787
- max-height: 60vh;
788
- overflow: auto;
789
- border-radius: var(--graview-radius-sm, 8px);
790
- border: 1px solid var(--graview-edge);
791
- background: var(--graview-panel);
792
- box-shadow: 0 18px 44px -18px rgba(0, 0, 0, 0.45);
793
- }
794
- .graview-beyond-list button {
795
- display: flex;
796
- align-items: center;
797
- gap: 10px;
798
- width: 100%;
799
-
800
- min-height: max(1.75rem, 28px);
801
- padding: 0 8px;
802
- border: none;
803
- border-radius: var(--graview-radius-sm, 6px);
804
- background: none;
805
- color: var(--graview-ink);
806
- cursor: pointer;
807
- font: inherit;
808
- font-size: 0.875rem;
809
- text-align: left;
810
- overflow-wrap: anywhere;
811
- white-space: nowrap;
812
- }
813
- .graview-beyond-list button:hover {
814
- color: var(--graview-accent);
815
- background: var(--graview-wash);
816
- }
817
- .graview-beyond-list button[aria-current] {
818
- color: var(--graview-ink-muted);
819
- cursor: default;
820
- }
821
- .graview-beyond-tally {
822
- margin-left: auto;
823
- font-size: 0.75rem;
824
- font-variant-numeric: tabular-nums;
825
- color: var(--graview-ink-faint);
826
- }
827
- .graview-iso-roof {
828
- fill: hsl(var(--graview-hue, 200) ${Ce(a.roof)});
829
- stroke: ${a.roofEdge};
830
- stroke-width: 1;
831
- }
832
- .graview-iso-right {
833
- fill: hsl(var(--graview-hue, 200) ${Ce(a.right)});
834
- }
835
- .graview-iso-left {
836
- fill: hsl(var(--graview-hue, 200) ${Ce(a.left)});
837
- }
838
-
839
- [data-graview-altitude] .graview-kind-face {
840
- position: absolute !important;
841
- left: 50% !important;
842
- top: 2% !important;
843
- transform: translateX(-50%);
844
- width: max-content;
845
-
846
- max-width: none;
847
- white-space: nowrap;
848
- height: auto !important;
849
- flex-direction: row !important;
850
- align-items: baseline !important;
851
- gap: 7px !important;
852
- padding: 3px 4px !important;
853
-
854
- border-color: transparent !important;
855
- border-radius: 0 !important;
856
- background: none !important;
857
- box-shadow: none !important;
858
- text-shadow: 0 0 3px var(--graview-ground), 0 0 6px var(--graview-ground), 0 0 10px var(--graview-ground);
859
- z-index: ${W.tag};
860
- }
861
-
862
- [data-graview-altitude] .graview-kind-face > [data-graview-tally] {
863
- top: auto !important;
864
- bottom: 0;
865
- height: 2px !important;
866
- }
867
- [data-graview-altitude] .graview-kind-face > [data-graview-tally]:not([data-graview-broken]) {
868
- opacity: 0;
869
- }
870
- [data-graview-altitude] [data-graview-plot] .graview-kind-face {
871
- top: calc(var(--graview-front-y) - 22px) !important;
872
- }
873
- [data-graview-altitude] [data-graview-plot] .graview-kind-face::after {
874
- content: "";
875
- position: absolute;
876
- left: 50%;
877
- top: 100%;
878
- width: 1px;
879
- height: 10px;
880
- background: var(--graview-ink-faint);
881
- }
882
-
883
- [data-graview-altitude] [data-graview-landmark]:not([data-graview-plot] *) .graview-kind-face {
884
- top: 0 !important;
885
- transform: translate(-50%, calc(-100% - 7px));
886
- }
887
-
888
- [data-graview-altitude] .graview-drive-in {
889
- top: calc(var(--graview-front-y, 42px) + 12px);
890
- }
891
-
892
- [data-graview-altitude] .graview-kind-face[data-graview-opened] ~ .graview-drive-in {
893
- top: calc(var(--graview-front-y, 42px) - 22px - var(--graview-marquee-room, 0px) + 8px);
894
- }
895
-
896
- [data-graview-altitude] [data-graview-plot] .graview-kind-landmark {
897
- bottom: auto;
898
- top: calc(var(--graview-center-y, 50%) + 10px);
899
- transform: translate(-50%, -100%) scale(calc(0.55 + var(--graview-altitude) * 0.45));
900
- }
901
-
902
- .graview-zoom {
903
- position: absolute;
904
- right: 16px;
905
- bottom: 16px;
906
-
907
- z-index: ${W.zoom};
908
- display: inline-flex;
909
- align-items: center;
910
- gap: 2px;
911
- padding: 2px;
912
-
913
- border-radius: 8px;
914
- border: 1px solid transparent;
915
- background: var(--graview-float, var(--graview-panel));
916
- box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
917
- }
918
- .graview-zoom-button {
919
- min-width: 32px;
920
- min-height: 32px;
921
- border: 0;
922
- border-radius: 6px;
923
- background: transparent;
924
- color: var(--graview-ink);
925
- font: inherit;
926
- font-size: 1.0625rem;
927
- line-height: 1;
928
- cursor: pointer;
929
- }
930
- .graview-zoom-button:hover:not(:disabled) {
931
- background: var(--graview-edge);
932
- }
933
- .graview-zoom-button:disabled {
934
- opacity: 0.35;
935
- cursor: default;
936
- }
937
- .graview-zoom-level {
938
- min-width: 3.2em;
939
- text-align: center;
940
- font-size: 0.8125rem;
941
- color: var(--graview-ink-faint);
942
- font-variant-numeric: tabular-nums;
943
- }
944
-
945
-
946
-
947
- [data-graview-altitude] [data-graview-screen] > [data-graview-natural],
948
- [data-graview-altitude] [data-graview-screen] > :not([data-graview-natural]):not(.graview-kind-tag) {
949
- outline: 2px solid color-mix(in oklab, var(--graview-ink) 60%, var(--graview-panel));
950
- outline-offset: 0;
951
- background: var(--graview-panel);
952
- }
953
- [data-graview-altitude] [data-graview-screen] > :not([data-graview-natural]):not(.graview-kind-tag) {
954
- position: relative;
955
- }
956
- [data-graview-altitude] [data-graview-screen] > [data-graview-natural]::before,
957
- [data-graview-altitude] [data-graview-screen] > [data-graview-natural]::after,
958
- [data-graview-altitude] [data-graview-screen] > :not([data-graview-natural]):not(.graview-kind-tag)::before,
959
- [data-graview-altitude] [data-graview-screen] > :not([data-graview-natural]):not(.graview-kind-tag)::after {
960
- content: "";
961
- position: absolute;
962
- top: 100%;
963
- width: 3px;
964
- height: 16px;
965
- background: color-mix(in oklab, var(--graview-ink) 60%, var(--graview-panel));
966
- }
967
- [data-graview-altitude] [data-graview-screen] > [data-graview-natural]::before,
968
- [data-graview-altitude] [data-graview-screen] > :not([data-graview-natural]):not(.graview-kind-tag)::before { left: 22%; }
969
- [data-graview-altitude] [data-graview-screen] > [data-graview-natural]::after,
970
- [data-graview-altitude] [data-graview-screen] > :not([data-graview-natural]):not(.graview-kind-tag)::after { right: 22%; }
971
-
972
-
973
-
974
-
975
-
976
- [data-graview-pinned] > :not([data-graview-natural]):not(.graview-kind-tag),
977
- [data-graview-pinned] > [data-graview-natural] > * {
978
- outline: 1px dashed var(--graview-edge-bright);
979
- outline-offset: 3px;
980
- border-radius: var(--graview-radius);
981
- }
982
-
983
- [data-graview-altitude] [data-graview-pinned] > :not([data-graview-natural]):not(.graview-kind-tag),
984
- [data-graview-altitude] [data-graview-pinned] > [data-graview-natural] > * {
985
- outline: none;
986
- }
987
- [data-graview-stage="dom"] [data-graview-view] > :not([data-graview-natural]),
988
- [data-graview-stage="dom"] [data-graview-view] > [data-graview-natural] > * {
989
- pointer-events: auto;
990
- }
991
-
992
- [data-graview-record-focus] > :not(.graview-kind-tag) {
993
- min-height: 0;
994
- max-height: 100%;
995
- overflow-y: auto;
996
- flex-shrink: 1;
997
- }
998
- [data-graview-view][data-graview-selected] {
999
- filter: drop-shadow(0 0 14px var(--graview-accent-dim));
1000
- }
1001
- [data-graview-touched] > * {
1002
- animation: graview-touched 1100ms cubic-bezier(0.22, 1, 0.36, 1);
1003
- border-radius: 10px;
1004
- }
1005
-
1006
-
1007
- [data-graview-activity] {
1008
- --graview-activity: var(--graview-accent);
1009
- }
1010
- [data-graview-activity="autonomous"] {
1011
- --graview-activity: hsl(212 72% 62%);
1012
- }
1013
- [data-graview-activity="co-edited"] {
1014
- --graview-activity: hsl(280 60% 66%);
1015
- }
1016
- [data-graview-activity="rule"] {
1017
- --graview-activity: var(--graview-warn);
1018
- }
1019
- [data-graview-view][data-graview-wrote] > * {
1020
- animation: graview-landed 900ms cubic-bezier(0.22, 1, 0.36, 1);
1021
- border-radius: 10px;
1022
- }
1023
- [data-graview-view][data-graview-read] > :not([data-graview-natural]):not(.graview-kind-tag),
1024
- [data-graview-view][data-graview-read] > [data-graview-natural] > * {
1025
- outline: 1px dashed transparent;
1026
- outline-offset: 3px;
1027
- border-radius: 10px;
1028
- animation: graview-considered 1800ms ease-out;
1029
- }
1030
-
1031
-
1032
- [data-graview-view][data-graview-broke] > * {
1033
- box-shadow: 0 0 0 1px var(--graview-warn), 0 0 22px -6px var(--graview-warn);
1034
- border-radius: 10px;
1035
- }
1036
- [data-graview-connector][data-graview-activity] {
1037
- animation: graview-relation 1200ms cubic-bezier(0.22, 1, 0.36, 1);
1038
- }`}function Fe(t="dark",a={}){let p=la(t);return a.scope===void 0?p:Et(p,a.scope)}var K=w(ae(),1);var ge=w(E(),1);function Ke(){let{store:t}=T(),a=At(),p=(0,K.useMemo)(()=>t.graph.allEdges().length>0,[t,a]),[s,i]=(0,K.useState)(!1),v=(0,K.useId)(),b=(0,K.useRef)(null),m=(0,K.useRef)(null);return(0,K.useEffect)(()=>{if(!s)return;let x=S=>{let L=S.target;L&&(m.current?.contains(L)||b.current?.contains(L))||i(!1)};return document.addEventListener("pointerdown",x,!0),()=>document.removeEventListener("pointerdown",x,!0)},[s]),p?(0,ge.jsxs)("div",{style:{display:"contents"},onKeyDown:x=>{x.key!=="Escape"||!s||(x.preventDefault(),x.stopPropagation(),i(!1),b.current?.focus({preventScroll:!0}))},children:[(0,ge.jsx)("button",{ref:b,type:"button","data-testid":"lines-key","aria-expanded":s,"aria-controls":v,title:"What the lines mean",onClick:()=>i(x=>!x),style:{position:"absolute",top:60,right:14,zIndex:F("overview"),height:30,padding:"0 11px",borderRadius:8,borderColor:"transparent",fontSize:"0.8125rem",color:s?"var(--graview-accent)":"var(--graview-ink-muted)",background:"var(--graview-float)",boxShadow:"var(--graview-lift-low)"},children:"Key"}),s?(0,ge.jsx)("div",{ref:m,id:v,"data-testid":"lines-key-pane","data-graview-offstage":"",style:{position:"absolute",top:98,right:14,zIndex:F("rail"),width:_t,maxHeight:"calc(100cqh - 120px)",overflowY:"auto",boxSizing:"border-box",padding:"8px 8px",borderRadius:10,border:"1px solid var(--graview-edge)",background:"var(--graview-float)",boxShadow:"var(--graview-lift-high)"},children:(0,ge.jsx)(qt,{inside:!0})}):null]}):null}var h=w(ae(),1);var l=w(E(),1),da="A";function qe({placement:t="float"}={}){let{store:a,menuAt:p,setMenuAt:s,view:i,registerActsDoor:v}=T();(0,h.useEffect)(()=>{if(t==="menu")return v({key:da,open:e=>{let o=e.getBoundingClientRect(),r=e.closest("[data-graview-pick]")?.getAttribute("data-graview-pick")??e.closest("[data-graview-view]")?.getAttribute("data-graview-view")??void 0;s({x:Math.round(o.left+Math.min(16,o.width/2)),y:Math.round(Math.min(o.bottom,o.top+36)),...r?{on:r}:{}})}}),()=>v(null)},[t,v,s]);let b=(0,h.useRef)(null),m=(0,h.useRef)(null),x=(0,h.useRef)(null),S=e=>{let o=e.closest("[data-graview-asking]")?.getAttribute("data-graview-asking"),r=e.getAttribute("data-pin-for"),U=o??e.getAttribute("data-affordance")??(r===null?null:`pin:${r}`);m.current=U===null?null:{key:U,element:e}};(0,h.useEffect)(()=>{let e=b.current,o=m.current;if(o===null||document.activeElement!==document.body||o.element.isConnected)return;let r=o.key;if(!e){m.current=null,x.current?.focus();return}((r.startsWith("pin:")?e.querySelector(`[data-pin-for="${CSS.escape(r.slice(4))}"]`):null)??e.querySelector(`[data-affordance="${CSS.escape(r)}"]:not([disabled])`)??e).focus()});let[L,z]=(0,h.useState)(null);(0,h.useLayoutEffect)(()=>{let e=b.current?.offsetParent??b.current?.parentElement;if(e instanceof HTMLElement&&(x.current=e),!e)return;let o=e.getBoundingClientRect();z(r=>r&&r.left===o.left&&r.top===o.top&&r.width===o.width&&r.height===o.height?r:{left:o.left,top:o.top,width:o.width,height:o.height})});let{selection:c,set:C,clear:O}=De(),[$,J]=(0,h.useState)(()=>Bt()),Z=p?.on??c[c.length-1],G=(0,h.useMemo)(()=>({pins:$,...Z===void 0?{}:{focus:Z}}),[$,Z]),ne=(0,h.useMemo)(()=>new Set(a.allMutations().filter(e=>e.pinned).map(e=>e.name)),[a]),{affordances:f,withheld:P,observations:oe}=Wt(G),N=oe.some(e=>e.id.startsWith("schema:waits:")),{apply:Y,preview:D}=Ft(),[_,j]=(0,h.useState)(null),[Te,ie]=(0,h.useState)(!1),[fe,pe]=(0,h.useState)(!1),[n,d]=(0,h.useState)(""),[g,A]=(0,h.useState)(null),M=(0,h.useRef)([]),ee=(e,o)=>{try{return D(e,o),Y(e,o),A(null),s(null),M.current=[],!0}catch(r){return A(ct(a.schema,a.allMutations(),r)),M.current=r instanceof pt?r.issues.map(U=>String(U.path[0]??"")).filter(Boolean):[],!1}},B=[...new Set(c.flatMap(e=>{let o=a.graph.getNode(e);return o?[o.kind]:[]}))],V=B.length>0?B:[...new Set(c.flatMap(e=>yt(e)))],k=c.length===1?ht(c[0]):null,ce=k?{from:a.graph.getNode(k.from),to:a.graph.getNode(k.to)}:null,Je=k?(()=>{let e=a.schema.tryDefinition(a.graph.getNode(k.from)?.kind??"")?.edges?.[k.kind],o=a.graph.getNode(k.to);return e?.inverse&&o?`From ${Q(a,o.id)}: ${e.inverse}`:null})():null;(0,h.useEffect)(()=>{j(null),ie(!1),pe(!1),A(null),d("")},[c]);let y=p!==null,aa=t==="menu"&&!y,ue=(0,h.useRef)(p);ue.current=p;let Ze=Ee("acts",{open:y&&t==="menu",onOpenChange:e=>{e||s(null)},at:()=>ue.current?{x:ue.current.x,y:ue.current.y}:null,returnTo:()=>{let e=ue.current?.on;return e?document.querySelector(`[data-graview-view="${CSS.escape(e)}"]`):null},align:"start"}),et=(L?.width??Number.POSITIVE_INFINITY)<564;if((0,h.useLayoutEffect)(()=>{let e=b.current?.offsetParent;if(!e||!et||y)return;let o=b.current?.getBoundingClientRect().height??0,r=`${Math.round(o)+20}px`;if(e.style.paddingBottom===r)return;let U=e.style.paddingBottom;return e.style.paddingBottom=r,()=>{e.style.paddingBottom=U}}),c.length===0&&!y)return null;let tt=!(c.length===1&&c[0]===i.focusId),at=Math.max(1,Math.min(9,f.length)),se=[...f.filter(e=>e.provider==="invariant"&&!e.destructive),...f.filter(e=>e.pinned&&e.provider!=="invariant"&&!e.destructive),...f.filter(e=>!e.ties&&!e.destructive&&!e.pinned&&e.provider!=="invariant"),...f.filter(e=>e.ties&&!e.destructive&&!e.pinned&&e.provider!=="invariant"),...f.filter(e=>e.destructive)],rt=se.length>at&&!y,it=n.trim().toLowerCase(),te=rt&&it.length>0?se.filter(e=>`${e.label} ${e.why}`.toLowerCase().includes(it)):null,Re=te??(Te||y?se:se.slice(0,at)),nt=te?0:se.length-Re.length,be=[];for(let e of Re){let o=!y&&e.provider==="invariant",r=!y&&!o&&e.pinned!==void 0&&!e.destructive,U=!y&&!o&&!r&&e.ties===!0&&!e.destructive,st=o?e.why:r?"pinned":U?"its ties":null,ia=o?"violation":r||U?"ties":null,He=be[be.length-1];He&&He.heading===st?He.items.push(e):be.push({heading:st,tone:ia,items:[e]})}let Ie=f.find(e=>e.id===_),ve=c.length===1?Q(a,c[0]):null,ot=e=>{if(!ve)return e;let o=e.startsWith(`"${ve}"`)?e.slice(ve.length+2):e.startsWith(ve)?e.slice(ve.length):null;if(o===null)return e;let r=o.trimStart();return r.length===0?e:r[0].toUpperCase()+r.slice(1)},ra=new Set(y?[]:Re.filter(e=>e.provider==="invariant").map(e=>e.why)),le=oe.filter(e=>!ra.has(e.text)).map(e=>({...e,text:ot(e.text)}));return aa?null:(0,l.jsxs)("section",{...y?Ze.pane:{},ref:e=>{b.current=e,y&&Ze.pane.ref(e)},"aria-label":"Inspector","data-graview-offstage":"","data-testid":y?"context-menu":"inspector-strip",tabIndex:-1,onFocus:e=>S(e.target),onBlur:e=>{e.relatedTarget!==null&&(m.current=null)},onMouseDown:e=>e.stopPropagation(),style:{...y?$e:{position:"absolute",zIndex:F("rail")},boxSizing:"border-box",display:"flex",flexDirection:"column",gap:7,padding:"9px 12px",borderRadius:"var(--graview-radius, 12px)",border:"1px solid var(--graview-edge)",background:"var(--graview-float)",boxShadow:"var(--graview-lift-high)",...y?{width:300,maxHeight:"min(52cqh, 420px)",overflow:"auto"}:et?{left:10,right:10,width:"auto",bottom:10,maxHeight:"min(42cqh, 300px)",overflow:"auto"}:{left:14,top:i.overview?"min(296px, 38cqh)":44,width:236,maxHeight:i.overview?"calc(100cqh - min(296px, 38cqh) - 20px)":"calc(68cqh - 94px)",overflow:"auto"}},children:[(0,l.jsx)("h2",{style:{...ze,margin:0},children:"Inspector"}),(0,l.jsxs)("div",{style:{display:tt||!y?"flex":"none",alignItems:"baseline",flexWrap:"wrap",gap:"2px 8px",minWidth:0,paddingRight:y?0:24},children:[tt?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("strong",{style:{fontSize:"0.9375rem",whiteSpace:"nowrap"},children:c.length===1?Q(a,c[0]):`${c.length} selected`}),B.length>0||k?(0,l.jsx)("span",{style:{fontSize:"0.75rem",color:"var(--graview-ink-faint)",whiteSpace:"nowrap"},children:k?"relation":B.join(" \xB7 ")}):null,c.length===1&&!k?(0,l.jsx)("span",{style:{fontSize:"0.75rem",color:"var(--graview-ink-faint)",whiteSpace:"nowrap"},children:i.expanded.includes(c[0])?"\xB7 double-click closes":"\xB7 double-click opens"}):null]}):null,(0,l.jsx)("span",{style:{flex:"1 1 auto"}})]}),y?null:(0,l.jsx)("button",{type:"button",onClick:()=>{s(null),O()},"aria-label":"Clear selection",title:"Clear selection",style:{position:"absolute",top:6,right:6,flex:"0 0 auto",width:24,height:24,display:"grid",placeItems:"center",padding:0,fontSize:"0.875rem",lineHeight:1,borderRadius:7},children:"\xD7"}),k&&ce?(0,l.jsxs)("div",{style:{display:"grid",gap:6},children:[Je?(0,l.jsx)("p",{"data-testid":"edge-said",style:{margin:0,fontSize:"0.8125rem",lineHeight:1.45,color:"var(--graview-ink-muted)"},children:Je}):null,(0,l.jsx)("div",{style:{display:"flex",alignItems:"center",gap:6,flexWrap:"wrap"},children:[["from",ce.from],["to",ce.to]].map(([e,o],r)=>(0,l.jsxs)(h.Fragment,{children:[r===1?(0,l.jsx)("span",{"aria-hidden":"true",style:{color:"var(--graview-ink-faint)"},children:"\u2192"}):null,o?(0,l.jsx)("button",{type:"button","data-testid":`edge-${e}`,onClick:()=>C([o.id]),title:`Select ${Q(a,o.id)}`,style:{fontSize:"0.8125rem",padding:"3px 9px",borderRadius:6},children:Q(a,o.id)}):(0,l.jsx)("span",{style:{fontSize:"0.8125rem",color:"var(--graview-ink-faint)"},children:"gone"})]},e))})]}):null,le.length>0?(0,l.jsx)("div",{"data-testid":"observations",title:le.map(e=>e.text).join(`
1039
- `),style:{display:"grid",gap:3},children:le.slice(0,2).map(e=>(0,l.jsxs)("p",{style:{margin:0,fontSize:"0.8125rem",lineHeight:1.45,color:"var(--graview-ink-muted)"},children:[e.text,e===le[1]&&le.length>2?(0,l.jsxs)("span",{style:{color:"var(--graview-ink-faint)"},children:[" +",le.length-2]}):null]},e.id))}):null,g?(0,l.jsx)("p",{"data-testid":"refused",style:{margin:0,fontSize:"0.8125rem",lineHeight:1.45,color:"var(--graview-warn)"},children:g}):null,rt?(0,l.jsx)("input",{"data-testid":"action-filter",value:n,onChange:e=>d(e.target.value),placeholder:`Filter ${se.length} actions\u2026`,"aria-label":"Filter actions",onKeyDown:e=>{if(e.key==="Escape"){e.stopPropagation(),n.length>0?d(""):e.currentTarget.blur();return}if(e.key==="Enter"&&te?.length===1){let o=te[0];if(o.destructive)return;o.open.length>0?j(o.id):ee(o)&&d("")}},style:{font:"inherit",fontSize:"0.875rem",padding:"5px 9px",borderRadius:8,border:"1px solid var(--graview-edge)",background:"var(--graview-panel)",color:"var(--graview-ink)"}}):null,te!==null&&te.length===0?(0,l.jsxs)("p",{"data-testid":"no-matches",style:{margin:0,fontSize:"0.8125rem",lineHeight:1.45,color:"var(--graview-ink-muted)"},children:["Nothing offered here matches \u201C",n.trim(),"\u201D."]}):null,f.length===0&&!N?(0,l.jsx)("p",{"data-testid":"no-affordances",style:{margin:0,fontSize:"0.8125rem",lineHeight:1.45,color:"var(--graview-ink-muted)"},children:P.length>0?`Nothing you may do with ${k?"this relation":V.length===1?Me(Le(a.schema.tryDefinition(V[0]),V[0])):"this mix of kinds"} \u2014 ${P.length} action${P.length===1?"":"s"} withheld.`:k?`Nothing can be done with this line yet \u2014 nothing this app declares makes or breaks \u201C${dt(a.schema,a.graph.getNode(k.from)?.kind??"",k.kind,"out")}\u201D.`:`Nothing can be done with ${V.length===1?Me(Le(a.schema.tryDefinition(V[0]),V[0])):"this mix of kinds"} yet \u2014 nothing this app declares acts on ${V.length===1?"it":"them"}.`}):(0,l.jsxs)("ol",{"data-testid":"affordances",style:{margin:0,padding:0,listStyle:"none",display:"flex",flexDirection:"column",flexWrap:"nowrap",gap:2},children:[be.map((e,o)=>(0,l.jsxs)(h.Fragment,{children:[e.heading?(0,l.jsxs)("li",{"data-graview-heading":e.tone,style:{fontSize:"0.75rem",lineHeight:1.4,color:e.tone==="violation"?"var(--graview-warn)":"var(--graview-ink-faint)",...e.tone!=="violation"?{letterSpacing:"0.12em",textTransform:"uppercase",fontSize:"0.75rem"}:{},padding:"2px 2px 1px",marginTop:o>0?6:0},children:[e.tone==="violation"?"\u26A0 ":"",e.tone==="violation"?ot(e.heading):e.heading]}):o>0?(0,l.jsx)("li",{"aria-hidden":"true",style:{borderTop:"1px solid var(--graview-edge)",margin:"6px 0 3px"}}):null,e.items.map(r=>(0,l.jsxs)("li",{style:{display:"flex",gap:2,alignItems:"stretch"},children:[(0,l.jsxs)("button",{type:"button","data-affordance":r.id,"data-rank":r.rank,"data-graview-destructive":r.destructive||void 0,"aria-pressed":_===r.id,title:r.why,style:{padding:"5px 10px",fontSize:"0.875rem",borderRadius:8,width:"100%",textAlign:"left",borderWidth:1,borderStyle:"solid",borderColor:_===r.id?"var(--graview-accent)":y?"transparent":"var(--graview-edge)",background:y?"none":"var(--graview-panel)",boxShadow:"none",...r.destructive?{color:"var(--graview-warn)"}:{},..._===r.id?{color:"var(--graview-accent)"}:{}},onClick:()=>{if(r.open.length>0){j(_===r.id?null:r.id);return}ee(r)},children:[r.label,r.open.length>0?(0,l.jsx)("span",{style:{color:"var(--graview-ink-faint)"},children:" \u2026"}):null,te?.length===1&&te[0]?.id===r.id&&!r.destructive?(0,l.jsx)("span",{"aria-hidden":"true",title:"Enter runs it",style:{float:"right",color:"var(--graview-ink-faint)",fontSize:"0.75rem"},children:"\u21B5"}):null]}),(0,l.jsx)("button",{type:"button","data-testid":"pin-toggle","data-pin-for":r.mutation,"aria-pressed":r.pinned!==void 0,"aria-label":r.pinned!==void 0?`Unpin ${r.label}`:`Pin ${r.label}`,title:r.pinned==="declared"?"Pinned by the app \u2014 unpin it for yourself":r.pinned==="user"?"Unpin":"Pin to the top",onClick:()=>J(Ot($,r.mutation,ne.has(r.mutation))),style:{flex:"0 0 auto",width:24,minHeight:24,display:"grid",placeItems:"center",padding:0,fontSize:"0.75rem",border:"1px solid transparent",background:"none",boxShadow:"none",borderRadius:7,color:r.pinned==="user"?"var(--graview-accent)":r.pinned==="declared"?"var(--graview-ink-muted)":"var(--graview-ink-faint)"},children:r.pinned!==void 0?"\u2605":"\u2606"})]},r.id))]},`${e.heading??"plain"}-${o}`)),nt>0?(0,l.jsx)("li",{children:(0,l.jsxs)("button",{type:"button",onClick:()=>ie(!0),title:`Show all ${f.length} actions`,style:{padding:"4px 10px",fontSize:"0.875rem",borderRadius:8},children:["Show ",nt," more"]})}):null]}),P.length>0?(0,l.jsxs)("ul",{"data-testid":"withheld",style:{margin:0,padding:0,listStyle:"none",display:"flex",flexDirection:"column",flexWrap:"nowrap",gap:2},children:[P.slice(0,y||fe?P.length:3).map(e=>(0,l.jsxs)("li",{style:{display:"grid",gap:2},children:[(0,l.jsx)("button",{type:"button",disabled:!0,"data-affordance":e.id,"data-rank":e.rank,"data-withheld":e.refusal.wouldNeed.join(",")||"nobody",style:{padding:"4px 10px",fontSize:"0.875rem",borderRadius:8,borderStyle:"dashed",width:"100%",textAlign:"left",background:"none"},children:(0,l.jsx)("s",{children:e.label})}),(0,l.jsx)("span",{"data-testid":"withheld-why",style:{fontSize:"0.8125rem",lineHeight:1.4,color:"var(--graview-ink-muted)",padding:"0 10px"},children:e.refusal.message})]},e.id)),!y&&!fe&&P.length>3?(0,l.jsx)("li",{children:(0,l.jsxs)("button",{type:"button","data-testid":"withheld-more",onClick:()=>pe(!0),title:`Show all ${P.length} actions this seat may not take`,style:{padding:"4px 10px",fontSize:"0.875rem",borderRadius:8},children:["Show ",P.length-3," more withheld"]})}):null]}):null,Ie?(0,l.jsx)(It,{affordance:Ie,onApply:e=>{if(ee(Ie,e))j(null);else return M.current},onCancel:()=>j(null)}):null]})}var ga=w(ae(),1);var X=w(E(),1);function _e(){let{view:t,go:a}=de(),{store:p,views:s,hiddenKinds:i}=T(),v=t.overview??!1,b=s.places().map(z=>z.kind).filter(z=>!i.has(z)),m=Nt(t,p.schema.kinds,b),x=()=>{a(ye(we(t,!1),m))},S=(()=>{if(!m)return null;let z=kt(m)[0],c=t.within?.view,C=(c?s.places().find(O=>O.as===c):void 0)??(z?s.places().find(O=>O.kind===z):void 0);return C?C.title:z?xe(p.schema,z):p.graph.getNode(m)?.label??null})(),L=v?S?`Down to ${S}`:"Down":"Up";return(0,X.jsxs)("button",{type:"button","data-testid":"overview",className:"graview-altitude-control","aria-pressed":v,"aria-label":L,title:v?`${L} \u2014 back down into the view`:"Up \u2014 the whole thing, from above",onClick:()=>v?x():a(we(t,!0)),style:{position:"absolute",top:14,right:14,zIndex:F("overview"),display:"inline-flex",alignItems:"center",justifyContent:"center",gap:7,height:38,padding:"0 13px 0 11px",borderRadius:8,borderColor:"transparent",fontSize:"0.875rem",whiteSpace:"nowrap",background:"var(--graview-float)",boxShadow:"var(--graview-lift-low)","--graview-altitude":v?1:0,...v?{color:"var(--graview-accent)"}:{}},children:[(0,X.jsxs)("svg",{className:"graview-altitude-mark",width:"16",height:"16",viewBox:"0 0 12 12","aria-hidden":"true",children:[(0,X.jsx)("ellipse",{className:"graview-altitude-mark-ring",cx:"6",cy:"6.6",rx:"5",ry:"2.6",fill:"none",stroke:"currentColor",strokeWidth:"0.9"}),(0,X.jsx)("circle",{className:"graview-altitude-mark-apex",cx:"6",cy:"4",r:"1.5",fill:"currentColor"}),(0,X.jsx)("circle",{className:"graview-altitude-mark-wing","data-side":"left",cx:"1.6",cy:"7.4",r:"1.2",fill:"currentColor"}),(0,X.jsx)("circle",{className:"graview-altitude-mark-wing","data-side":"right",cx:"10.4",cy:"7.4",r:"1.2",fill:"currentColor"})]}),(0,X.jsx)("span",{className:"graview-altitude-label",children:L})]})}var Ue=w(E(),1);function Ge(){let{administered:t}=T(),{view:a,go:p}=de(),s=t.filter(i=>i.canShow);return s.length===0?null:(0,Ue.jsx)("div",{role:"group","aria-label":"Administered","data-testid":"administered",style:{display:"flex",gap:6},children:s.map(i=>(0,Ue.jsx)("button",{type:"button","aria-pressed":i.shown,"data-testid":`show-${i.name}`,title:i.shown?`Hide the ${i.name}'s own districts again`:i.description??`Show the ${i.name}'s own districts beside the domain`,onClick:()=>p(mt(a,i.name,!i.shown)),style:{padding:"3px 11px",borderRadius:999,fontSize:"0.875rem",borderWidth:1,borderStyle:"solid",borderColor:i.shown?"var(--graview-accent)":"var(--graview-edge)",color:i.shown?"var(--graview-accent)":"var(--graview-ink-muted)",background:i.shown?"var(--graview-panel)":"transparent"},children:i.shown?`Hide the ${i.name}`:`Show the ${i.name}`},i.name))})}var R=w(ae(),1);var u=w(E(),1),pa=t=>t.about==="rule"?"rule:":t.about==="act"?"act:":t.kind;function Vt({compact:t=!1}){let{store:a,view:p,setView:s,principal:i,setMenuAt:v,brand:b,seatTalk:m}=T(),x=zt(m),S=Ct(),L=Tt(),z=Rt().marks.flag,c=(0,R.useRef)(null),C=(0,R.useId)(),[O,$]=(0,R.useState)(!1),[J,Z]=(0,R.useState)(null),[G,ne]=(0,R.useState)(null),f=p.q??"";(0,R.useEffect)(()=>{let n=d=>{if(d.defaultPrevented)return;let g=d.key.toLowerCase()==="k"&&(d.metaKey||d.ctrlKey)&&!d.altKey&&!d.shiftKey,A=d.key==="/"&&!d.metaKey&&!d.ctrlKey&&!d.altKey;if(!g&&!A)return;let M=c.current;if(!M)return;let ee=M.closest("[data-graview-embed]"),B=d.target,V=B===document.body||B===document.documentElement||B===window;if(ee&&!(g&&V||B instanceof Node&&ee.contains(B)))return;let k=document.activeElement,ce=k instanceof HTMLInputElement||k instanceof HTMLTextAreaElement||k instanceof HTMLSelectElement||k instanceof HTMLElement&&k.isContentEditable;A&&ce||(d.preventDefault(),M.getClientRects().length===0&&M.closest("[data-graview-app-bar]")?.querySelector('[data-testid="app-find-open"]')?.click(),M.focus({preventScroll:!0}),M.select(),$(!0))};return window.addEventListener("keydown",n),()=>window.removeEventListener("keydown",n)},[]);let P=(0,R.useMemo)(()=>G&&f.trim()?gt(a,G,S?.words??f,{principal:i,limit:4}):[],[a,f,S,G,i]),oe=(0,R.useMemo)(()=>{let n=new Map;for(let[d,g]of(S?.hits??[]).entries()){if(g.about==="act")continue;let A=pa(g),M=n.get(A)??[];if(M.push({id:`${C}-${d}`,hit:g}),n.set(A,M),g.about==="node"&&g.id===G)for(let[ee,B]of P.entries())M.push({id:`${C}-${d}-act-${ee}`,hit:B})}return[...n.entries()]},[S,P,G,C]),N=x.drawn>0&&f.trim()?{id:`${C}-ask`,ask:f.trim()}:null,Y=(0,R.useMemo)(()=>[...oe.flatMap(([,n])=>n),...N?[N]:[]],[oe,N?.ask]),D=Y.find(n=>n.id===J)??Y[0];(0,R.useEffect)(()=>{Z(null),ne(null)},[f]);let _=n=>{if(n){if(Z(n.id),"ask"in n){ne(null);return}n.hit.about==="node"?ne(n.hit.id):n.hit.about!=="act"&&ne(null)}},j=n=>{if(!n)return;if("ask"in n){m.ask(n.ask),s(g=>ke(g)),$(!1);return}let d=n.hit;switch(d.about){case"node":s(g=>Se(ye(we(g,!1),d.id),[d.id]));break;case"kind":s(g=>St(g,xt(d.kind),{ownPicture:!0,...g.q?{carry:g.q}:{}}));break;case"place":s(g=>$t(g,d.kind,d.as));break;case"rule":{let g=L.filter(A=>A.invariant===d.name).flatMap(A=>A.nodeIds);s(A=>Se(A,[...new Set(g)]));break}case"act":{s(A=>Se(A,[d.subject]));let g=c.current?.getBoundingClientRect();v({x:g?.left??0,y:(g?.bottom??0)+6,on:d.subject});break}}$(!1),c.current?.blur()},Te=S?va(S.byKind,S.hits,a.schema):"",ie=O&&f.trim().length>0,fe=(0,R.useCallback)(()=>{let n=c.current?.closest("[data-graview-app-bar]")?.getBoundingClientRect();if(n)return{x:n.right,y:n.bottom-wa};let d=c.current?.getBoundingClientRect();return d?{x:d.right,y:d.bottom}:null},[]),pe=Ee("find",{open:ie,onOpenChange:n=>{n||$(!1)},...t?{at:fe}:{}});return(0,u.jsxs)("div",{style:{position:"relative",minWidth:0,flex:"1 1 auto"},"data-testid":"find",children:[(0,u.jsx)("input",{ref:n=>{c.current=n,pe.trigger.ref(n)},"data-graview-popover-trigger":"find",type:"search",role:"combobox","aria-label":"Find anything","aria-expanded":ie,"aria-controls":C,"aria-autocomplete":"list",...ie&&D?{"aria-activedescendant":D.id}:{},"data-testid":"find-box",placeholder:"Find\u2026","aria-keyshortcuts":"/ Meta+K Control+K",value:f,onChange:n=>{let d=n.target.value;$(!0),s(g=>ft(g,d.length>0?d:null))},onFocus:()=>$(!0),onBlur:()=>$(!1),onKeyDown:n=>{let d=J!==null&&D?Y.indexOf(D):-1;n.key==="ArrowDown"?(n.preventDefault(),$(!0),_(Y[Math.min(Y.length-1,d+1)])):n.key==="ArrowUp"?(n.preventDefault(),_(Y[Math.max(0,d-1)])):n.key==="Enter"?(n.preventDefault(),j(D)):n.key==="Escape"&&(n.preventDefault(),f?s(g=>ke(g)):c.current?.blur())},style:{width:"100%",boxSizing:"border-box",minWidth:0,height:30,padding:"0 var(--graview-bar-find-end, 10px) 0 10px",font:"inherit",fontSize:"0.875rem",color:"var(--graview-ink)",background:"var(--graview-panel)",border:`1px solid ${f?"var(--graview-accent)":"var(--graview-edge)"}`,borderRadius:8}}),(0,u.jsx)("span",{role:"status","aria-live":"polite",style:ze,"data-testid":"find-count",children:f.trim()?Te:""}),(0,u.jsxs)("div",{...pe.pane,id:C,role:"listbox","aria-label":f?`What \u201C${f}\u201D finds`:"What the words find","data-testid":"find-strip",hidden:!ie,onMouseDown:n=>n.preventDefault(),style:t?{...Yt,...ha}:Yt,children:[Y.every(n=>"ask"in n)?(0,u.jsxs)("p",{role:"presentation",style:{margin:0,padding:"10px 12px",color:"var(--graview-ink-muted)",fontSize:"0.875rem"},"data-testid":"find-nothing",children:["Nothing here is called \u201C",S?.words||f,"\u201D."]}):oe.map(([n,d])=>(0,u.jsxs)("div",{role:"group","aria-label":Gt(n,a.schema),children:[(0,u.jsxs)("div",{role:"presentation",style:ma,children:[n!=="rule:"?(0,u.jsx)(ua,{kind:n,accents:b?.accents}):null,Gt(n,a.schema)]}),d.map(g=>(0,u.jsx)("div",{id:g.id,role:"option","aria-selected":g===D,"data-testid":"find-hit","data-about":g.hit.about,onMouseEnter:()=>_(g),onClick:()=>j(g),style:{...jt,...g.hit.about==="act"?{paddingLeft:30}:{},background:g===D?"var(--graview-panel-muted)":"transparent"},children:(0,u.jsx)(ca,{hit:g.hit,flag:z})},g.id))]},n)),N?(0,u.jsx)("div",{id:N.id,role:"option","aria-selected":N===D||D?.id===N.id,"data-testid":"find-ask",onMouseEnter:()=>_(N),onClick:()=>j(N),style:{...jt,borderTop:"1px solid var(--graview-edge)",marginTop:4,background:D?.id===N.id?"var(--graview-panel-muted)":"transparent"},children:(0,u.jsxs)("span",{children:["Ask: ",(0,u.jsxs)("span",{style:{fontWeight:600},children:["\u2018",N.ask,"\u2019"]})]})}):null,S&&S.searched.past===!1&&S.searched.kinds.some(n=>a.schema.tryDefinition(n)?.lifecycle)?(0,u.jsx)("p",{role:"presentation",style:{margin:0,padding:"6px 12px 8px",color:"var(--graview-ink-faint)",fontSize:"0.75rem"},children:"Current ones; add is:any for the past."}):null]})]})}function ca({hit:t,flag:a}){switch(t.about){case"node":return(0,u.jsxs)(u.Fragment,{children:[(0,u.jsxs)("span",{style:{fontWeight:600,overflowWrap:"anywhere"},children:[t.flagged?(0,u.jsxs)("span",{style:{color:"var(--graview-warn)"},children:[a," "]}):null,t.label,t.apart?(0,u.jsxs)("span",{style:me,children:[" \xB7 ",t.apart]}):null,t.current?null:(0,u.jsx)("span",{style:me,children:" \xB7 past"})]}),t.why.field!=="label"?(0,u.jsxs)("span",{style:me,children:[t.why.reading.toLowerCase(),": ",t.why.fragment]}):null]});case"kind":return(0,u.jsxs)("span",{children:[t.label,(0,u.jsxs)("span",{style:me,children:[" \xB7 ",t.count," match"]})]});case"place":return(0,u.jsxs)("span",{children:["Go to ",t.title]});case"rule":return(0,u.jsxs)("span",{children:["The rule \u201C",t.label,"\u201D"]});case"act":return(0,u.jsxs)("span",{style:t.destructive?{color:"var(--graview-warn)"}:void 0,children:[t.title,(0,u.jsxs)("span",{style:me,children:[" \xB7 ",t.why.field==="title"?"act":`on ${t.why.fragment}`]})]})}}function ua({kind:t,accents:a}){let p=Math.round(ut(t,a));return(0,u.jsx)("span",{"aria-hidden":"true",style:{width:8,height:8,borderRadius:2,flex:"0 0 auto",background:`hsl(${p} 55% 52%)`}})}function Gt(t,a){return t==="rule:"?"Rules":t==="act:"?"Acts":a.tryDefinition(t)?.plural??`${t}s`}function va(t,a,p){let s=Object.entries(t).map(([v,b])=>lt(p,v,b)),i=a.filter(v=>v.about==="kind"||v.about==="place"||v.about==="rule").length;return i>0&&s.push(`${i} ${i===1?"place or rule":"places and rules"}`),s.length===0?"Nothing found":`${s.join(", ")} found`}var Yt={...$e,width:"min(26rem, calc(100vw - 24px))",maxHeight:"min(60vh, 28rem)",overflowY:"auto",boxSizing:"border-box",background:"var(--graview-panel)",borderTop:"1px solid var(--graview-edge)",borderRight:"1px solid var(--graview-edge)",borderBottom:"1px solid var(--graview-edge)",borderLeft:"1px solid var(--graview-edge)",borderRadius:10,boxShadow:"0 10px 28px rgb(0 0 0 / 0.18)",padding:"4px 0"},wa=6,ha={width:"var(--graview-bar-width, 100vw)",maxHeight:"55vh",borderRadius:0,borderLeft:"none",borderRight:"none"},ma={display:"flex",alignItems:"center",gap:6,padding:"8px 12px 2px",fontSize:"0.6875rem",letterSpacing:"0.06em",textTransform:"uppercase",color:"var(--graview-ink-muted)"},jt={display:"grid",gap:1,minHeight:32,padding:"5px 12px",alignContent:"center",cursor:"pointer",fontSize:"0.875rem",lineHeight:1.35,color:"var(--graview-ink)"},me={color:"var(--graview-ink-muted)",fontSize:"0.8125rem",fontWeight:400};var Ae=w(ae(),1),Ye=w(na(),1);var Xt=w(E(),1);function Qt(){let{following:t,follow:a}=T();return t?(0,Xt.jsxs)("button",{type:"button","data-testid":"following-who",onClick:()=>a(null),title:"Press, or Escape, to stop following",style:{display:"inline-flex",alignItems:"center",gap:6,minHeight:24,padding:"2px 9px",borderRadius:999,border:"1px solid var(--graview-accent)",background:"transparent",color:"var(--graview-accent)",fontSize:"0.875rem",whiteSpace:"nowrap"},children:["following ",t.name]}):null}var Jt=w(ae(),1);var I=w(E(),1);function Zt({home:t,homeLabel:a,children:p,onPicture:s=!1}){let{view:i,focus:v,show:b,go:m}=de(),{store:x}=T(),{movedByHand:S}=T(),L=S&&(i.pan!==void 0||Object.keys(i.pins).length>0),z=i.focusId&&i.focusId!==t?x.graph.getNode(i.focusId):void 0,c=J=>xe(x.schema,J),C={display:"inline-flex",alignItems:"center",gap:6,minHeight:26,padding:"2px 6px",fontSize:"0.8125rem",borderRadius:6,border:"1px solid transparent",boxShadow:"none",background:"transparent",color:"var(--graview-ink-muted)",whiteSpace:"nowrap"},O=a!==void 0&&z!==void 0,$=[];return z&&!s&&$.push({key:"focused",node:(0,I.jsxs)("button",{type:"button","data-testid":"focused",onClick:()=>m(Ne({...i,focusId:t},!1)),title:Q(x,z.id),style:{...C,maxWidth:"min(14rem, 15vw)"},children:[(0,I.jsx)("span",{style:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis"},children:Q(x,z.id)}),(0,I.jsx)("span",{"aria-hidden":"true",style:{opacity:.7},children:"\xD7"})]})}),i.past&&$.push({key:"past",node:(0,I.jsxs)("button",{type:"button","data-testid":"past",onClick:()=>m(bt(i,!1)),title:"Back to now \u2014 retired things leave the picture again",style:C,children:["the past",(0,I.jsx)("span",{"aria-hidden":"true",style:{opacity:.7},children:"\xD7"})]})}),i.zoom&&$.push({key:"zoomed",node:(0,I.jsxs)("button",{type:"button","data-testid":"zoomed",onClick:()=>m(Ne(i,!1)),title:"Zoom back out",style:C,children:["zoomed in",(0,I.jsx)("span",{"aria-hidden":"true",style:{opacity:.7},children:"\xD7"})]})}),L&&$.push({key:"moved",node:(0,I.jsxs)("button",{type:"button","data-testid":"moved",onClick:()=>m(Pe(i)),title:"Put the camera and everything you dragged back where the layout wanted them",style:C,children:["moved",(0,I.jsx)("span",{"aria-hidden":"true",style:{opacity:.7},children:"\xD7"})]})}),i.relation&&$.push({key:"raised",node:(0,I.jsxs)("button",{type:"button","data-testid":"raised",onClick:()=>b(null),title:`Stop showing ${c(i.relation)}`,style:C,children:[c(i.relation),(0,I.jsx)("span",{"aria-hidden":"true",style:{opacity:.7},children:"\xD7"})]})}),s&&!O&&$.length===0&&p===void 0?null:(0,I.jsxs)("nav",{"aria-label":"View","data-testid":"trail",style:{display:"flex",alignItems:"center",gap:8,fontSize:"0.875rem",minWidth:0,...s?{pointerEvents:"auto",padding:"4px 6px",borderRadius:8,background:"var(--graview-float)",boxShadow:"var(--graview-lift-low)",overflow:"hidden"}:{}},children:[O?(0,I.jsx)("button",{type:"button",onClick:()=>v(t),style:{border:"none",background:"none",padding:"3px 0",minHeight:24,whiteSpace:"nowrap",color:"var(--graview-ink-muted)"},children:a}):null,$.map(({key:J,node:Z},G)=>(0,I.jsxs)(Jt.Fragment,{children:[O||G>0?(0,I.jsx)("span",{style:{color:"var(--graview-ink-faint)"},children:"\u203A"}):null,Z]},J)),p]})}var q=w(E(),1);function je(){let[t,a]=(0,Ae.useState)([]),p=(0,Ae.useCallback)(s=>{a(i=>{let v=s.phase!=="running"&&i[0]?.name===s.name&&i[0]?.at===s.at;return[s,...v?i.slice(1):i].slice(0,12)})},[]);return[t,p]}function Ve({find:t,calls:a,seat:p,remembers:s=!1}){return t?(0,q.jsxs)(q.Fragment,{children:[(0,Ye.createPortal)((0,q.jsx)(Vt,{compact:t.compact}),t.slot),t.own?(0,Ye.createPortal)((0,q.jsx)(Ht,{calls:a,remembers:s,...p!==void 0?{seat:p}:{}}),t.own):null]}):null}function Qe({home:t=null}){return(0,q.jsxs)("div",{"data-graview-scene-trail":"",style:{position:"absolute",top:14,left:14,maxWidth:"calc(100% - 150px)",zIndex:F("overview"),display:"flex",alignItems:"center",gap:6,minWidth:0,pointerEvents:"none"},children:[(0,q.jsx)(Zt,{home:t,onPicture:!0}),(0,q.jsx)("span",{style:{pointerEvents:"auto"},children:(0,q.jsx)(Qt,{})})]})}var re=w(ae(),1);var ea=w(E(),1),fa=wt(()=>import("./chunk.YSYT3ASK.js"));function Xe(){let{store:t,principal:a}=T(),p=(0,re.useContext)(Lt),s=(0,re.useRef)(null),i=(0,re.useRef)(!1);return(0,re.useEffect)(()=>()=>void(i.current=!0),[]),(0,re.useEffect)(()=>{let v=t.batches().length,b=fa().then(m=>m.sceneWay(t,a,p,v,s.current),()=>{});return()=>void b.then(m=>m?.(i.current))},[t,a,p]),(0,ea.jsx)("span",{ref:s,hidden:!0})}var ta=w(ae(),1);var H=w(E(),1);function Ir({address:t=!1,auto:a,seat:p,scheme:s,scope:i}){let v=(0,ta.useMemo)(()=>`${We({scope:`.${i}`})}
1040
- ${Fe(s,{scope:`.${i}`})}`,[s,i]),b=Mt(),[m,x]=je();return(0,H.jsxs)("div",{"data-embed-content":"",style:{position:"relative",flex:a?`0 0 ${Kt}px`:"1 1 auto",minHeight:0,containerType:"size"},children:[(0,H.jsx)("style",{children:v}),t?(0,H.jsx)(Dt,{}):null,(0,H.jsx)(Pt,{renderer:"dom"}),(0,H.jsx)(Qe,{}),(0,H.jsx)(_e,{}),(0,H.jsx)(Ke,{}),(0,H.jsx)(Oe,{}),(0,H.jsx)(Be,{...p?{start:p}:{},onCall:x}),(0,H.jsx)(qe,{placement:"menu"}),(0,H.jsx)(Ve,{find:b,calls:m}),(0,H.jsx)(Xe,{})]})}function Hr(){return(0,H.jsx)(Ge,{})}export{Ir as SceneFace,Hr as SceneKeeping};