@miadi/stateloom-web 0.3.3 → 0.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/server/.next/BUILD_ID +1 -1
- package/server/.next/build-manifest.json +5 -5
- package/server/.next/server/app/_global-error/page/build-manifest.json +3 -3
- package/server/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/server/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/_global-error.html +2 -2
- package/server/.next/server/app/_global-error.rsc +1 -1
- package/server/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/server/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/server/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/server/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/server/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/server/.next/server/app/_not-found/page/build-manifest.json +3 -3
- package/server/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/server/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/server/.next/server/app/_not-found.html +1 -1
- package/server/.next/server/app/_not-found.rsc +2 -2
- package/server/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/server/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/server/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/server/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/server/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/server/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/server/.next/server/app/api/docs/route.js.nft.json +1 -1
- package/server/.next/server/app/api/file/route.js.nft.json +1 -1
- package/server/.next/server/app/api/marks/route.js.nft.json +1 -1
- package/server/.next/server/app/api/rispec/route.js.nft.json +1 -1
- package/server/.next/server/app/api/watch/route.js.nft.json +1 -1
- package/server/.next/server/app/index.html +1 -1
- package/server/.next/server/app/index.rsc +3 -3
- package/server/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/server/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/server/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/server/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/server/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/server/.next/server/app/page/build-manifest.json +3 -3
- package/server/.next/server/app/page.js.nft.json +1 -1
- package/server/.next/server/app/page_client-reference-manifest.js +1 -1
- package/server/.next/server/chunks/ssr/{2374f_next_dist_0c464f98._.js → 2374f_next_dist_491bc9ca._.js} +2 -2
- package/server/.next/server/chunks/ssr/{[root-of-the-server]__385c85a7._.js → [root-of-the-server]__0d719a8a._.js} +2 -2
- package/server/.next/server/chunks/ssr/[root-of-the-server]__199d50b6._.js +3 -0
- package/server/.next/server/chunks/ssr/[root-of-the-server]__5c28bab6._.js +3 -0
- package/server/.next/server/chunks/ssr/[root-of-the-server]__edbb995c._.js +6 -6
- package/server/.next/server/middleware-build-manifest.js +3 -3
- package/server/.next/server/pages/404.html +1 -1
- package/server/.next/server/pages/500.html +2 -2
- package/server/.next/static/chunks/33df24ad2d3a04e7.js +1 -0
- package/server/.next/static/chunks/6052c4bfdd66ef5c.css +2 -0
- package/server/.next/static/chunks/b0af2862e9bb3e18.js +14 -0
- package/server/.next/static/chunks/b71bf89a3bbb72e1.js +5 -0
- package/server/.next/static/chunks/{turbopack-b3cae9131ae5086f.js → turbopack-3a774f5a5a8a9023.js} +1 -1
- package/server/package-lock.json +2 -2
- package/server/package.json +1 -1
- package/server/src/app/globals.css +40 -2
- package/server/src/app/page.tsx +8 -6
- package/server/src/components/ChromeIcon.tsx +106 -0
- package/server/src/components/PropertiesPanel.tsx +3 -2
- package/server/src/components/Toolbar.tsx +37 -20
- package/server/src/components/erd/ErdWorkspace.tsx +2 -1
- package/server/src/components/sequence/SequenceWorkspace.tsx +10 -1
- package/server/src/components/stage/CompanionLayer.tsx +41 -6
- package/server/src/components/stage/StageLayer.tsx +206 -23
- package/server/src/components/stage/StageProvider.tsx +146 -25
- package/server/src/components/system/SystemWorkspace.tsx +26 -12
- package/server/src/lib/markRequest.ts +24 -0
- package/server/src/lib/useNarrow.ts +30 -0
- package/server/stateloom-web.json +2 -2
- package/server/tsconfig.tsbuildinfo +1 -1
- package/server/.next/server/chunks/ssr/[root-of-the-server]__a593e8b6._.js +0 -3
- package/server/.next/server/chunks/ssr/[root-of-the-server]__f25b51be._.js +0 -3
- package/server/.next/static/chunks/59a1ec89a1dc7e34.js +0 -14
- package/server/.next/static/chunks/662d1b0ce457c16b.js +0 -1
- package/server/.next/static/chunks/8f45e56f40c207bf.css +0 -2
- package/server/.next/static/chunks/96818f5620f039a1.js +0 -5
- /package/server/.next/static/{CZ4wRF1efsHnxjkcKHITP → ZoijkpoWD861NG-cIGJrO}/_buildManifest.js +0 -0
- /package/server/.next/static/{CZ4wRF1efsHnxjkcKHITP → ZoijkpoWD861NG-cIGJrO}/_clientMiddlewareManifest.json +0 -0
- /package/server/.next/static/{CZ4wRF1efsHnxjkcKHITP → ZoijkpoWD861NG-cIGJrO}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* "Open that mark": something outside the board (the Talk dock's list of marks) asks the
|
|
5
|
+
* board showing `doc` to open the thread of mark `id`. The request waits here until that
|
|
6
|
+
* board has read its marks — the drawing may still be opening — and is taken once.
|
|
7
|
+
*/
|
|
8
|
+
export const MARK_REQUEST_EVENT = "stateloom:mark-request";
|
|
9
|
+
|
|
10
|
+
let pending: { doc: string; id: string } | null = null;
|
|
11
|
+
|
|
12
|
+
export function requestMark(doc: string, id: string): void {
|
|
13
|
+
pending = { doc, id };
|
|
14
|
+
window.dispatchEvent(new Event(MARK_REQUEST_EVENT));
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/** The mark asked for on `doc`, if any; it stays asked until `clearMarkRequest`. */
|
|
18
|
+
export function markRequested(doc: string | null): string | null {
|
|
19
|
+
return doc && pending?.doc === doc ? pending.id : null;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function clearMarkRequest(): void {
|
|
23
|
+
pending = null;
|
|
24
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { useEffect, useState } from "react";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* A phone held upright: below 600 px the stage's caption, a mark's card and the Talk
|
|
7
|
+
* conversation share one sheet at the bottom of the board (Spec 83, lane U finding U2).
|
|
8
|
+
*/
|
|
9
|
+
export const NARROW_QUERY = "(max-width: 599px)";
|
|
10
|
+
|
|
11
|
+
function matches(query: string): boolean {
|
|
12
|
+
try {
|
|
13
|
+
return typeof window !== "undefined" && typeof window.matchMedia === "function" && window.matchMedia(query).matches;
|
|
14
|
+
} catch {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export function useNarrow(query = NARROW_QUERY): boolean {
|
|
20
|
+
const [narrow, setNarrow] = useState(() => matches(query));
|
|
21
|
+
useEffect(() => {
|
|
22
|
+
if (typeof window.matchMedia !== "function") return;
|
|
23
|
+
const mq = window.matchMedia(query);
|
|
24
|
+
const update = () => setNarrow(mq.matches);
|
|
25
|
+
update();
|
|
26
|
+
mq.addEventListener("change", update);
|
|
27
|
+
return () => mq.removeEventListener("change", update);
|
|
28
|
+
}, [query]);
|
|
29
|
+
return narrow;
|
|
30
|
+
}
|