@popcorn245/cornfield-components 0.51.8 → 0.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/README.md +1 -1
  2. package/dist/chunks/around-D7aqHejs.js +78 -0
  3. package/dist/chunks/corn-layers-g9AprK6G.js +275 -0
  4. package/dist/chunks/{corn-map-M7xt4MYk.js → corn-map-DE-pg-A0.js} +8 -5
  5. package/dist/chunks/corn-node-panel-CdtFb9IZ.js +42 -0
  6. package/dist/chunks/{corn-review-yQU3IpY5.js → corn-review-9krtLSPK.js} +970 -2487
  7. package/dist/chunks/corn-search-BY1Po63S.js +484 -0
  8. package/dist/chunks/{engine-ClfnAsgM.js → engine-HIgX35hE.js} +3679 -3580
  9. package/dist/chunks/layers-n1mJVJs8.js +191 -0
  10. package/dist/chunks/{map-LS9aQk6z.js → map-CeP9M2_w.js} +794 -773
  11. package/dist/chunks/node-panel-CY5xnuKC.js +1291 -0
  12. package/dist/chunks/{review-source-CPiFTfyc.js → review-source-DWisOXyR.js} +1 -1
  13. package/dist/chunks/{scope-Dg_uzefP.js → scope-CUhp8mkf.js} +13 -12
  14. package/dist/chunks/sheets-TFCL_dIn.js +204 -0
  15. package/dist/chunks/source-address-C70zNPIj.js +79 -0
  16. package/dist/chunks/{status-CYQD5PwL.js → status-CsFpnQxw.js} +55 -54
  17. package/dist/corn-layers.js +1 -0
  18. package/dist/corn-map.js +1 -1
  19. package/dist/corn-node-panel.js +1 -0
  20. package/dist/corn-review.js +1 -1
  21. package/dist/corn-scope.js +3 -3
  22. package/dist/corn-search.js +1 -0
  23. package/dist/index.js +8 -5
  24. package/dist/manifest.json +101 -36
  25. package/dist/tokens.css +8 -2
  26. package/dist/types/components.d.ts +90 -0
  27. package/dist/types/corn-layers.d.ts +2 -0
  28. package/dist/types/corn-node-panel.d.ts +2 -0
  29. package/dist/types/corn-search.d.ts +2 -0
  30. package/dist/types/index.d.ts +3 -0
  31. package/dist/version.json +1 -1
  32. package/package.json +14 -2
  33. package/dist/chunks/source-address-B7hYRgt8.js +0 -251
@@ -1,4 +1,4 @@
1
- import { n as e, t } from "./status-CYQD5PwL.js";
1
+ import { n as e, t } from "./status-CsFpnQxw.js";
2
2
  // ../explorer/pieces/review-source.js
3
3
  function n(n, r) {
4
4
  let { root: i, stage: a, parsed: o } = r, s = i.nodeType === 11 ? i.host : i, c = !!r.useTheme, l = r.theme, u = !1, d = !1, f = e(n, {
@@ -1,7 +1,8 @@
1
1
  import { t as e } from "./rolldown-runtime-CGnMp29N.js";
2
- import { i as t, ln as n, n as r, r as i, s as a } from "./engine-ClfnAsgM.js";
3
- import { n as o, t as s } from "./status-CYQD5PwL.js";
4
- import { d as c, n as l } from "./source-address-B7hYRgt8.js";
2
+ import { An as t, Bt as n, Rt as r, Ut as i, zt as a } from "./engine-HIgX35hE.js";
3
+ import { n as o, t as s } from "./status-CsFpnQxw.js";
4
+ import { n as c } from "./source-address-C70zNPIj.js";
5
+ import { o as l } from "./layers-n1mJVJs8.js";
5
6
  // ../explorer/pieces/scope.js
6
7
  var u = /* @__PURE__ */ e({ mountScope: () => f }), d = [
7
8
  "light",
@@ -27,7 +28,7 @@ function f(e, u = {}) {
27
28
  };
28
29
  h.add(t), e.detail.claim(t);
29
30
  };
30
- e.addEventListener(i, x);
31
+ e.addEventListener(a, x);
31
32
  function S() {
32
33
  let t = new Set(p(e));
33
34
  for (let e of [...h]) h.delete(e), e.el && t.add(e.el);
@@ -37,12 +38,12 @@ function f(e, u = {}) {
37
38
  v && v.follow();
38
39
  }
39
40
  function w() {
40
- let i = f.src === void 0 || f.src === null || f.src === "" ? null : l(f.src);
41
- g = n({
41
+ let i = f.src === void 0 || f.src === null || f.src === "" ? null : c(f.src);
42
+ g = t({
42
43
  root: e,
43
44
  base: i && i.ok ? i.base : ""
44
- }), c(g, null);
45
- let a = t(g);
45
+ }), l(g, null);
46
+ let a = n(g);
46
47
  a.host = e, a.theme = d.includes(f.theme) ? f.theme : "auto";
47
48
  let p = g, h = o(g, {
48
49
  host: e,
@@ -94,8 +95,8 @@ function f(e, u = {}) {
94
95
  let E = {
95
96
  update(e = {}) {
96
97
  if (b) return;
97
- let n = !1;
98
- if ("src" in e && e.src !== f.src && (f.src = e.src, n = !0), "theme" in e && e.theme !== f.theme && (f.theme = e.theme, t(g).theme = d.includes(f.theme) ? f.theme : "auto", C()), "useTheme" in e && !!e.useTheme !== f.useTheme && (f.useTheme = !!e.useTheme, v.setUseTheme(f.useTheme)), n) {
98
+ let t = !1;
99
+ if ("src" in e && e.src !== f.src && (f.src = e.src, t = !0), "theme" in e && e.theme !== f.theme && (f.theme = e.theme, n(g).theme = d.includes(f.theme) ? f.theme : "auto", C()), "useTheme" in e && !!e.useTheme !== f.useTheme && (f.useTheme = !!e.useTheme, v.setUseTheme(f.useTheme)), t) {
99
100
  let e = g;
100
101
  v.destroy(), w(), S(), e.destroy();
101
102
  return;
@@ -109,7 +110,7 @@ function f(e, u = {}) {
109
110
  Object.keys(r).length && _.provide(r);
110
111
  },
111
112
  destroy() {
112
- b || (e.removeEventListener(i, x), T(), b = !0, h.clear());
113
+ b || (e.removeEventListener(a, x), T(), b = !0, h.clear());
113
114
  },
114
115
  get instance() {
115
116
  return g;
@@ -118,7 +119,7 @@ function f(e, u = {}) {
118
119
  return _;
119
120
  }
120
121
  };
121
- return u.tokens && a(e.getRootNode(), u.tokens), w(), S(), E;
122
+ return u.tokens && i(e.getRootNode(), u.tokens), w(), S(), E;
122
123
  }
123
124
  function p(e) {
124
125
  let t = [], n = (e) => {
@@ -0,0 +1,204 @@
1
+ import { cn as e, dn as t, fn as n, ln as r, mn as i, un as a } from "./engine-HIgX35hE.js";
2
+ // ../explorer/engine/sheets.js
3
+ var o = 20;
4
+ function s(e, n) {
5
+ t(e).box = n || null;
6
+ }
7
+ function c(n, i) {
8
+ let { box: a } = t(n), o = n.win && n.win.ResizeObserver;
9
+ if (a && typeof o == "function") {
10
+ let e = r(n), t = new o(() => {
11
+ let t = r(n);
12
+ t !== e && (e = t, i());
13
+ });
14
+ t.observe(a);
15
+ let s = () => {
16
+ t.disconnect(), n.release(s);
17
+ };
18
+ return n.own(s), s;
19
+ }
20
+ if (n.win && typeof n.win.matchMedia == "function") {
21
+ let t = n.win.matchMedia(e);
22
+ if (t && t.addEventListener) return n.listen(t, "change", () => i());
23
+ }
24
+ return () => {};
25
+ }
26
+ function l(e, n) {
27
+ let r = t(e);
28
+ return r.listeners.add(n), () => r.listeners.delete(n);
29
+ }
30
+ function u(e) {
31
+ let o = t(e), { model: s } = o;
32
+ f(e);
33
+ for (let [t, n] of o.elements) {
34
+ let r = s.isExpanded(t), i = s.stateOf(t);
35
+ n.dataset.sheetState = i === "hidden" ? "peek" : i;
36
+ let a = [...n.children].find((e) => e.classList.contains("hx-sheet-handle"));
37
+ a && (a.setAttribute("aria-expanded", String(r)), a.setAttribute("aria-label", r ? "Collapse this panel" : "Expand this panel")), m(e, t, n, i === "stub");
38
+ }
39
+ let c = n(e, o);
40
+ c && (c.dataset.sheetOpen = s.expanded() || ""), o.dock && r(e) && o.dock.style.setProperty("--hx-sheet-cap", `${i((o.box ? o.box.clientHeight : e.win.innerHeight) || 0, s.stubs())}px`), g(e), a(e), o.listeners.forEach((e) => e());
41
+ }
42
+ function d(e, t) {
43
+ return e === "forge" ? t.classList.contains("forge-open") : e === "drawer" ? t.classList.contains("drawer-open") : !t.hidden && t.isConnected;
44
+ }
45
+ function f(e) {
46
+ let n = t(e), { model: i } = n;
47
+ if (r(e)) {
48
+ for (let [t, r] of n.elements) {
49
+ let a = d(t, r) && !n.away.has(t);
50
+ if (!a && !d(t, r) && n.away.delete(t), a && !i.isShown(t)) for (let n of i.show(t)) p(e, n);
51
+ else !a && i.isShown(t) && i.hide(t);
52
+ }
53
+ for (let [e, t] of n.elements) {
54
+ let r = n.away.has(e), i = t.hasAttribute("data-sheet-away");
55
+ t.toggleAttribute("data-sheet-away", r), r && !t.inert ? t.inert = !0 : !r && i && d(e, t) && (t.inert = !1);
56
+ }
57
+ } else {
58
+ n.away.clear();
59
+ for (let e of n.elements.values()) e.removeAttribute("data-sheet-away");
60
+ }
61
+ }
62
+ function p(e, n) {
63
+ let r = t(e);
64
+ if (!r.elements.get(n)) return;
65
+ r.away.add(n);
66
+ let i = r.options.get(n);
67
+ i && i.away && i.away();
68
+ }
69
+ function m(e, n, i, a) {
70
+ let o = t(e), s = [...i.children].find((e) => e.classList.contains("hx-sheet-stub"));
71
+ if (!s) {
72
+ if (!a) return;
73
+ s = e.doc.createElement("button"), s.type = "button", s.className = "hx-sheet-stub", s.dataset.corn = "sheet-stub", s.setAttribute("part", "sheet-stub"), s.addEventListener("click", (t) => {
74
+ t.stopPropagation(), t.preventDefault(), y(e, n);
75
+ let a = [...i.children].find((e) => e.classList.contains("hx-sheet-handle"));
76
+ a && r(e) && a.focus();
77
+ }), i.append(s);
78
+ }
79
+ if (s.hidden = !a, !a) return;
80
+ let c = o.options.get(n), l = (c && c.stub ? c.stub() : null) || { title: i.getAttribute("aria-label") || n }, u = String(l.title || ""), d = l.badge ? String(l.badge) : "", f = `${u}\u0000${d}\u0000${l.label || ""}`;
81
+ if (s.dataset.key === f) return;
82
+ s.dataset.key = f, s.replaceChildren();
83
+ let p = e.doc.createElement("span");
84
+ if (p.className = "hx-sheet-stub-title", p.textContent = u, s.append(p), d) {
85
+ let t = e.doc.createElement("span");
86
+ t.className = "hx-waiting-badge", t.dataset.corn = "waiting-badge", t.setAttribute("part", "waiting-badge"), t.setAttribute("aria-hidden", "true"), t.textContent = d, s.append(t);
87
+ }
88
+ s.setAttribute("aria-label", l.label || (d ? `${u}, ${d}` : u));
89
+ }
90
+ function h(e, n) {
91
+ let r = t(e);
92
+ r.elements.has(n) && (r.away.delete(n), u(e));
93
+ }
94
+ function g(e) {
95
+ let { dock: n } = t(e);
96
+ if (!n) return;
97
+ let r = null;
98
+ for (let e of n.children) {
99
+ e.removeAttribute("data-sheet-last");
100
+ let t = e.classList.contains("hx-drawer") && !e.classList.contains("drawer-open") || e.classList.contains("hx-forge") && !e.classList.contains("forge-open");
101
+ !e.hidden && !t && (r = e);
102
+ }
103
+ r && r.setAttribute("data-sheet-last", "");
104
+ }
105
+ function _(e, n, r, i = {}) {
106
+ if (!r) return;
107
+ let a = t(e);
108
+ v(e, n, !1), a.model.add(n), a.elements.set(n, r), a.options.set(n, i), r.classList.add("hx-sheet");
109
+ let o = [...r.children].find((e) => e.classList.contains("hx-sheet-handle"));
110
+ o || (o = e.doc.createElement("button"), o.type = "button", o.className = "hx-sheet-handle", o.dataset.corn = "sheet-handle", o.setAttribute("part", "sheet-handle"), o.innerHTML = "<span data-corn=\"sheet-grip\" part=\"sheet-grip\"></span>", r.prepend(o)), a.offs.set(n, [...C(e, n, o), e.listen(r, "click", (t) => w(e, n, t), !0)]), u(e);
111
+ }
112
+ function v(e, n, r = !0) {
113
+ let i = t(e);
114
+ i.model.has(n) && ((i.offs.get(n) || []).forEach((e) => e()), i.offs.delete(n), i.model.remove(n), i.elements.delete(n), i.options.delete(n), i.away.delete(n), r && u(e));
115
+ }
116
+ function y(e, n) {
117
+ f(e), t(e).model.expand(n) && u(e);
118
+ }
119
+ function b(e, n) {
120
+ t(e).model.collapse(n) && u(e);
121
+ }
122
+ function x(e) {
123
+ t(e).model.collapseAll() && u(e);
124
+ }
125
+ function S(e, n) {
126
+ f(e), t(e).model.toggle(n) && u(e);
127
+ }
128
+ function C(e, t, n) {
129
+ let r = null, i = !1, a = [];
130
+ return a.push(e.listen(n, "pointerdown", (e) => {
131
+ if (r = e.clientY, i = !1, n.setPointerCapture && e.pointerId !== void 0) try {
132
+ n.setPointerCapture(e.pointerId);
133
+ } catch {}
134
+ })), a.push(e.listen(n, "pointerup", (n) => {
135
+ if (r === null) return;
136
+ let a = n.clientY - r;
137
+ r = null, Math.abs(a) < o || (i = !0, a < 0 ? y(e, t) : b(e, t));
138
+ })), a.push(e.listen(n, "pointercancel", () => {
139
+ r = null;
140
+ })), a.push(e.listen(n, "click", (n) => {
141
+ n.stopPropagation(), i ? i = !1 : S(e, t);
142
+ })), a;
143
+ }
144
+ function w(e, n, i) {
145
+ if (!r(e) || t(e).model.isExpanded(n)) return;
146
+ let a = i.target;
147
+ if (a.closest && a.closest(".hx-sheet-handle, .hx-sheet-stub") || a.closest && a.closest("select, input, textarea, [data-peek-ok]")) return;
148
+ let o = a.closest && a.closest("[data-action]");
149
+ o && /close/.test(o.dataset.action) || (i.preventDefault(), i.stopPropagation(), y(e, n));
150
+ }
151
+ function T(e, t) {
152
+ t.target === e.state.canvas && r(e) && x(e);
153
+ }
154
+ function E(e, n) {
155
+ if (n.key !== "Escape" || n.defaultPrevented || !r(e)) return;
156
+ let i = t(e), a = i.model.expanded(), o = a && i.elements.get(a);
157
+ if (!o || !o.contains(n.target) || n.target.closest && n.target.closest("select, input, textarea")) return;
158
+ n.preventDefault(), n.stopPropagation(), b(e, a);
159
+ let s = [...o.children].find((e) => e.classList.contains("hx-sheet-handle"));
160
+ s && s.focus();
161
+ }
162
+ function D(e, t) {
163
+ r(e) && (t.stopPropagation(), x(e));
164
+ }
165
+ function O(e) {
166
+ let n = t(e), r = e.el("sheet-dock");
167
+ if (r) {
168
+ if (r !== n.dock && (n.observers.forEach((e) => e.disconnect()), n.observers = [], n.model.ids().forEach((e) => n.model.remove(e)), n.elements.clear(), n.options.clear(), n.away.clear(), n.lastCovered = 0, n.dock = r), n.wiredDock !== n.dock) {
169
+ n.wiredDock = n.dock;
170
+ let t = e.win;
171
+ if (t && typeof t.MutationObserver == "function") {
172
+ let r = new t.MutationObserver(() => {
173
+ g(e), a(e);
174
+ });
175
+ r.observe(n.dock, {
176
+ childList: !0,
177
+ subtree: !0,
178
+ attributes: !0,
179
+ attributeFilter: ["hidden", "class"]
180
+ }), n.observers.push(r), e.own(() => r.disconnect());
181
+ }
182
+ if (t && typeof t.ResizeObserver == "function") {
183
+ let r = new t.ResizeObserver(() => a(e));
184
+ r.observe(n.dock), n.observers.push(r), e.own(() => r.disconnect());
185
+ }
186
+ }
187
+ if (!n.documentWired) {
188
+ n.documentWired = !0;
189
+ for (let t of [
190
+ "pointerdown",
191
+ "touchstart",
192
+ "mousedown"
193
+ ]) e.listen(e.root, t, (t) => T(e, t), {
194
+ passive: !0,
195
+ capture: !0
196
+ });
197
+ e.listen(e.root, "keydown", (t) => E(e, t), !0), c(e, () => {
198
+ x(e), a(e);
199
+ });
200
+ }
201
+ u(e);
202
+ }
203
+ }
204
+ export { D as a, _ as c, v as d, O as i, s as l, b as n, l as o, y as r, c as s, x as t, h as u };
@@ -0,0 +1,79 @@
1
+ // ../explorer/engine/connection.js
2
+ function e(e, t) {
3
+ return e.offline() ? `You are offline. ${t} was not sent; what you typed is kept. Try again when you are back.` : `cornfield did not answer. ${t} was not sent; what you typed is kept.`;
4
+ }
5
+ function t(e) {
6
+ return (t, r) => e.fetch(t, n(e, t, r));
7
+ }
8
+ function n(e, t, n) {
9
+ return e.base && r(e, t) ? {
10
+ credentials: "include",
11
+ redirect: "error",
12
+ ...n
13
+ } : n;
14
+ }
15
+ function r(e, t) {
16
+ if (!e.base) return !1;
17
+ try {
18
+ return new URL(e.url(String(t)), e.base).origin === new URL(e.base).origin;
19
+ } catch {
20
+ return !1;
21
+ }
22
+ }
23
+ // ../explorer/engine/source-address.js
24
+ var i = /[\u0000- \u007f\\]/;
25
+ function a(e) {
26
+ if (typeof e != "string" || !e.trim()) return {
27
+ ok: !1,
28
+ problem: "is empty"
29
+ };
30
+ let t = e.trim();
31
+ if (i.test(t)) return {
32
+ ok: !1,
33
+ problem: "has a space, a control character or a backslash"
34
+ };
35
+ let n;
36
+ try {
37
+ n = new URL(t);
38
+ } catch {
39
+ return {
40
+ ok: !1,
41
+ problem: "is not an address (an http or https address, as the server is opened in a browser)"
42
+ };
43
+ }
44
+ return n.protocol !== "https:" && n.protocol !== "http:" ? {
45
+ ok: !1,
46
+ problem: "is not http or https"
47
+ } : /^https?:\/\/[^/?#]/i.test(t) ? n.username || n.password ? {
48
+ ok: !1,
49
+ problem: "has a user name or password"
50
+ } : t.includes("?") || t.includes("#") ? {
51
+ ok: !1,
52
+ problem: "has a query or a fragment"
53
+ } : {
54
+ ok: !0,
55
+ base: n.origin + n.pathname.replace(/\/+$/, ""),
56
+ origin: n.origin
57
+ } : {
58
+ ok: !1,
59
+ problem: "has no host"
60
+ };
61
+ }
62
+ function o(e, t) {
63
+ let n = "";
64
+ if (typeof t == "string" && /^https?:\/\//i.test(t)) try {
65
+ let e = new URL(t);
66
+ e.username = "", e.password = "", n = `?returnTo=${encodeURIComponent(e.href)}`;
67
+ } catch {
68
+ n = "";
69
+ }
70
+ return `${e}/auth/start${n}`;
71
+ }
72
+ function s(e) {
73
+ try {
74
+ return /^https?:/i.test(e) ? new URL(e).origin : "";
75
+ } catch {
76
+ return "";
77
+ }
78
+ }
79
+ export { e as a, t as i, a as n, n as o, o as r, s as t };
@@ -1,5 +1,6 @@
1
- import { A as e, B as t, c as n, f as r, k as i } from "./engine-ClfnAsgM.js";
2
- import { g as a, o, r as s, t as c } from "./source-address-B7hYRgt8.js";
1
+ import { En as e, On as t, Wt as n, kn as r, l as i } from "./engine-HIgX35hE.js";
2
+ import { p as a } from "./layers-n1mJVJs8.js";
3
+ import { o, r as s, t as c } from "./source-address-C70zNPIj.js";
3
4
  // ../explorer/engine/source.js
4
5
  var l = "/cornfield/config.json", u = "/topology.json", d = "/cornfield/theme.css";
5
6
  Object.freeze([
@@ -94,9 +95,9 @@ async function y(e, t = u, { signal: n } = {}) {
94
95
  return i;
95
96
  }
96
97
  function b(e, n) {
97
- n && typeof n == "object" && (i(e, n.strings), t(e).applyTheme(n.theme), a(e, n.layers));
98
+ n && typeof n == "object" && (t(e, n.strings), i(e).applyTheme(n.theme), a(e, n.layers));
98
99
  }
99
- function x(e, { version: t = "", pageUrl: n = () => "", onConfig: r = () => {} } = {}) {
100
+ function x(e, { version: n = "", pageUrl: r = () => "", onConfig: i = () => {} } = {}) {
100
101
  let a = !1, o = null, l = null, f = 0, p = {
101
102
  topology: null,
102
103
  config: null,
@@ -143,20 +144,20 @@ function x(e, { version: t = "", pageUrl: n = () => "", onConfig: r = () => {} }
143
144
  }
144
145
  }
145
146
  };
146
- function _(t) {
147
- i(e, p.strings || t && t.strings);
147
+ function _(n) {
148
+ t(e, p.strings || n && n.strings);
148
149
  }
149
- function x(n) {
150
- g.config = n, b(e, n), p.strings && _(n);
151
- let i = m(t, n.version);
152
- t && (i === "minor" || i === "major") && g.say({
150
+ function x(t) {
151
+ g.config = t, b(e, t), p.strings && _(t);
152
+ let r = m(n, t.version);
153
+ n && (r === "minor" || r === "major") && g.say({
153
154
  state: "version",
154
- server: String(n.version).trim(),
155
- package: t,
156
- drift: i
157
- }), r(n);
155
+ server: String(t.version).trim(),
156
+ package: n,
157
+ drift: r
158
+ }), i(t);
158
159
  }
159
- async function C(t, r) {
160
+ async function C(t, n) {
160
161
  if (!(t instanceof h)) return {
161
162
  state: "server",
162
163
  status: 0,
@@ -165,7 +166,7 @@ function x(e, { version: t = "", pageUrl: n = () => "", onConfig: r = () => {} }
165
166
  if (t.kind === "auth") return {
166
167
  state: "sign-in",
167
168
  status: t.status,
168
- signIn: s(e.base, n())
169
+ signIn: s(e.base, r())
169
170
  };
170
171
  if (t.kind === "server") return {
171
172
  state: "server",
@@ -178,14 +179,14 @@ function x(e, { version: t = "", pageUrl: n = () => "", onConfig: r = () => {} }
178
179
  method: "HEAD",
179
180
  mode: "no-cors",
180
181
  credentials: "omit",
181
- signal: r
182
+ signal: n
182
183
  });
183
184
  } catch {
184
185
  return { state: "offline" };
185
186
  }
186
187
  return {
187
188
  state: "not-allowed",
188
- origin: c(n())
189
+ origin: c(r())
189
190
  };
190
191
  }
191
192
  return S(e).source = g, e.own(() => {
@@ -507,54 +508,54 @@ var Z = Object.freeze({
507
508
  address: "failure",
508
509
  "second-map": "failure"
509
510
  });
510
- function Q(t, n) {
511
- switch (n.state) {
511
+ function Q(e, t) {
512
+ switch (t.state) {
512
513
  case "loading": return {
513
- title: e(t, "sourceLoading"),
514
+ title: r(e, "sourceLoading"),
514
515
  text: ""
515
516
  };
516
- case "sign-in": return n.status === 403 ? {
517
- title: e(t, "sourceNotMaintainer"),
518
- text: e(t, "sourceNotMaintainerText"),
519
- link: n.signIn
517
+ case "sign-in": return t.status === 403 ? {
518
+ title: r(e, "sourceNotMaintainer"),
519
+ text: r(e, "sourceNotMaintainerText"),
520
+ link: t.signIn
520
521
  } : {
521
- title: e(t, "sourceSignedOut"),
522
- text: e(t, "sourceSignInText"),
523
- link: n.signIn
522
+ title: r(e, "sourceSignedOut"),
523
+ text: r(e, "sourceSignInText"),
524
+ link: t.signIn
524
525
  };
525
526
  case "not-allowed": return {
526
- title: e(t, "sourceNotListed"),
527
- text: e(t, "sourceNotListedHint"),
528
- origin: n.origin,
527
+ title: r(e, "sourceNotListed"),
528
+ text: r(e, "sourceNotListedHint"),
529
+ origin: t.origin,
529
530
  retry: !0
530
531
  };
531
532
  case "offline": return {
532
- title: e(t, "sourceOffline"),
533
- text: e(t, "sourceOfflineText"),
533
+ title: r(e, "sourceOffline"),
534
+ text: r(e, "sourceOfflineText"),
534
535
  retry: !0
535
536
  };
536
537
  case "server": return {
537
- title: e(t, "errorTitle"),
538
- text: n.message || "",
538
+ title: r(e, "errorTitle"),
539
+ text: t.message || "",
539
540
  retry: !0
540
541
  };
541
542
  case "address": return {
542
- title: e(t, "sourceBadAddress"),
543
- text: n.problem || ""
543
+ title: r(e, "sourceBadAddress"),
544
+ text: t.problem || ""
544
545
  };
545
546
  case "second-map": return {
546
- title: e(t, "sourceSecondMap"),
547
+ title: r(e, "sourceSecondMap"),
547
548
  text: ""
548
549
  };
549
550
  default: return null;
550
551
  }
551
552
  }
552
553
  var $ = (e) => typeof e == "string" && /^https?:\/\/[^\s\\]+$/i.test(e) ? e : "";
553
- function ee(t, r) {
554
- let i = Q(t, r);
554
+ function ee(e, t) {
555
+ let i = Q(e, t);
555
556
  if (!i) return "";
556
557
  let a = i.link ? $(i.link) : "", o = [`<p data-corn="source-title">${n(i.title)}</p>`];
557
- return i.text && o.push(`<p data-corn="source-text">${n(i.text)}</p>`), i.origin && o.push(`<p data-corn="source-text"><code data-corn="source-origin">${n(i.origin)}</code></p>`), a && o.push(`<a data-corn="source-sign-in" data-corn-kind="primary" href="${n(a)}" target="_top" rel="noopener">${n(e(t, "sourceSignIn"))}</a>`), i.retry && o.push(`<button type="button" data-corn="source-retry" data-corn-kind="secondary">${n(e(t, "retry"))}</button>`), o.join("");
558
+ return i.text && o.push(`<p data-corn="source-text">${n(i.text)}</p>`), i.origin && o.push(`<p data-corn="source-text"><code data-corn="source-origin">${n(i.origin)}</code></p>`), a && o.push(`<a data-corn="source-sign-in" data-corn-kind="primary" href="${n(a)}" target="_top" rel="noopener">${n(r(e, "sourceSignIn"))}</a>`), i.retry && o.push(`<button type="button" data-corn="source-retry" data-corn-kind="secondary">${n(r(e, "retry"))}</button>`), o.join("");
558
559
  }
559
560
  function te(e, t) {
560
561
  let n = Q(e, t);
@@ -568,23 +569,23 @@ function ne(t, n, { onRetry: i = () => {}, focusMap: a = () => {}, follow: o = !
568
569
  let s = n.doc, c = () => {
569
570
  let e = t.getRootNode();
570
571
  return e && e.activeElement || null;
571
- }, l = (e) => {
572
- let t = s.createElement("template");
573
- return t.innerHTML = r(e), t.content.firstElementChild;
572
+ }, l = (t) => {
573
+ let n = s.createElement("template");
574
+ return n.innerHTML = e(t), n.content.firstElementChild;
574
575
  }, u = l("<div data-corn=\"source-status\" hidden></div>"), d = l("<p data-corn=\"source-notice\" hidden></p>"), f = l("<p data-corn=\"source-announcer\" class=\"hx-sr-only\" role=\"status\" aria-live=\"polite\" aria-atomic=\"true\"></p>");
575
576
  t.append(u, d, f);
576
- let p = null, m = !1, h = (e) => {
577
- if (m || !e) return;
578
- let t = Q(n, e), i = u.contains(c());
579
- if (!t) {
580
- u.hidden = !0, u.textContent = "", p = e.state, i && a();
577
+ let p = null, m = !1, h = (t) => {
578
+ if (m || !t) return;
579
+ let r = Q(n, t), i = u.contains(c());
580
+ if (!r) {
581
+ u.hidden = !0, u.textContent = "", p = t.state, i && a();
581
582
  return;
582
583
  }
583
- u.innerHTML = r(ee(n, e)), u.setAttribute("data-corn-state", Z[e.state]), u.hidden = !1;
584
- let o = p !== e.state || e.state === "server";
585
- p = e.state, o && (f.textContent = te(n, e)), i && (u.setAttribute("tabindex", "-1"), u.focus());
586
- }, g = (t) => {
587
- m || (t ? (d.textContent = `${e(n, "sourceVersion")} (${t.package} / ${t.server})`, d.hidden = !1, f.textContent = `${f.textContent ? `${f.textContent}. ` : ""}${d.textContent}`) : (d.hidden = !0, d.textContent = ""));
584
+ u.innerHTML = e(ee(n, t)), u.setAttribute("data-corn-state", Z[t.state]), u.hidden = !1;
585
+ let o = p !== t.state || t.state === "server";
586
+ p = t.state, o && (f.textContent = te(n, t)), i && (u.setAttribute("tabindex", "-1"), u.focus());
587
+ }, g = (e) => {
588
+ m || (e ? (d.textContent = `${r(n, "sourceVersion")} (${e.package} / ${e.server})`, d.hidden = !1, f.textContent = `${f.textContent ? `${f.textContent}. ` : ""}${d.textContent}`) : (d.hidden = !0, d.textContent = ""));
588
589
  }, _ = n.listen(u, "click", (e) => {
589
590
  let t = e.target && e.target.closest ? e.target.closest("[data-corn=\"source-retry\"]") : null;
590
591
  t && u.contains(t) && (e.preventDefault(), i());
@@ -0,0 +1 @@
1
+ export { t as CornLayers } from "./chunks/corn-layers-g9AprK6G.js";
package/dist/corn-map.js CHANGED
@@ -1 +1 @@
1
- export { t as CornMap } from "./chunks/corn-map-M7xt4MYk.js";
1
+ export { t as CornMap } from "./chunks/corn-map-DE-pg-A0.js";
@@ -0,0 +1 @@
1
+ export { t as CornNodePanel } from "./chunks/corn-node-panel-CdtFb9IZ.js";
@@ -1 +1 @@
1
- export { t as CornReview } from "./chunks/corn-review-yQU3IpY5.js";
1
+ export { t as CornReview } from "./chunks/corn-review-9krtLSPK.js";
@@ -1,6 +1,6 @@
1
1
  import { n as e, r as t, t as n } from "./chunks/runtime-DFu6W5g-.js";
2
- import { t as r } from "./chunks/scope-Dg_uzefP.js";
3
- import { t as i } from "./chunks/engine-ClfnAsgM.js";
2
+ import { t as r } from "./chunks/scope-CUhp8mkf.js";
3
+ import { t as i } from "./chunks/engine-HIgX35hE.js";
4
4
  // src/components/corn-scope/corn-scope.tsx
5
5
  var a = class extends n {
6
6
  constructor(t) {
@@ -38,7 +38,7 @@ var a = class extends n {
38
38
  config: this.config,
39
39
  strings: this.strings,
40
40
  tokens: i,
41
- version: "0.51.8",
41
+ version: "0.52.0",
42
42
  pageUrl: () => typeof location > "u" ? "" : location.href,
43
43
  onReady: () => this.cornReady.emit(),
44
44
  onAuth: (e) => this.cornAuth.emit(e),
@@ -0,0 +1 @@
1
+ export { t as CornSearch } from "./chunks/corn-search-BY1Po63S.js";
package/dist/index.js CHANGED
@@ -1,6 +1,9 @@
1
- import { t as e } from "./chunks/corn-map-M7xt4MYk.js";
2
- import { t } from "./chunks/corn-review-yQU3IpY5.js";
3
- import { CornScope as n } from "./corn-scope.js";
1
+ import { t as e } from "./chunks/corn-layers-g9AprK6G.js";
2
+ import { t } from "./chunks/corn-map-DE-pg-A0.js";
3
+ import { t as n } from "./chunks/corn-node-panel-CdtFb9IZ.js";
4
+ import { t as r } from "./chunks/corn-review-9krtLSPK.js";
5
+ import { CornScope as i } from "./corn-scope.js";
6
+ import { t as a } from "./chunks/corn-search-BY1Po63S.js";
4
7
  // src/index.ts
5
- var r = "0.51.8";
6
- export { e as CornMap, t as CornReview, n as CornScope, r as version };
8
+ var o = "0.52.0";
9
+ export { e as CornLayers, t as CornMap, n as CornNodePanel, r as CornReview, i as CornScope, a as CornSearch, o as version };