@graview/primitives 0.1.37 → 0.1.39
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/dist/app-bar.d.ts.map +1 -1
- package/dist/app-bar.js +51 -3
- package/dist/app-bar.js.map +1 -1
- package/dist/bar-panes.d.ts +8 -0
- package/dist/bar-panes.d.ts.map +1 -1
- package/dist/bar-panes.js +16 -3
- package/dist/bar-panes.js.map +1 -1
- package/dist/board-move-section.d.ts +34 -0
- package/dist/board-move-section.d.ts.map +1 -0
- package/dist/board-move-section.js +29 -0
- package/dist/board-move-section.js.map +1 -0
- package/dist/declared-lens-doors.js +1 -1
- package/dist/declared-lens-doors.js.map +1 -1
- package/dist/files.d.ts.map +1 -1
- package/dist/files.js +4 -2
- package/dist/files.js.map +1 -1
- package/dist/hover-chip.d.ts +11 -0
- package/dist/hover-chip.d.ts.map +1 -0
- package/dist/hover-chip.js +120 -0
- package/dist/hover-chip.js.map +1 -0
- package/dist/hover-chips.d.ts +47 -0
- package/dist/hover-chips.d.ts.map +1 -0
- package/dist/hover-chips.js +130 -0
- package/dist/hover-chips.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/inline-ai-env.d.ts.map +1 -1
- package/dist/inline-ai-env.js +2 -1
- package/dist/inline-ai-env.js.map +1 -1
- package/dist/inline-ai-menu.d.ts +14 -3
- package/dist/inline-ai-menu.d.ts.map +1 -1
- package/dist/inline-ai-menu.js +30 -10
- package/dist/inline-ai-menu.js.map +1 -1
- package/dist/lens/arranging.d.ts +5 -0
- package/dist/lens/arranging.d.ts.map +1 -1
- package/dist/lens/arranging.js +2 -1
- package/dist/lens/arranging.js.map +1 -1
- package/dist/lens/calendar-options.d.ts +4 -0
- package/dist/lens/calendar-options.d.ts.map +1 -1
- package/dist/lens/calendar-options.js.map +1 -1
- package/dist/lens/calendar-view.d.ts.map +1 -1
- package/dist/lens/calendar-view.js +2 -0
- package/dist/lens/calendar-view.js.map +1 -1
- package/dist/lens/columns.d.ts +28 -3
- package/dist/lens/columns.d.ts.map +1 -1
- package/dist/lens/columns.js +198 -21
- package/dist/lens/columns.js.map +1 -1
- package/dist/lens/coverage.d.ts +4 -0
- package/dist/lens/coverage.d.ts.map +1 -1
- package/dist/lens/coverage.js +1 -1
- package/dist/lens/coverage.js.map +1 -1
- package/dist/lens/move-to.d.ts +23 -0
- package/dist/lens/move-to.d.ts.map +1 -0
- package/dist/lens/move-to.js +23 -0
- package/dist/lens/move-to.js.map +1 -0
- package/dist/pages.d.ts +3 -0
- package/dist/pages.d.ts.map +1 -1
- package/dist/pages.js +4 -0
- package/dist/pages.js.map +1 -1
- package/dist/place-menu.d.ts +25 -0
- package/dist/place-menu.d.ts.map +1 -0
- package/dist/place-menu.js +89 -0
- package/dist/place-menu.js.map +1 -0
- package/dist/quick-ask.d.ts +1 -1
- package/dist/quick-ask.d.ts.map +1 -1
- package/dist/quick-ask.js +24 -2
- package/dist/quick-ask.js.map +1 -1
- package/dist/scene-places.d.ts.map +1 -1
- package/dist/scene-places.js +6 -4
- package/dist/scene-places.js.map +1 -1
- package/dist/scene.d.ts +3 -0
- package/dist/scene.d.ts.map +1 -1
- package/dist/scene.js +4 -0
- package/dist/scene.js.map +1 -1
- package/dist/several-ai.d.ts +11 -0
- package/dist/several-ai.d.ts.map +1 -0
- package/dist/several-ai.js +53 -0
- package/dist/several-ai.js.map +1 -0
- package/dist/several-bar.d.ts.map +1 -1
- package/dist/several-bar.js +20 -4
- package/dist/several-bar.js.map +1 -1
- package/dist/shell.d.ts +11 -2
- package/dist/shell.d.ts.map +1 -1
- package/dist/shell.js +8 -3
- package/dist/shell.js.map +1 -1
- package/dist/spec-views.d.ts +3 -2
- package/dist/spec-views.d.ts.map +1 -1
- package/dist/spec-views.js +3 -3
- package/dist/spec-views.js.map +1 -1
- package/dist/text-body.d.ts.map +1 -1
- package/dist/text-body.js +2 -1
- package/dist/text-body.js.map +1 -1
- package/dist/view-tidying-sections.d.ts +22 -0
- package/dist/view-tidying-sections.d.ts.map +1 -0
- package/dist/view-tidying-sections.js +97 -0
- package/dist/view-tidying-sections.js.map +1 -0
- package/dist/view-tidying.d.ts +31 -0
- package/dist/view-tidying.d.ts.map +1 -0
- package/dist/view-tidying.js +132 -0
- package/dist/view-tidying.js.map +1 -0
- package/dist/workbench/inspector-door.d.ts.map +1 -1
- package/dist/workbench/inspector-door.js +35 -9
- package/dist/workbench/inspector-door.js.map +1 -1
- package/package.json +6 -6
package/dist/text-body.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text-body.js","sourceRoot":"","sources":["../src/text-body.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"text-body.js","sourceRoot":"","sources":["../src/text-body.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAsB,MAAM,OAAO,CAAC;AA+B3D,4IAA4I;AAC5I,MAAM,QAAQ,GAAG,4BAA4B,CAAC;AAC9C,MAAM,QAAQ,GAAG,oBAAoB,CAAC;AAEtC,sDAAsD;AACtD,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,MAAM,MAAM,GAAgB,EAAE,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;QACtE,IAAI,GAAG,GAAoH,IAAI,CAAC;QAChI,MAAM,KAAK,GAAG,GAAG,EAAE;YACjB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3F,GAAG,GAAG,IAAI,CAAC;QACb,CAAC,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvD,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;oBACpB,KAAK,EAAE,CAAC;oBACR,GAAG,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;gBAC3D,CAAC;gBACA,GAA2B,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,QAAQ,EAAE,CAAC;gBACpB,IAAI,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;oBACpB,KAAK,EAAE,CAAC;oBACR,GAAG,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;gBAC/B,CAAC;gBACA,GAA2B,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvD,wDAAwD;gBACxD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;gBACxB,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACxE,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,IAAI,GAAG,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC;oBACnB,KAAK,EAAE,CAAC;oBACR,GAAG,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;gBAC9B,CAAC;gBACA,GAA2B,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QACD,KAAK,EAAE,CAAC;IACV,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,gHAAgH;AAChH,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,IAAI,GAAkB,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;AACrG,MAAM,KAAK,GAAkB,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AAC3C,MAAM,IAAI,GAAkB,EAAE,MAAM,EAAE,CAAC,EAAE,kBAAkB,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AAEtG,mFAAmF;AACnF,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;AAE5E;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,EACvB,IAAI,EACJ,SAAS,EACT,KAAK,EACL,QAAQ,EACR,YAAY,GAOb;IACC,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,CACL,KAAC,QAAQ,IAAC,QAAQ,EAAE,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,KAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAI,YAC9G,KAAC,YAAY,IAAC,IAAI,EAAE,IAAI,KAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAI,GACnI,CACZ,CAAC;IACJ,CAAC;IACD,OAAO,CACL,wCAA4B,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,YAC9F,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACrC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAChB,YAAe,KAAK,EAAE,KAAK,YACxB,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAC7B,2BACG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,cAAM,CAAC,CAAC,CAAC,IAAI,EACtB,IAAI,KAFI,EAAE,CAGN,CACR,CAAC,IANI,KAAK,CAOT,CACL,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CACrB,aAAgB,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,YAC5C,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAC7B,uBAAc,IAAI,IAAT,EAAE,CAAa,CACzB,CAAC,IAHK,KAAK,CAIT,CACN,CAAC,CAAC,CAAC,CACF,aAAgB,KAAK,EAAE,IAAI,YACxB,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAC7B,uBAAc,IAAI,IAAT,EAAE,CAAa,CACzB,CAAC,IAHK,KAAK,CAIT,CACN,CACF,GACG,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type Place } from "@graview/core";
|
|
2
|
+
import { type MenuSectionSource } from "@graview/react/provider";
|
|
3
|
+
import { type ReactNode } from "react";
|
|
4
|
+
/**
|
|
5
|
+
* THE PLACE A KIND FALLS BACK TO when `gone` is deleted: the one its kind
|
|
6
|
+
* draws when an address names none — the last registered of the kind's
|
|
7
|
+
* others still listed — or none, and the face goes home.
|
|
8
|
+
*/
|
|
9
|
+
export declare function placeAfter(places: readonly Place[], gone: Place): Place | undefined;
|
|
10
|
+
/**
|
|
11
|
+
* HIDE AND DELETE IN THE PLACE MENU: a section of the context menu for a
|
|
12
|
+
* target that is a place this viewer may tidy — Show in place of Hide for
|
|
13
|
+
* one already hidden. None where the host keeps no views. `away` is told of
|
|
14
|
+
* a place once it is deleted, so a face on it goes somewhere that stands
|
|
15
|
+
* (`placeAfter`) rather than drawing what it falls back to.
|
|
16
|
+
*/
|
|
17
|
+
export declare function useViewTidyingSection(away?: (place: Place, after: Place | undefined) => void): MenuSectionSource | null;
|
|
18
|
+
/** The context menu drawn inside, with Hide and Delete in it for a place this viewer may tidy (Roadmap f-place-menu-views). */
|
|
19
|
+
export declare function ViewTidyingSections({ children }: {
|
|
20
|
+
readonly children: ReactNode;
|
|
21
|
+
}): import("react").JSX.Element;
|
|
22
|
+
//# sourceMappingURL=view-tidying-sections.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view-tidying-sections.d.ts","sourceRoot":"","sources":["../src/view-tidying-sections.tsx"],"names":[],"mappings":"AACA,OAAO,EAAmC,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AAG5E,OAAO,EAA6D,KAAK,iBAAiB,EAAmB,MAAM,yBAAyB,CAAC;AAC7I,OAAO,EAAoC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAuBzE;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,CAEnF;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,SAAS,KAAK,IAAI,GAAG,iBAAiB,GAAG,IAAI,CAmCvH;AAID,+HAA+H;AAC/H,wBAAgB,mBAAmB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAcjF"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { retryingImport } from "@graview/core/retry";
|
|
3
|
+
import { placeTidying, REMOVED_VIEW_DAYS } from "@graview/core";
|
|
4
|
+
import { aggregateId, withOverview, withPicture } from "@graview/layout/view";
|
|
5
|
+
import { MenuSections } from "@graview/react/drawing";
|
|
6
|
+
import { lazyModule, useGraviewIfAny, useNavigation } from "@graview/react/provider";
|
|
7
|
+
import { useCallback, useContext, useMemo } from "react";
|
|
8
|
+
import { NoticeBoardContext } from "./notices.js";
|
|
9
|
+
/*
|
|
10
|
+
* HIDE AND DELETE IN THE PLACE MENU (Roadmap f-place-menu-views), as much
|
|
11
|
+
* of it as the menu needs to say its rows: whether a place is one this
|
|
12
|
+
* viewer may tidy, and the rows. What a press does — the host asked, the
|
|
13
|
+
* toast, Restore — is the tidying's own (`./view-tidying.tsx`), fetched
|
|
14
|
+
* while the pointer rests on the menu or with the press, so a face that is
|
|
15
|
+
* never right-clicked carries none of it. Its own module, beside the faces'
|
|
16
|
+
* menus: `MenuSections` is the drawn faces' (`@graview/react/drawing`).
|
|
17
|
+
*/
|
|
18
|
+
const tidying = /* @__PURE__ */ lazyModule(retryingImport(() => import("./view-tidying.js")));
|
|
19
|
+
/** The kind a menu's target is about, when it is one kind's group. */
|
|
20
|
+
function kindOf(target) {
|
|
21
|
+
const about = target.about[0];
|
|
22
|
+
if (target.about.length !== 1 || !about?.startsWith("aggregate:"))
|
|
23
|
+
return undefined;
|
|
24
|
+
const kinds = about.slice("aggregate:".length).split("+");
|
|
25
|
+
return kinds.length === 1 ? kinds[0] : undefined;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* THE PLACE A KIND FALLS BACK TO when `gone` is deleted: the one its kind
|
|
29
|
+
* draws when an address names none — the last registered of the kind's
|
|
30
|
+
* others still listed — or none, and the face goes home.
|
|
31
|
+
*/
|
|
32
|
+
export function placeAfter(places, gone) {
|
|
33
|
+
return places.filter((one) => one.as !== gone.as && !one.hidden && (one.kind === gone.kind || one.over?.includes(gone.kind) === true)).at(-1);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* HIDE AND DELETE IN THE PLACE MENU: a section of the context menu for a
|
|
37
|
+
* target that is a place this viewer may tidy — Show in place of Hide for
|
|
38
|
+
* one already hidden. None where the host keeps no views. `away` is told of
|
|
39
|
+
* a place once it is deleted, so a face on it goes somewhere that stands
|
|
40
|
+
* (`placeAfter`) rather than drawing what it falls back to.
|
|
41
|
+
*/
|
|
42
|
+
export function useViewTidyingSection(away) {
|
|
43
|
+
const context = useGraviewIfAny();
|
|
44
|
+
const keeper = context?.keptViews;
|
|
45
|
+
const views = context?.views;
|
|
46
|
+
const board = useContext(NoticeBoardContext);
|
|
47
|
+
return useMemo(() => {
|
|
48
|
+
if (!keeper || !views)
|
|
49
|
+
return null;
|
|
50
|
+
return (target) => {
|
|
51
|
+
if (target.place === undefined)
|
|
52
|
+
return null;
|
|
53
|
+
// What the host says as the menu opens.
|
|
54
|
+
const state = keeper.current();
|
|
55
|
+
const kind = kindOf(target);
|
|
56
|
+
const place = views.places().find((one) => one.as === target.place && (kind === undefined || one.kind === kind || one.over?.includes(kind) === true));
|
|
57
|
+
if (!place)
|
|
58
|
+
return null;
|
|
59
|
+
const how = placeTidying(place, state, keeper);
|
|
60
|
+
if (!how)
|
|
61
|
+
return null;
|
|
62
|
+
const setHidden = (hidden) => void tidying.load().then((module) => module.setHidden(place, how, keeper, hidden, board), String);
|
|
63
|
+
const items = [
|
|
64
|
+
place.hidden
|
|
65
|
+
? { id: "show-view", label: "Show", hint: "Back in the places, for everyone", run: () => setHidden(false) }
|
|
66
|
+
: { id: "hide-view", label: "Hide", hint: "Off the places and the scene, for everyone", run: () => setHidden(true) },
|
|
67
|
+
{
|
|
68
|
+
id: "delete-view",
|
|
69
|
+
label: "Delete",
|
|
70
|
+
hint: `Kept ${REMOVED_VIEW_DAYS} days under Recently deleted`,
|
|
71
|
+
run: () => {
|
|
72
|
+
const after = placeAfter(views.places(), place);
|
|
73
|
+
void tidying.load().then((module) => module.remove(place, how, keeper, board).then((done) => done && away?.(place, after)), String);
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
];
|
|
77
|
+
// What a press does, fetched while the pointer rests on the menu.
|
|
78
|
+
return { id: "tidy-view", items, prepare: () => tidying.prefetch() };
|
|
79
|
+
};
|
|
80
|
+
}, [keeper, views, board, away]);
|
|
81
|
+
}
|
|
82
|
+
const NONE = [];
|
|
83
|
+
/** The context menu drawn inside, with Hide and Delete in it for a place this viewer may tidy (Roadmap f-place-menu-views). */
|
|
84
|
+
export function ViewTidyingSections({ children }) {
|
|
85
|
+
/* The scene showing a picture just deleted goes to its kind's own picture, else up to the whole thing. */
|
|
86
|
+
const { view, go } = useNavigation();
|
|
87
|
+
const away = useCallback((place, after) => {
|
|
88
|
+
const showing = view.within?.["view"];
|
|
89
|
+
const on = view.focusId === aggregateId(place.kind) && (showing === undefined || showing === place.as);
|
|
90
|
+
if (on)
|
|
91
|
+
go(after ? withPicture(view, after.kind, after.as) : withOverview(view, true));
|
|
92
|
+
}, [view, go]);
|
|
93
|
+
const section = useViewTidyingSection(away);
|
|
94
|
+
const sections = useMemo(() => (section ? [section] : NONE), [section]);
|
|
95
|
+
return _jsx(MenuSections, { sections: sections, children: children });
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=view-tidying-sections.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view-tidying-sections.js","sourceRoot":"","sources":["../src/view-tidying-sections.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { type KeptViews, type KeptViewsState, type Place, type RemovedView } from "@graview/core";
|
|
2
|
+
import { type NoticeBoard } from "./notices.js";
|
|
3
|
+
import type { BarGo } from "./app-bar.js";
|
|
4
|
+
import "./frame.js";
|
|
5
|
+
/** What the host's kept views say now, followed as they change; nothing hidden, deleted or allowed without them. */
|
|
6
|
+
export declare function useKeptViewsState(keeper: KeptViews | undefined): KeptViewsState;
|
|
7
|
+
/** Keeps a place off the lists, or puts it back. */
|
|
8
|
+
export declare function setHidden(place: Place, how: "view" | "lens", keeper: KeptViews, hidden: boolean, board: NoticeBoard | null): Promise<boolean>;
|
|
9
|
+
/** Restores a deleted view, by the name the host lists it under. */
|
|
10
|
+
export declare function restore(removed: Pick<RemovedView, "name" | "title">, keeper: KeptViews, board: NoticeBoard | null): Promise<boolean>;
|
|
11
|
+
/** Deletes a place, saying where it went and offering it back. */
|
|
12
|
+
export declare function remove(place: Place, how: "view" | "lens", keeper: KeptViews, board: NoticeBoard | null): Promise<boolean>;
|
|
13
|
+
/** What the drop-down's foot lists: the hidden places this viewer may show, and the deleted views they may restore. */
|
|
14
|
+
export declare function useTidied(): {
|
|
15
|
+
readonly keeper: KeptViews;
|
|
16
|
+
readonly hidden: readonly Place[];
|
|
17
|
+
readonly removed: readonly RemovedView[];
|
|
18
|
+
readonly how: (place: Place) => "view" | "lens" | null;
|
|
19
|
+
} | null;
|
|
20
|
+
/**
|
|
21
|
+
* THE DROP-DOWN'S FOOT: Hidden, each with Show, and Recently deleted, each
|
|
22
|
+
* with Restore and the day it is gone for good. A hidden place's name is a
|
|
23
|
+
* link to it where the face has one. Fetched with the bar's panes.
|
|
24
|
+
*/
|
|
25
|
+
export declare function TidyGroups({ id, scene, reach, done }: {
|
|
26
|
+
readonly id: string;
|
|
27
|
+
readonly scene: boolean;
|
|
28
|
+
readonly reach: BarGo;
|
|
29
|
+
readonly done: () => void;
|
|
30
|
+
}): import("react").JSX.Element | null;
|
|
31
|
+
//# sourceMappingURL=view-tidying.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view-tidying.d.ts","sourceRoot":"","sources":["../src/view-tidying.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA8E,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,KAAK,KAAK,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AAG9K,OAAO,EAAsB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,KAAK,EAAY,MAAM,cAAc,CAAC;AACpD,OAAO,YAAY,CAAC;AAqBpB,oHAAoH;AACpH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,cAAc,CAI/E;AAgBD,oDAAoD;AACpD,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAO7I;AAED,oEAAoE;AACpE,wBAAgB,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAEpI;AAED,kEAAkE;AAClE,wBAAsB,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAgB/H;AAED,uHAAuH;AACvH,wBAAgB,SAAS,IAAI;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CAmBtM;AAwCD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;IAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAA;CAAE,sCA4CxJ"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { NO_KEPT_VIEWS, placePath, placeTidying, REMOVED_VIEW_DAYS, removedLensName } from "@graview/core";
|
|
3
|
+
import { useGraview, useGraviewIfAny } from "@graview/react/provider";
|
|
4
|
+
import { useContext, useMemo, useSyncExternalStore } from "react";
|
|
5
|
+
import { NoticeBoardContext } from "./notices.js";
|
|
6
|
+
import "./frame.js"; // A door: tied to what the page drew first (TIED DOORS, packages/primitives/src/frame.ts).
|
|
7
|
+
/*
|
|
8
|
+
* TIDYING THE VIEWS FROM THE PLACE MENU (Roadmap f-place-menu-views).
|
|
9
|
+
*
|
|
10
|
+
* Right-clicking a place — in the bar, in its drop-down, on a page — offers
|
|
11
|
+
* Hide and Delete for a view somebody may tidy: a script view the host keeps
|
|
12
|
+
* (`ViewMeta.name`), where the host says this viewer may (`may.views`, an
|
|
13
|
+
* owner or an editor); a declared lens (`ViewMeta.declared`), where the host
|
|
14
|
+
* writes the declaration (`KeptViews.lens`) and says this viewer may change
|
|
15
|
+
* it (`may.lenses`, the owner). Both are app-wide. The drop-down's foot
|
|
16
|
+
* lists what is Hidden, with Show, and what was Recently deleted, with
|
|
17
|
+
* Restore, for as long as the host keeps it.
|
|
18
|
+
*
|
|
19
|
+
* This is what a press does and the drop-down's foot: fetched with the
|
|
20
|
+
* bar's panes, or by the menu's rows (`./view-tidying-sections.tsx`) while
|
|
21
|
+
* the pointer rests on them, never with the page.
|
|
22
|
+
*/
|
|
23
|
+
const never = () => () => undefined;
|
|
24
|
+
/** What the host's kept views say now, followed as they change; nothing hidden, deleted or allowed without them. */
|
|
25
|
+
export function useKeptViewsState(keeper) {
|
|
26
|
+
const subscribe = useMemo(() => (keeper?.onChange ? (listener) => keeper.onChange(listener) : never), [keeper]);
|
|
27
|
+
const read = () => keeper?.current() ?? NO_KEPT_VIEWS;
|
|
28
|
+
return useSyncExternalStore(subscribe, read, read);
|
|
29
|
+
}
|
|
30
|
+
/** Whether this viewer may restore a deleted view: a lens is the declaration's, the rest the host's views. */
|
|
31
|
+
const mayRestore = (removed, state) => (removed.lens ? state.may.lenses : state.may.views);
|
|
32
|
+
/** Runs one tidying, saying in the app's notices what the host refused, in its words. */
|
|
33
|
+
async function tidy(board, run, failed) {
|
|
34
|
+
try {
|
|
35
|
+
await run();
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
catch (error) {
|
|
39
|
+
board?.notify({ kind: "toast", tone: "bad", sentence: error instanceof Error && error.message ? error.message : failed });
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/** Keeps a place off the lists, or puts it back. */
|
|
44
|
+
export function setHidden(place, how, keeper, hidden, board) {
|
|
45
|
+
const name = place.name;
|
|
46
|
+
return tidy(board, () => (how === "view" && name !== undefined ? (hidden ? keeper.hide(name) : keeper.show(name)) : keeper.lens?.({ op: "set-lens-hidden", title: place.title, on: place.kind, hidden })), hidden ? `“${place.title}” could not be hidden.` : `“${place.title}” could not be shown.`);
|
|
47
|
+
}
|
|
48
|
+
/** Restores a deleted view, by the name the host lists it under. */
|
|
49
|
+
export function restore(removed, keeper, board) {
|
|
50
|
+
return tidy(board, () => keeper.restore(removed.name), `“${removed.title}” could not be restored.`);
|
|
51
|
+
}
|
|
52
|
+
/** Deletes a place, saying where it went and offering it back. */
|
|
53
|
+
export async function remove(place, how, keeper, board) {
|
|
54
|
+
const name = how === "view" && place.name !== undefined ? place.name : removedLensName(place.title);
|
|
55
|
+
const done = await tidy(board, () => (how === "view" && place.name !== undefined ? keeper.remove(place.name, { title: place.title, kind: place.kind }) : keeper.lens?.({ op: "remove-lens", title: place.title, on: place.kind })), `“${place.title}” could not be deleted.`);
|
|
56
|
+
if (done) {
|
|
57
|
+
board?.notify({
|
|
58
|
+
kind: "toast",
|
|
59
|
+
id: `deleted-view-${name}`,
|
|
60
|
+
sentence: `Deleted “${place.title}”. It is under Recently deleted in the places for ${REMOVED_VIEW_DAYS} days.`,
|
|
61
|
+
action: { label: "Restore", onSelect: () => void restore({ name, title: place.title }, keeper, board) },
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
return done;
|
|
65
|
+
}
|
|
66
|
+
/** What the drop-down's foot lists: the hidden places this viewer may show, and the deleted views they may restore. */
|
|
67
|
+
export function useTidied() {
|
|
68
|
+
const context = useGraviewIfAny();
|
|
69
|
+
const keeper = context?.keptViews;
|
|
70
|
+
const state = useKeptViewsState(keeper);
|
|
71
|
+
const views = context?.views;
|
|
72
|
+
return useMemo(() => {
|
|
73
|
+
if (!keeper || !views)
|
|
74
|
+
return null;
|
|
75
|
+
const how = (place) => placeTidying(place, state, keeper);
|
|
76
|
+
const seen = new Set();
|
|
77
|
+
// Each picture once, as every list of places names it.
|
|
78
|
+
const hidden = views.places().filter((place) => {
|
|
79
|
+
if (!place.hidden || how(place) === null)
|
|
80
|
+
return false;
|
|
81
|
+
const key = `${place.name ?? ""}|${place.title}`;
|
|
82
|
+
if (seen.has(key))
|
|
83
|
+
return false;
|
|
84
|
+
seen.add(key);
|
|
85
|
+
return true;
|
|
86
|
+
});
|
|
87
|
+
return { keeper, hidden, removed: state.removed.filter((one) => mayRestore(one, state)), how };
|
|
88
|
+
}, [keeper, state, views]);
|
|
89
|
+
}
|
|
90
|
+
/** A day as the drop-down says it: "Nov 18". */
|
|
91
|
+
function dayOf(iso, locale) {
|
|
92
|
+
const date = new Date(iso);
|
|
93
|
+
return Number.isNaN(date.getTime()) ? iso : date.toLocaleDateString(locale ?? "en-US", { month: "short", day: "numeric" });
|
|
94
|
+
}
|
|
95
|
+
/** The foot's own rules, drawn with it. */
|
|
96
|
+
const TIDY_CSS = `.graview-bar-list li.graview-bar-tidied{display:flex;align-items:flex-start;gap:8px;padding:0 0 0 2px}
|
|
97
|
+
.graview-bar-tidied>.graview-bar-item,.graview-bar-gone{flex:1 1 auto;min-width:0}
|
|
98
|
+
.graview-bar-gone{display:grid;gap:1px;padding:7px 8px;font-size:.875rem;line-height:1.3;overflow-wrap:anywhere;color:var(--graview-ink-muted)}
|
|
99
|
+
.graview-bar-gone small{font-size:.75rem}
|
|
100
|
+
.graview-bar-tidy{flex:0 0 auto;margin:3px 2px;padding:4px 10px;border:1px solid var(--graview-edge);border-radius:6px;background:none;font:inherit;font-size:.8125rem;color:var(--graview-ink);cursor:pointer}
|
|
101
|
+
.graview-bar-tidy:hover{background:color-mix(in srgb,var(--graview-ink) 7%,transparent)}
|
|
102
|
+
.graview-bar-tidy:focus-visible{outline:2px solid var(--graview-accent);outline-offset:1px}`;
|
|
103
|
+
/** A hidden place's name in the foot: a link to it on Pages, where it is still at its address; its name alone on the scene. */
|
|
104
|
+
function HiddenName({ place, scene, reach, done }) {
|
|
105
|
+
if (scene)
|
|
106
|
+
return _jsx("span", { className: "graview-bar-gone", children: place.title });
|
|
107
|
+
const entry = { key: `place:${place.kind}:${place.as}`, label: place.title, path: placePath(place.as), group: "pictures", kind: place.kind };
|
|
108
|
+
const href = reach.href?.(entry.path);
|
|
109
|
+
const Entry = (href !== undefined ? "a" : "button");
|
|
110
|
+
return (_jsx(Entry, { className: "graview-bar-item", "data-testid": "app-view-hidden-place", ...(href !== undefined ? { href } : { type: "button" }), onClick: (event) => {
|
|
111
|
+
done();
|
|
112
|
+
if (!reach.go || (href !== undefined && (event.button !== 0 || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey)))
|
|
113
|
+
return;
|
|
114
|
+
event.preventDefault();
|
|
115
|
+
reach.go(entry);
|
|
116
|
+
}, children: place.title }));
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* THE DROP-DOWN'S FOOT: Hidden, each with Show, and Recently deleted, each
|
|
120
|
+
* with Restore and the day it is gone for good. A hidden place's name is a
|
|
121
|
+
* link to it where the face has one. Fetched with the bar's panes.
|
|
122
|
+
*/
|
|
123
|
+
export function TidyGroups({ id, scene, reach, done }) {
|
|
124
|
+
const tidied = useTidied();
|
|
125
|
+
const { locale } = useGraview();
|
|
126
|
+
const board = useContext(NoticeBoardContext);
|
|
127
|
+
if (!tidied || (tidied.hidden.length === 0 && tidied.removed.length === 0))
|
|
128
|
+
return null;
|
|
129
|
+
const { keeper, hidden, removed, how } = tidied;
|
|
130
|
+
return (_jsxs(_Fragment, { children: [_jsx("style", { children: TIDY_CSS }), hidden.length > 0 ? (_jsxs("div", { role: "group", "aria-labelledby": `${id}-hidden`, "data-place-group": "hidden", children: [_jsx("p", { id: `${id}-hidden`, children: "Hidden" }), _jsx("ul", { children: hidden.map((place) => (_jsxs("li", { className: "graview-bar-tidied", children: [_jsx(HiddenName, { place: place, scene: scene, reach: reach, done: done }), _jsx("button", { type: "button", className: "graview-bar-tidy", "data-testid": "app-view-show", "data-view": place.name ?? place.title, "aria-label": `Show “${place.title}”`, onClick: () => void setHidden(place, how(place), keeper, false, board), children: "Show" })] }, `${place.kind}:${place.as}`))) })] })) : null, removed.length > 0 ? (_jsxs("div", { role: "group", "aria-labelledby": `${id}-removed`, "data-place-group": "removed", children: [_jsx("p", { id: `${id}-removed`, children: "Recently deleted" }), _jsx("ul", { children: removed.map((one) => (_jsxs("li", { className: "graview-bar-tidied", children: [_jsxs("span", { className: "graview-bar-gone", children: [_jsx("span", { children: one.title }), _jsxs("small", { children: ["until ", dayOf(one.until, locale)] })] }), _jsx("button", { type: "button", className: "graview-bar-tidy", "data-testid": "app-view-restore", "data-view": one.name, "aria-label": `Restore “${one.title}”`, onClick: () => void restore(one, keeper, board), children: "Restore" })] }, one.name))) })] })) : null] }));
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=view-tidying.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view-tidying.js","sourceRoot":"","sources":["../src/view-tidying.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspector-door.d.ts","sourceRoot":"","sources":["../../src/workbench/inspector-door.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAwC,KAAK,UAAU,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"inspector-door.d.ts","sourceRoot":"","sources":["../../src/workbench/inspector-door.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAwC,KAAK,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAQhG;;;;;;;;;;;GAWG;AACH;;;;;;;;GAQG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,MAAM,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,MAAM,CAAC;AAY5B,qKAAqK;AACrK,wBAAgB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAE9C;AAuID,wBAAgB,SAAS,CAAC,EACxB,SAAmB,EACnB,QAAQ,EACR,KAAK,GACN,GAAE;IACD,QAAQ,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;IACxC,uJAAuJ;IACvJ,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;IAChD,wLAAwL;IACxL,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,UAAU,GAAG,IAAI,CAAC;CACrD,sCAiEL"}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { retryingImport } from "@graview/core/retry";
|
|
3
3
|
import { useMenuPrepare } from "@graview/react/drawing";
|
|
4
4
|
import { lazyModule, useGraview, useSelection } from "@graview/react/provider";
|
|
5
|
+
import { hoverChipsOn } from "@graview/tools/frame";
|
|
5
6
|
import { Suspense, useEffect, useRef, useState } from "react";
|
|
7
|
+
/* THE HOVER CHIPS, fetched only where the host asked for them (`hover-chips.tsx`). */
|
|
8
|
+
const chips = /* @__PURE__ */ lazyModule(/* @__PURE__ */ retryingImport(() => import("../hover-chips.js")));
|
|
9
|
+
const Chips = /* @__PURE__ */ chips.part((module) => _jsx(module.HoverChipDoor, {}), { quiet: true });
|
|
6
10
|
/**
|
|
7
11
|
* The key a card answers with its acts. A letter, and only on the card that
|
|
8
12
|
* has the keyboard — a character key bound to focus is not one a voice
|
|
@@ -58,18 +62,34 @@ function sceneAim(element) {
|
|
|
58
62
|
* kept (`prepareActs`), and every section's own `prepare` — the inline AI's
|
|
59
63
|
* chunk, the sheet "Notify me…" opens. Nothing is fetched until then, so a
|
|
60
64
|
* page's first load carries none of it; a pass-over readies nothing; and no
|
|
61
|
-
* model is
|
|
65
|
+
* model is asked from here — save the one hover chip, where the host asked
|
|
66
|
+
* for chips (`ai.hoverChips`) and the reader did not turn them off: the same
|
|
67
|
+
* dwell tells it where the pointer rests (`hover-chips.tsx`).
|
|
62
68
|
*/
|
|
63
69
|
function useMenuReady(aimAt) {
|
|
64
|
-
const { store, principal, providers } = useGraview();
|
|
70
|
+
const { store, principal, providers, ai } = useGraview();
|
|
65
71
|
const prepareSections = useMenuPrepare();
|
|
66
|
-
const
|
|
67
|
-
latest
|
|
72
|
+
const chipsOn = hoverChipsOn(ai);
|
|
73
|
+
const latest = useRef({ aimAt, store, principal, providers, prepareSections, chipsOn });
|
|
74
|
+
latest.current = { aimAt, store, principal, providers, prepareSections, chipsOn };
|
|
68
75
|
useEffect(() => {
|
|
69
76
|
if (typeof document === "undefined")
|
|
70
77
|
return;
|
|
71
78
|
let resting = null;
|
|
72
79
|
let readied = null;
|
|
80
|
+
/* Where a hover chip was told the pointer rests (`hover-chips.tsx`): only a pointer's dwell, never the keyboard or a finger. */
|
|
81
|
+
let chipped = null;
|
|
82
|
+
const chipOn = (element) => {
|
|
83
|
+
const now = latest.current;
|
|
84
|
+
const target = now.chipsOn ? now.aimAt(element) : null;
|
|
85
|
+
if (!target)
|
|
86
|
+
return;
|
|
87
|
+
chipped = element;
|
|
88
|
+
void chips.load().then((module) => {
|
|
89
|
+
if (chipped === element)
|
|
90
|
+
module.restOn(target, element);
|
|
91
|
+
}, () => undefined);
|
|
92
|
+
};
|
|
73
93
|
const cancel = () => {
|
|
74
94
|
if (resting)
|
|
75
95
|
clearTimeout(resting.timer);
|
|
@@ -103,13 +123,18 @@ function useMenuReady(aimAt) {
|
|
|
103
123
|
timer: setTimeout(() => {
|
|
104
124
|
resting = null;
|
|
105
125
|
ready(element);
|
|
126
|
+
chipOn(element);
|
|
106
127
|
}, MENU_DWELL_MS),
|
|
107
128
|
};
|
|
108
129
|
};
|
|
109
130
|
const out = (event) => {
|
|
131
|
+
const to = event.relatedTarget;
|
|
132
|
+
if (chipped !== null && !(to instanceof Node && chipped.contains(to))) {
|
|
133
|
+
chipped = null;
|
|
134
|
+
chips.current?.leaveRest();
|
|
135
|
+
}
|
|
110
136
|
if (resting === null)
|
|
111
137
|
return;
|
|
112
|
-
const to = event.relatedTarget;
|
|
113
138
|
if (to instanceof Node && resting.element.contains(to))
|
|
114
139
|
return;
|
|
115
140
|
cancel();
|
|
@@ -140,7 +165,7 @@ function useMenuReady(aimAt) {
|
|
|
140
165
|
}, []);
|
|
141
166
|
}
|
|
142
167
|
export function Inspector({ placement = "float", openActs, aimAt, } = {}) {
|
|
143
|
-
const { menuAt, setMenuAt, registerActsDoor } = useGraview();
|
|
168
|
+
const { menuAt, setMenuAt, registerActsDoor, ai } = useGraview();
|
|
144
169
|
const { selection } = useSelection();
|
|
145
170
|
useMenuReady(aimAt ?? sceneAim);
|
|
146
171
|
/*
|
|
@@ -193,8 +218,9 @@ export function Inspector({ placement = "float", openActs, aimAt, } = {}) {
|
|
|
193
218
|
if (wanted)
|
|
194
219
|
setDrawn(true);
|
|
195
220
|
}, [wanted]);
|
|
221
|
+
const chipDoor = hoverChipsOn(ai) ? (_jsx(Suspense, { fallback: null, children: _jsx(Chips, {}) })) : null;
|
|
196
222
|
if (!drawn && !wanted)
|
|
197
|
-
return
|
|
198
|
-
return (_jsx(Suspense, { fallback: null, children: _jsx(Pane, { placement: placement, chosen: openActs === undefined }) }));
|
|
223
|
+
return chipDoor;
|
|
224
|
+
return (_jsxs(_Fragment, { children: [_jsx(Suspense, { fallback: null, children: _jsx(Pane, { placement: placement, chosen: openActs === undefined }) }), chipDoor] }));
|
|
199
225
|
}
|
|
200
226
|
//# sourceMappingURL=inspector-door.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspector-door.js","sourceRoot":"","sources":["../../src/workbench/inspector-door.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAmB,MAAM,yBAAyB,CAAC;AAChG,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"inspector-door.js","sourceRoot":"","sources":["../../src/workbench/inspector-door.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@graview/primitives",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.39",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -25,11 +25,11 @@
|
|
|
25
25
|
"./montserrat-latin.woff2": "./fonts/montserrat-latin.woff2"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@graview/
|
|
29
|
-
"@graview/
|
|
30
|
-
"@graview/
|
|
31
|
-
"@graview/
|
|
32
|
-
"@graview/
|
|
28
|
+
"@graview/layout": "0.1.39",
|
|
29
|
+
"@graview/core": "0.1.39",
|
|
30
|
+
"@graview/react": "0.1.39",
|
|
31
|
+
"@graview/render": "0.1.39",
|
|
32
|
+
"@graview/tools": "0.1.39"
|
|
33
33
|
},
|
|
34
34
|
"peerDependencies": {
|
|
35
35
|
"react": ">=18"
|