@eyeon/map 2.0.1 → 2.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -1
- package/dist/assets/MapViewer.css +1 -1
- package/dist/assets/index.css +1 -1
- package/dist/chunks/MapViewer.js +1988 -358
- package/dist/chunks/MapViewer.js.map +1 -1
- package/dist/chunks/graph-tools.js +202 -109
- package/dist/chunks/graph-tools.js.map +1 -1
- package/dist/chunks/stacking.js +1426 -0
- package/dist/chunks/stacking.js.map +1 -0
- package/dist/core/filletPolygon.d.ts +10 -0
- package/dist/core/filletPolygon.d.ts.map +1 -0
- package/dist/core/geometry/index.d.ts +41 -4
- package/dist/core/geometry/index.d.ts.map +1 -1
- package/dist/core/hostChrome.d.ts +20 -0
- package/dist/core/hostChrome.d.ts.map +1 -0
- package/dist/core/import/index.d.ts +52 -3
- package/dist/core/import/index.d.ts.map +1 -1
- package/dist/core/import/svgStyle.d.ts +21 -0
- package/dist/core/import/svgStyle.d.ts.map +1 -0
- package/dist/core/import/svgTransform.d.ts +49 -0
- package/dist/core/import/svgTransform.d.ts.map +1 -0
- package/dist/core/index.d.ts +6 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +89 -279
- package/dist/core/index.js.map +1 -1
- package/dist/core/layerStyles.d.ts +44 -0
- package/dist/core/layerStyles.d.ts.map +1 -0
- package/dist/core/mediaUrl.d.ts +3 -0
- package/dist/core/mediaUrl.d.ts.map +1 -0
- package/dist/core/outdoorDecoration.d.ts +16 -0
- package/dist/core/outdoorDecoration.d.ts.map +1 -0
- package/dist/core/publish/index.d.ts +8 -2
- package/dist/core/publish/index.d.ts.map +1 -1
- package/dist/core/routing/graph-tools.d.ts +28 -2
- package/dist/core/routing/graph-tools.d.ts.map +1 -1
- package/dist/core/routing/pathfinding.d.ts.map +1 -1
- package/dist/core/stacking.d.ts +61 -0
- package/dist/core/stacking.d.ts.map +1 -0
- package/dist/core/types.d.ts +31 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/editor/MapEditor.d.ts +28 -16
- package/dist/editor/MapEditor.d.ts.map +1 -1
- package/dist/editor/canvas/EditorCanvas.d.ts +56 -6
- package/dist/editor/canvas/EditorCanvas.d.ts.map +1 -1
- package/dist/editor/canvas/OutdoorSvgUnderlay.d.ts +7 -0
- package/dist/editor/canvas/OutdoorSvgUnderlay.d.ts.map +1 -0
- package/dist/editor/canvas/coords.d.ts +51 -0
- package/dist/editor/canvas/coords.d.ts.map +1 -0
- package/dist/editor/canvas/editorFill.d.ts +10 -0
- package/dist/editor/canvas/editorFill.d.ts.map +1 -0
- package/dist/editor/canvas/editorHover.d.ts +14 -0
- package/dist/editor/canvas/editorHover.d.ts.map +1 -0
- package/dist/editor/canvas/underlayHint.d.ts +5 -0
- package/dist/editor/canvas/underlayHint.d.ts.map +1 -0
- package/dist/editor/connectorAssignments.d.ts +64 -0
- package/dist/editor/connectorAssignments.d.ts.map +1 -0
- package/dist/editor/draftOps.d.ts +22 -0
- package/dist/editor/draftOps.d.ts.map +1 -0
- package/dist/editor/editorSectionReturn.d.ts +12 -0
- package/dist/editor/editorSectionReturn.d.ts.map +1 -0
- package/dist/editor/floorsListReturn.d.ts +5 -0
- package/dist/editor/floorsListReturn.d.ts.map +1 -0
- package/dist/editor/geometryEdit.d.ts +54 -0
- package/dist/editor/geometryEdit.d.ts.map +1 -0
- package/dist/editor/hexColor.d.ts +4 -0
- package/dist/editor/hexColor.d.ts.map +1 -0
- package/dist/editor/history.d.ts +31 -0
- package/dist/editor/history.d.ts.map +1 -0
- package/dist/editor/index.css +1497 -143
- package/dist/editor/index.d.ts +9 -3
- package/dist/editor/index.d.ts.map +1 -1
- package/dist/editor/index.js +6377 -601
- package/dist/editor/index.js.map +1 -1
- package/dist/editor/labelText.d.ts +15 -0
- package/dist/editor/labelText.d.ts.map +1 -0
- package/dist/editor/labels.d.ts +5 -0
- package/dist/editor/labels.d.ts.map +1 -0
- package/dist/editor/panels/ConnectorAssign.d.ts +12 -0
- package/dist/editor/panels/ConnectorAssign.d.ts.map +1 -0
- package/dist/editor/panels/FloorsPanel.d.ts +64 -0
- package/dist/editor/panels/FloorsPanel.d.ts.map +1 -0
- package/dist/editor/panels/ImportReviewPanel.d.ts +22 -0
- package/dist/editor/panels/ImportReviewPanel.d.ts.map +1 -0
- package/dist/editor/panels/Inspector.d.ts +6 -3
- package/dist/editor/panels/Inspector.d.ts.map +1 -1
- package/dist/editor/panels/LeftRail.d.ts +26 -11
- package/dist/editor/panels/LeftRail.d.ts.map +1 -1
- package/dist/editor/panels/PreviewOverlay.d.ts +11 -2
- package/dist/editor/panels/PreviewOverlay.d.ts.map +1 -1
- package/dist/editor/pathRings.d.ts +79 -0
- package/dist/editor/pathRings.d.ts.map +1 -0
- package/dist/editor/portalSurface.d.ts +37 -0
- package/dist/editor/portalSurface.d.ts.map +1 -0
- package/dist/editor/previewDocument.d.ts +9 -0
- package/dist/editor/previewDocument.d.ts.map +1 -0
- package/dist/editor/railAssignments.d.ts +22 -0
- package/dist/editor/railAssignments.d.ts.map +1 -0
- package/dist/editor/routeStubs.d.ts +103 -0
- package/dist/editor/routeStubs.d.ts.map +1 -0
- package/dist/editor/snapPoint.d.ts +5 -0
- package/dist/editor/snapPoint.d.ts.map +1 -0
- package/dist/editor/splitJoin.d.ts +78 -0
- package/dist/editor/splitJoin.d.ts.map +1 -0
- package/dist/editor/tools.d.ts +49 -0
- package/dist/editor/tools.d.ts.map +1 -0
- package/dist/test-maps/shops-at-south-town/BASE - Shops At South Town.ai +26703 -28
- package/dist/test-maps/shops-at-south-town/LF - Shops At South Town.ai +4459 -0
- package/dist/test-maps/shops-at-south-town/SVG/BASE - Shops At South Town.svg +567 -0
- package/dist/test-maps/shops-at-south-town/SVG/LF - Shops At South Town.svg +238 -0
- package/dist/test-maps/shops-at-south-town/SVG/UF - Shops At South Town.svg +276 -0
- package/dist/test-maps/shops-at-south-town/UF - Shops At South Town.ai +4131 -1
- package/dist/ui/ModernSelect.d.ts +14 -0
- package/dist/ui/ModernSelect.d.ts.map +1 -0
- package/dist/ui/selectSearch.d.ts +9 -0
- package/dist/ui/selectSearch.d.ts.map +1 -0
- package/dist/viewer/MapViewer.d.ts +14 -3
- package/dist/viewer/MapViewer.d.ts.map +1 -1
- package/dist/viewer/camera.d.ts +37 -0
- package/dist/viewer/camera.d.ts.map +1 -0
- package/dist/viewer/components/CameraRig.d.ts +18 -0
- package/dist/viewer/components/CameraRig.d.ts.map +1 -0
- package/dist/viewer/components/LevelMeshes.d.ts +6 -1
- package/dist/viewer/components/LevelMeshes.d.ts.map +1 -1
- package/dist/viewer/components/MapScene.d.ts +6 -1
- package/dist/viewer/components/MapScene.d.ts.map +1 -1
- package/dist/viewer/components/SvgVectorLayer.d.ts +18 -0
- package/dist/viewer/components/SvgVectorLayer.d.ts.map +1 -0
- package/dist/viewer/index.css +236 -37
- package/dist/viewer/index.d.ts +4 -0
- package/dist/viewer/index.d.ts.map +1 -1
- package/dist/viewer/index.js +9 -4
- package/dist/viewer/index.js.map +1 -1
- package/dist/viewer/ui/MapControls.d.ts +22 -0
- package/dist/viewer/ui/MapControls.d.ts.map +1 -0
- package/dist/viewer/ui/RuntimeChrome.d.ts +3 -3
- package/dist/viewer/ui/RuntimeChrome.d.ts.map +1 -1
- package/package.json +7 -3
- package/dist/chunks/pathfinding.js +0 -343
- package/dist/chunks/pathfinding.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AutoConnectResult, CmAnchor, CmRouteEdge, SkeletonSuggestion, Vec2, WeldResult } from '../types';
|
|
1
|
+
import { AnchorKind, AutoConnectResult, CmAnchor, CmRouteEdge, ShapeGeometry, ShapeKind, SkeletonSuggestion, Vec2, WeldResult } from '../types';
|
|
2
2
|
export interface AnchorLike {
|
|
3
3
|
id: number;
|
|
4
4
|
x: number;
|
|
@@ -21,6 +21,15 @@ export declare function weldAnchors(anchors: AnchorLike[], edges: EdgeLike[], ca
|
|
|
21
21
|
* Find all pairs of anchors within tolerance that should be welded.
|
|
22
22
|
*/
|
|
23
23
|
export declare function findWeldCandidates(anchors: AnchorLike[], tolerance?: number): number[][];
|
|
24
|
+
/**
|
|
25
|
+
* Merge coincident anchors and drop overlapping undirected edges.
|
|
26
|
+
* Two SVG imports of the same ROUTES layer stack a second copy on top of
|
|
27
|
+
* the first — dragging one junction then leaves the twin behind.
|
|
28
|
+
*/
|
|
29
|
+
export declare function collapseDuplicateRouteGraph<A extends AnchorLike, E extends EdgeLike>(anchors: A[], edges: E[], tolerance?: number): {
|
|
30
|
+
anchors: A[];
|
|
31
|
+
edges: E[];
|
|
32
|
+
};
|
|
24
33
|
/**
|
|
25
34
|
* Auto-connect a unit anchor to the nearest walkable segment via perpendicular projection.
|
|
26
35
|
*/
|
|
@@ -38,10 +47,27 @@ export declare function buildAutoSkeleton(walkablePolygons: Vec2[][], voidPolygo
|
|
|
38
47
|
/**
|
|
39
48
|
* Convert route-path SVG line endpoints into welded anchors + edges.
|
|
40
49
|
* This is the key converter step that repairs coincident-but-disconnected joins.
|
|
50
|
+
*
|
|
51
|
+
* Anchors land in raw SVG user space (Y down), the same space as shape
|
|
52
|
+
* geometry. There is intentionally no viewbox-height flip here — mirroring
|
|
53
|
+
* routes without mirroring shapes would silently desynchronise the two.
|
|
41
54
|
*/
|
|
42
|
-
export declare function importRoutePaths(pathDs: string[], levelId: number, mapId: number, startId: number, weldTolerance?: number
|
|
55
|
+
export declare function importRoutePaths(pathDs: string[], levelId: number, mapId: number, startId: number, weldTolerance?: number): {
|
|
43
56
|
anchors: CmAnchor[];
|
|
44
57
|
edges: CmRouteEdge[];
|
|
45
58
|
nextId: number;
|
|
46
59
|
};
|
|
60
|
+
export declare function routeAnchorKindForShape(kind: ShapeKind): AnchorKind;
|
|
61
|
+
export interface AttachableImportShape {
|
|
62
|
+
id: number;
|
|
63
|
+
kind: ShapeKind;
|
|
64
|
+
geometry: Pick<ShapeGeometry, 'polygons'>;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Same rule as v1 `assign_route_nodes_to_stores`: a route vertex that sits
|
|
68
|
+
* inside (or on) an interactive shape is that store / amenity / entrance's
|
|
69
|
+
* destination. Prefer a dedicated spur leaf; otherwise take the closest
|
|
70
|
+
* vertex. Corridor through-points keep `walk` edges so the path stays joined.
|
|
71
|
+
*/
|
|
72
|
+
export declare function attachImportedRouteAnchors(anchors: CmAnchor[], edges: CmRouteEdge[], shapes: AttachableImportShape[], insideTolerance?: number): number;
|
|
47
73
|
//# sourceMappingURL=graph-tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-tools.d.ts","sourceRoot":"","sources":["../../../src/core/routing/graph-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,QAAQ,EACR,WAAW,EACX,kBAAkB,EAClB,IAAI,EACJ,UAAU,EACX,MAAM,UAAU,CAAC;AASlB,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,UAAU,EAAE,EACrB,KAAK,EAAE,QAAQ,EAAE,EACjB,YAAY,EAAE,MAAM,EAAE,EACtB,SAAS,SAAyB,GACjC,UAAU,GAAG,IAAI,CA2CnB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,UAAU,EAAE,EACrB,SAAS,SAAyB,GACjC,MAAM,EAAE,EAAE,CAuBZ;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,UAAU,EACtB,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAC3B,iBAAiB,EAAE,UAAU,EAAE,EAC/B,aAAa,SAAyB,GACrC,iBAAiB,GAAG,IAAI,CA6B1B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,IAAI,EAAE,EAAE,EAClB,MAAM,EAAE,MAAM,GACb,QAAQ,GAAG,IAAI,CAyBjB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,gBAAgB,EAAE,IAAI,EAAE,EAAE,EAC1B,YAAY,EAAE,IAAI,EAAE,EAAE,EACtB,QAAQ,SAAK,GACZ,kBAAkB,CA4DpB;AAED
|
|
1
|
+
{"version":3,"file":"graph-tools.d.ts","sourceRoot":"","sources":["../../../src/core/routing/graph-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,QAAQ,EACR,WAAW,EACX,aAAa,EACb,SAAS,EACT,kBAAkB,EAClB,IAAI,EACJ,UAAU,EACX,MAAM,UAAU,CAAC;AASlB,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,UAAU,EAAE,EACrB,KAAK,EAAE,QAAQ,EAAE,EACjB,YAAY,EAAE,MAAM,EAAE,EACtB,SAAS,SAAyB,GACjC,UAAU,GAAG,IAAI,CA2CnB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,UAAU,EAAE,EACrB,SAAS,SAAyB,GACjC,MAAM,EAAE,EAAE,CAuBZ;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,CAAC,SAAS,UAAU,EACpB,CAAC,SAAS,QAAQ,EAElB,OAAO,EAAE,CAAC,EAAE,EACZ,KAAK,EAAE,CAAC,EAAE,EACV,SAAS,SAAyB,GACjC;IAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IAAC,KAAK,EAAE,CAAC,EAAE,CAAA;CAAE,CAuB9B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,UAAU,EACtB,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAC3B,iBAAiB,EAAE,UAAU,EAAE,EAC/B,aAAa,SAAyB,GACrC,iBAAiB,GAAG,IAAI,CA6B1B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,IAAI,EAAE,EAAE,EAClB,MAAM,EAAE,MAAM,GACb,QAAQ,GAAG,IAAI,CAyBjB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,gBAAgB,EAAE,IAAI,EAAE,EAAE,EAC1B,YAAY,EAAE,IAAI,EAAE,EAAE,EACtB,QAAQ,SAAK,GACZ,kBAAkB,CA4DpB;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EAAE,EAChB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,aAAa,SAAyB,GACrC;IAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAAC,KAAK,EAAE,WAAW,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAqD/D;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,SAAS,GAAG,UAAU,CAInE;AAiCD,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;CAC3C;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,QAAQ,EAAE,EACnB,KAAK,EAAE,WAAW,EAAE,EACpB,MAAM,EAAE,qBAAqB,EAAE,EAC/B,eAAe,SAA6B,GAC3C,MAAM,CAwDR"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pathfinding.d.ts","sourceRoot":"","sources":["../../../src/core/routing/pathfinding.ts"],"names":[],"mappings":"AAAA,OAAoB,EAAE,KAAK,KAAK,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,KAAK,EACV,QAAQ,EACR,WAAW,EACX,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAIlB,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACnC;AAED,wBAAgB,YAAY,CAC1B,OAAO,EAAE,QAAQ,EAAE,EACnB,KAAK,EAAE,WAAW,EAAE,EACpB,UAAU,GAAE,WAAW,EAAO,GAC7B,aAAa,CA2Df;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,QAAQ,EAAE,aAAa,EACvB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,eAAoB,GAC5B,UAAU,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"pathfinding.d.ts","sourceRoot":"","sources":["../../../src/core/routing/pathfinding.ts"],"names":[],"mappings":"AAAA,OAAoB,EAAE,KAAK,KAAK,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,KAAK,EACV,QAAQ,EACR,WAAW,EACX,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAIlB,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,KAAK,EAAE,kBAAkB,EAAE,CAAC;IAC5B,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACnC;AAED,wBAAgB,YAAY,CAC1B,OAAO,EAAE,QAAQ,EAAE,EACnB,KAAK,EAAE,WAAW,EAAE,EACpB,UAAU,GAAE,WAAW,EAAO,GAC7B,aAAa,CA2Df;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,QAAQ,EAAE,aAAa,EACvB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,eAAoB,GAC5B,UAAU,GAAG,IAAI,CAqDnB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,aAAa,EACvB,YAAY,EAAE,MAAM,EACpB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,OAAO,GAAE,eAAoB,GAC5B,UAAU,GAAG,IAAI,CAUnB"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { LevelKind, PublishedLevel, ViewBox } from './types';
|
|
2
|
+
export interface StackLevel {
|
|
3
|
+
id: number;
|
|
4
|
+
kind: LevelKind;
|
|
5
|
+
ordering: number;
|
|
6
|
+
levelIndex: number;
|
|
7
|
+
}
|
|
8
|
+
/** Same comparator as admin FloorsPanel `buildingFloors`. */
|
|
9
|
+
export declare function compareBuildingFloors(a: {
|
|
10
|
+
ordering: number;
|
|
11
|
+
levelIndex: number;
|
|
12
|
+
}, b: {
|
|
13
|
+
ordering: number;
|
|
14
|
+
levelIndex: number;
|
|
15
|
+
}): number;
|
|
16
|
+
export interface SceneBounds {
|
|
17
|
+
minX: number;
|
|
18
|
+
minY: number;
|
|
19
|
+
maxX: number;
|
|
20
|
+
maxY: number;
|
|
21
|
+
cx: number;
|
|
22
|
+
cy: number;
|
|
23
|
+
size: number;
|
|
24
|
+
}
|
|
25
|
+
export declare function isOutdoorLevel(level: {
|
|
26
|
+
kind: string;
|
|
27
|
+
}): boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Persistent base + optional building-floor overlay.
|
|
30
|
+
* Outdoor/base is never dropped when a floor is selected.
|
|
31
|
+
* Selecting Outdoor hides building floors (base stays).
|
|
32
|
+
*/
|
|
33
|
+
export declare function viewerLevelStack<T extends {
|
|
34
|
+
id: number;
|
|
35
|
+
kind: string;
|
|
36
|
+
}>(levels: T[], activeLevelId: number | null): T[];
|
|
37
|
+
/** Building floors only, same order as the admin Floors list. */
|
|
38
|
+
export declare function floorSwitcherLevels<T extends StackLevel>(levels: T[]): T[];
|
|
39
|
+
/**
|
|
40
|
+
* Switcher buttons top-to-bottom — same order as the admin Floors list.
|
|
41
|
+
* Do not reverse: staff order the list (upper level at the top) and the map
|
|
42
|
+
* must match that.
|
|
43
|
+
*/
|
|
44
|
+
export declare function floorSwitcherDisplayLevels<T extends StackLevel>(levels: T[]): T[];
|
|
45
|
+
/** Hide the map floor list when there is only one building floor. */
|
|
46
|
+
export declare function shouldShowFloorSwitcher<T extends StackLevel>(levels: T[]): boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Prefer the last building floor in admin Floors order (bottom of the list).
|
|
49
|
+
* The list stays upper-to-ground top-to-bottom; visitors should land on ground.
|
|
50
|
+
*/
|
|
51
|
+
export declare function defaultViewerLevelId(levels: Array<{
|
|
52
|
+
id: number;
|
|
53
|
+
kind: string;
|
|
54
|
+
ordering: number;
|
|
55
|
+
levelIndex: number;
|
|
56
|
+
}>): number | null;
|
|
57
|
+
export declare function viewBoxToBounds(viewbox: ViewBox): SceneBounds;
|
|
58
|
+
export declare function expandBounds(target: SceneBounds, next: SceneBounds): SceneBounds;
|
|
59
|
+
export declare function boundsFromStackedLevels(levels: PublishedLevel[], activeLevelId: number | null, baseViewbox?: ViewBox | null): SceneBounds;
|
|
60
|
+
export declare function unionViewBox(primary: ViewBox | null | undefined, secondary: ViewBox | null | undefined): ViewBox;
|
|
61
|
+
//# sourceMappingURL=stacking.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stacking.d.ts","sourceRoot":"","sources":["../../src/core/stacking.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElE,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,6DAA6D;AAC7D,wBAAgB,qBAAqB,CACnC,CAAC,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EAC3C,CAAC,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC1C,MAAM,CAER;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAE/D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EACrE,MAAM,EAAE,CAAC,EAAE,EACX,aAAa,EAAE,MAAM,GAAG,IAAI,GAC3B,CAAC,EAAE,CAeL;AAED,iEAAiE;AACjE,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAK1E;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAEjF;AAED,qEAAqE;AACrE,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,OAAO,CAElF;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,GAChF,MAAM,GAAG,IAAI,CAEf;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,WAAW,CAU7D;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,GAAG,WAAW,CAchF;AAED,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,cAAc,EAAE,EACxB,aAAa,EAAE,MAAM,GAAG,IAAI,EAC5B,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI,GAC3B,WAAW,CA2Bb;AAED,wBAAgB,YAAY,CAC1B,OAAO,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,EACnC,SAAS,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GACpC,OAAO,CAST"}
|
package/dist/core/types.d.ts
CHANGED
|
@@ -3,6 +3,23 @@
|
|
|
3
3
|
* Pure TypeScript; no React / Three.js.
|
|
4
4
|
*/
|
|
5
5
|
export type MapVersion = 1 | 2;
|
|
6
|
+
/**
|
|
7
|
+
* Surface the map is embedded in.
|
|
8
|
+
*
|
|
9
|
+
* - `PORTAL` — admin Center Map editor (`MapEditor`). Left rail is Map options
|
|
10
|
+
* (Floors, Kiosks, Settings) plus Edit Map — never viewer chrome. Default
|
|
11
|
+
* center is MapViewer (click-to-assign, no editor grid). Edit Map swaps
|
|
12
|
+
* in the geometry canvas and grid.
|
|
13
|
+
* - `PORTAL_ASSIGN` — admin editor default center (`MapViewer` for click-to-
|
|
14
|
+
* assign). Floors + zoom only — no search / amenities.
|
|
15
|
+
* - `WEBSITE` — public website (`MapViewer`).
|
|
16
|
+
* - `DISPLAY_APP` — kiosk (`MapViewer`).
|
|
17
|
+
*/
|
|
18
|
+
export type MapHost = 'PORTAL' | 'PORTAL_ASSIGN' | 'WEBSITE' | 'DISPLAY_APP';
|
|
19
|
+
/** Staff editor host. `PORTAL` always shows Map options inside the library. */
|
|
20
|
+
export type MapEditorHost = Extract<MapHost, 'PORTAL' | 'WEBSITE'>;
|
|
21
|
+
/** Public / assign viewer. Never includes Map options. */
|
|
22
|
+
export type MapViewerHost = Extract<MapHost, 'WEBSITE' | 'DISPLAY_APP' | 'PORTAL_ASSIGN'>;
|
|
6
23
|
export type LevelKind = 'outdoor' | 'floor';
|
|
7
24
|
export type ShapeKind = 'unit' | 'amenity' | 'kiosk_screen' | 'connector' | 'entrance' | 'walkable' | 'void' | 'wall' | 'boundary' | 'floorplate' | 'decor' | 'label' | 'zone' | 'parking_zone' | 'green_area' | 'water' | 'parking_icon';
|
|
8
25
|
export type AnchorKind = 'unit' | 'junction' | 'connector' | 'entrance';
|
|
@@ -77,6 +94,8 @@ export interface ThemeDefaults {
|
|
|
77
94
|
STORE_DEFAULT_COLOR: string;
|
|
78
95
|
STORE_TEXT_COLOR: string;
|
|
79
96
|
STORE_HEIGHT: number;
|
|
97
|
+
/** Viewer-only corner radius for store (`unit`) polygons. Edit Map stays sharp. */
|
|
98
|
+
STORE_RADIUS: number;
|
|
80
99
|
WALL_COLOR: string;
|
|
81
100
|
WALL_THICKNESS: number;
|
|
82
101
|
BOUNDARY_COLOR: string;
|
|
@@ -94,6 +113,9 @@ export interface ThemeDefaults {
|
|
|
94
113
|
CAMERA_MIN_DISTANCE: number;
|
|
95
114
|
}
|
|
96
115
|
export declare const DEFAULT_THEME: ThemeDefaults;
|
|
116
|
+
/** Non-negative store corner radius in SVG units. Invalid values become 0. */
|
|
117
|
+
export declare function clampStoreRadius(value: unknown): number;
|
|
118
|
+
export declare function mergeTheme(...partials: Array<Partial<ThemeDefaults> | null | undefined>): ThemeDefaults;
|
|
97
119
|
export interface CmMap {
|
|
98
120
|
id: number;
|
|
99
121
|
centerId: number;
|
|
@@ -101,6 +123,7 @@ export interface CmMap {
|
|
|
101
123
|
baseViewbox: ViewBox | null;
|
|
102
124
|
unitsPerMeter: number;
|
|
103
125
|
theme: Partial<ThemeDefaults>;
|
|
126
|
+
/** Current production document row in cm_revisions (overwritten in place). */
|
|
104
127
|
publishedRevisionId: number | null;
|
|
105
128
|
draftUpdatedAt: string | null;
|
|
106
129
|
createdAt: string;
|
|
@@ -120,6 +143,8 @@ export interface CmLevel {
|
|
|
120
143
|
levelIndex: number;
|
|
121
144
|
ordering: number;
|
|
122
145
|
sourceSvgKey: string | null;
|
|
146
|
+
/** Resolved CDN URL for editor preview (not persisted). */
|
|
147
|
+
sourceSvgUrl?: string | null;
|
|
123
148
|
sourceViewbox: ViewBox | null;
|
|
124
149
|
transform: LevelTransform;
|
|
125
150
|
isActive: boolean;
|
|
@@ -136,6 +161,10 @@ export interface CmShape {
|
|
|
136
161
|
label: ShapeLabel;
|
|
137
162
|
sourceSvgId: string | null;
|
|
138
163
|
origin: ShapeOrigin;
|
|
164
|
+
/** When true, outdoor re-import never overwrites geometry/bbox. */
|
|
165
|
+
geometryLocked?: boolean;
|
|
166
|
+
/** Set when sourceSvgId disappeared from a re-upload; filtered from public docs. */
|
|
167
|
+
orphanedAt?: string | null;
|
|
139
168
|
}
|
|
140
169
|
export interface CmShapeAssignment {
|
|
141
170
|
shapeId: number;
|
|
@@ -273,6 +302,8 @@ export interface ImportDiffItem {
|
|
|
273
302
|
assignment?: boolean;
|
|
274
303
|
anchors?: boolean;
|
|
275
304
|
};
|
|
305
|
+
/** True when portal Edit Map owns this shape's geometry. */
|
|
306
|
+
geometryLocked?: boolean;
|
|
276
307
|
}
|
|
277
308
|
export interface ImportDiff {
|
|
278
309
|
items: ImportDiffItem[];
|
package/dist/core/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { default as React } from 'react';
|
|
2
|
-
import { BatchOp,
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
levels: CmLevel[];
|
|
9
|
-
shapes: CmShape[];
|
|
10
|
-
assignments: CmShapeAssignment[];
|
|
11
|
-
anchors: CmAnchor[];
|
|
12
|
-
edges: CmRouteEdge[];
|
|
13
|
-
amenities: CmAmenityCatalogItem[];
|
|
14
|
-
baseSvgUrl?: string | null;
|
|
15
|
-
}
|
|
1
|
+
import { default as React, ReactNode } from 'react';
|
|
2
|
+
import { BatchOp, MapEditorHost, PublishedDocument } from '../core';
|
|
3
|
+
import { EditorDraftState } from './draftOps';
|
|
4
|
+
import { CreateLevelInput, UpdateLevelInput } from './panels/FloorsPanel';
|
|
5
|
+
export type { EditorDraftState } from './draftOps';
|
|
6
|
+
export type { MapEditorHost } from '../core';
|
|
7
|
+
export type { EditorTool } from './tools';
|
|
16
8
|
export interface MapEditorProps {
|
|
9
|
+
/**
|
|
10
|
+
* Where the editor is embedded. `PORTAL` (default) always includes Map
|
|
11
|
+
* options (LeftRail: Floors, Kiosks, Settings, plus Edit Map — never viewer
|
|
12
|
+
* chrome). Default center is MapViewer (click-to-assign, no grid). Edit
|
|
13
|
+
* Map swaps in the geometry canvas and editor grid. `WEBSITE` is canvas +
|
|
14
|
+
* toolbar only — public sites should use `MapViewer`, not this editor.
|
|
15
|
+
*/
|
|
16
|
+
host?: MapEditorHost;
|
|
17
17
|
draft: EditorDraftState;
|
|
18
18
|
webApiURI: string;
|
|
19
19
|
canEdit?: boolean;
|
|
@@ -22,10 +22,22 @@ export interface MapEditorProps {
|
|
|
22
22
|
onBatch?: (ops: BatchOp[]) => Promise<void>;
|
|
23
23
|
onPublish?: () => Promise<void>;
|
|
24
24
|
onImportSvg?: (levelId: number, file: File) => Promise<void>;
|
|
25
|
+
onCreateLevel?: (input: CreateLevelInput) => Promise<number | void>;
|
|
26
|
+
onUpdateLevel?: (input: UpdateLevelInput) => Promise<void>;
|
|
27
|
+
onDeleteLevel?: (levelId: number) => Promise<void>;
|
|
28
|
+
onReorderLevels?: (orderedIds: number[]) => Promise<void>;
|
|
25
29
|
onAutoroute?: (levelId: number) => Promise<void>;
|
|
26
30
|
previewDocument?: PublishedDocument | null;
|
|
31
|
+
/**
|
|
32
|
+
* Media proxy base, same contract as v1 `IMAGE_PROXY_URL` (base + encoded
|
|
33
|
+
* URL). Required whenever the outdoor SVG is served from a origin that does
|
|
34
|
+
* not send CORS headers, otherwise its decoration silently fails to load.
|
|
35
|
+
*/
|
|
36
|
+
imageProxyUrl?: string | null;
|
|
27
37
|
className?: string;
|
|
38
|
+
/** Quiet extra actions under the left rail (e.g. developer Classic Map). */
|
|
39
|
+
sidebarFooter?: ReactNode;
|
|
28
40
|
}
|
|
29
|
-
export declare function MapEditor({ draft, canEdit, canFloors, canSettings, onBatch, onPublish, onImportSvg, onAutoroute, previewDocument, className, }: MapEditorProps): React.JSX.Element;
|
|
41
|
+
export declare function MapEditor({ host, draft, canEdit, canFloors, canSettings, onBatch, onPublish, onImportSvg, onCreateLevel, onUpdateLevel, onDeleteLevel, onReorderLevels, onAutoroute, previewDocument, imageProxyUrl, className, sidebarFooter, }: MapEditorProps): React.JSX.Element;
|
|
30
42
|
export default MapEditor;
|
|
31
43
|
//# sourceMappingURL=MapEditor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MapEditor.d.ts","sourceRoot":"","sources":["../../src/editor/MapEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"MapEditor.d.ts","sourceRoot":"","sources":["../../src/editor/MapEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAMZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,iBAAiB,EAElB,MAAM,SAAS,CAAC;AAiBjB,OAAO,EAAkC,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AA2C/E,OAAO,cAAc,CAAC;AAEtB,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,cAAc;IAC7B;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACpE,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,eAAe,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,eAAe,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC3C;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,SAAS,CAAC;CAC3B;AAED,wBAAgB,SAAS,CAAC,EACxB,IAAe,EACf,KAAK,EACL,OAAc,EACd,SAAgB,EAChB,WAAkB,EAClB,OAAO,EACP,SAAS,EACT,WAAW,EACX,aAAa,EACb,aAAa,EACb,aAAa,EACb,eAAe,EACf,WAAW,EACX,eAAe,EACf,aAAa,EACb,SAAS,EACT,aAAa,GACd,EAAE,cAAc,qBA+1BhB;AAED,eAAe,SAAS,CAAC"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
import { CmAnchor, CmLevel, CmRouteEdge, CmShape, CmShapeAssignment, ShapeGeometry, ShapeKind, ThemeDefaults, Vec2 } from '../../core';
|
|
2
|
+
import { CmAnchor, CmLevel, CmRouteEdge, CmShape, CmShapeAssignment, ShapeGeometry, ShapeKind, ShapeLabel, ThemeDefaults, Vec2, ViewBox } from '../../core';
|
|
3
|
+
import { EditorTool } from '../tools';
|
|
4
|
+
import { ShapeBatchEdit } from '../splitJoin';
|
|
3
5
|
export interface EditorCanvasProps {
|
|
4
6
|
level: CmLevel | null;
|
|
5
7
|
shapes: CmShape[];
|
|
@@ -7,16 +9,64 @@ export interface EditorCanvasProps {
|
|
|
7
9
|
edges: CmRouteEdge[];
|
|
8
10
|
assignments: CmShapeAssignment[];
|
|
9
11
|
theme: ThemeDefaults;
|
|
10
|
-
tool:
|
|
11
|
-
baseAngle: number;
|
|
12
|
+
tool: EditorTool;
|
|
12
13
|
selectedShapeId: number | null;
|
|
13
14
|
selectedAnchorIds: number[];
|
|
15
|
+
/** Outdoor SVG underlay (designer-owned). */
|
|
14
16
|
baseSvgUrl: string | null;
|
|
17
|
+
baseViewbox?: ViewBox | null;
|
|
18
|
+
/**
|
|
19
|
+
* Live outdoor SVG. Drawn on every Edit Map floor (and Outdoor) so
|
|
20
|
+
* green areas, parking lanes, and icons match the assign view.
|
|
21
|
+
*/
|
|
22
|
+
outdoorSvgUrl?: string | null;
|
|
23
|
+
/** Same proxy as MapViewer — required when the SVG is cross-origin. */
|
|
24
|
+
imageProxyUrl?: string | null;
|
|
25
|
+
/** @deprecated Use outdoorSvgUrl. Kept so existing hosts keep compiling. */
|
|
26
|
+
levelSvgUrl?: string | null;
|
|
27
|
+
/** Outdoor/base shapes drawn behind the active building floor (non-interactive). */
|
|
28
|
+
underlayShapes?: CmShape[];
|
|
29
|
+
/** When true (outdoor), only interactive shapes are editable. */
|
|
30
|
+
interactiveOnly?: boolean;
|
|
31
|
+
/** Graph-paper grid. PORTAL only mounts this canvas after Edit Map. */
|
|
32
|
+
showGrid?: boolean;
|
|
33
|
+
/** Wayfinding section: Select also shows and edits the route graph. */
|
|
34
|
+
routeMode?: boolean;
|
|
35
|
+
/** Pan and zoom only — used for Outdoor in Wayfinding. */
|
|
36
|
+
readOnly?: boolean;
|
|
15
37
|
onSelectShape: (id: number | null) => void;
|
|
16
38
|
onSelectAnchors: (ids: number[]) => void;
|
|
17
|
-
onCreateRoutePoint: (point: Vec2, prevAnchorId: number | null) => void;
|
|
39
|
+
onCreateRoutePoint: (point: Vec2, prevAnchorId: number | null) => number | null | void;
|
|
40
|
+
/** First committed Create Route segment (two points + one edge). */
|
|
41
|
+
onCreateRouteSegment: (start: Vec2, end: Vec2) => number | null | void;
|
|
42
|
+
/** Connect two existing junctions with a walk edge. */
|
|
43
|
+
onLinkRouteAnchors?: (fromAnchorId: number, toAnchorId: number) => void;
|
|
44
|
+
onInsertRouteJunction: (edgeId: number, point: Vec2) => number | null | void;
|
|
45
|
+
/** Esc on a route draft uses the same path as the Undo control. */
|
|
46
|
+
onUndo?: () => void;
|
|
47
|
+
onRouteDraftActiveChange?: (active: boolean) => void;
|
|
48
|
+
/** Esc on Multi Route (or Create Route) used to return to Select. */
|
|
49
|
+
onToolChange?: (tool: EditorTool) => void;
|
|
50
|
+
onDeleteRouteAnchor: (anchorId: number) => void;
|
|
51
|
+
onConnectShapeToRoute: (shapeId: number, from: Vec2, drop: Vec2, maxDist: number) => void;
|
|
52
|
+
/** Click inside a store to place its orange destination at that point. */
|
|
53
|
+
onEnsureShapeAnchor: (shapeId: number, point: Vec2) => number | null | void;
|
|
18
54
|
onMoveAnchor: (anchorId: number, x: number, y: number) => void;
|
|
19
|
-
onCreateShape: (kind: ShapeKind, geometry: ShapeGeometry
|
|
55
|
+
onCreateShape: (kind: ShapeKind, geometry: ShapeGeometry, extras?: {
|
|
56
|
+
label?: ShapeLabel;
|
|
57
|
+
}) => void;
|
|
58
|
+
onUpdateShapeGeometry: (shapeId: number, geometry: ShapeGeometry, opts?: {
|
|
59
|
+
live?: boolean;
|
|
60
|
+
}) => void;
|
|
61
|
+
onBatchShapeEdits?: (edits: ShapeBatchEdit[]) => void;
|
|
62
|
+
/** End a live drag so the next edit starts a new undo step. */
|
|
63
|
+
onHistoryGestureEnd?: () => void;
|
|
20
64
|
}
|
|
21
|
-
export
|
|
65
|
+
export interface EditorCanvasHandle {
|
|
66
|
+
consumeRouteUndo: () => 'clear-only' | 'clear-and-undo';
|
|
67
|
+
zoomIn: () => void;
|
|
68
|
+
zoomOut: () => void;
|
|
69
|
+
resetView: () => void;
|
|
70
|
+
}
|
|
71
|
+
export declare const EditorCanvas: React.ForwardRefExoticComponent<EditorCanvasProps & React.RefAttributes<EditorCanvasHandle>>;
|
|
22
72
|
//# sourceMappingURL=EditorCanvas.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditorCanvas.d.ts","sourceRoot":"","sources":["../../../src/editor/canvas/EditorCanvas.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"EditorCanvas.d.ts","sourceRoot":"","sources":["../../../src/editor/canvas/EditorCanvas.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export declare function OutdoorSvgUnderlay({ url, imageProxyUrl, suppressIds, }: {
|
|
3
|
+
url: string;
|
|
4
|
+
imageProxyUrl?: string | null;
|
|
5
|
+
suppressIds?: ReadonlySet<string>;
|
|
6
|
+
}): React.JSX.Element | null;
|
|
7
|
+
//# sourceMappingURL=OutdoorSvgUnderlay.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OutdoorSvgUnderlay.d.ts","sourceRoot":"","sources":["../../../src/editor/canvas/OutdoorSvgUnderlay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAO5D,wBAAgB,kBAAkB,CAAC,EACjC,GAAG,EACH,aAAa,EACb,WAAW,GACZ,EAAE;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACnC,4BAoDA"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { Vec2 } from '../../core';
|
|
2
|
+
/** 2D affine matrix in DOMMatrix / SVGMatrix layout (a c e / b d f). */
|
|
3
|
+
export interface Affine2 {
|
|
4
|
+
a: number;
|
|
5
|
+
b: number;
|
|
6
|
+
c: number;
|
|
7
|
+
d: number;
|
|
8
|
+
e: number;
|
|
9
|
+
f: number;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Map a client (CSS pixel) point through the inverse of an SVG screen CTM.
|
|
13
|
+
* That converts pointer coordinates into SVG user / viewBox space so pan
|
|
14
|
+
* deltas match what is drawn, even when the viewBox is larger than the
|
|
15
|
+
* canvas CSS box (or letterboxed by preserveAspectRatio).
|
|
16
|
+
*/
|
|
17
|
+
export declare function clientToUser(ctm: Affine2, clientX: number, clientY: number): Vec2;
|
|
18
|
+
export declare function clientToSvgUser(svg: SVGSVGElement, clientX: number, clientY: number): Vec2;
|
|
19
|
+
/** Invert `translate(pan) scale(zoom)` so a user-space point becomes world geometry. */
|
|
20
|
+
export declare function userToWorld(user: Vec2, pan: Vec2, zoom: number): Vec2;
|
|
21
|
+
export declare const EDITOR_MIN_ZOOM = 0.2;
|
|
22
|
+
/** High enough that designers can park on a single storefront or route node. */
|
|
23
|
+
export declare const EDITOR_MAX_ZOOM = 128;
|
|
24
|
+
export declare function clampEditorZoom(zoom: number): number;
|
|
25
|
+
/** CSS pixels per SVG user unit from a screen CTM (ignores translation). */
|
|
26
|
+
export declare function pxPerUserFromCtm(ctm: Affine2): number;
|
|
27
|
+
/** World-space length that draws as `px` CSS pixels after `scale(zoom)`. */
|
|
28
|
+
export declare function screenPxToWorld(px: number, zoom: number, pxPerUser: number): number;
|
|
29
|
+
/**
|
|
30
|
+
* Next pan so `user` (cursor or pinch midpoint in viewBox space) stays over
|
|
31
|
+
* the same world point after `zoom` → `nextZoom`. Without this, SVG
|
|
32
|
+
* `scale()` pivots around the viewBox origin (top-left).
|
|
33
|
+
*/
|
|
34
|
+
export declare function panAfterZoom(user: Vec2, pan: Vec2, zoom: number, nextZoom: number): Vec2;
|
|
35
|
+
/** Pan that keeps a known world point under `user` at `zoom`. */
|
|
36
|
+
export declare function panKeepingWorldAtUser(user: Vec2, world: Vec2, zoom: number): Vec2;
|
|
37
|
+
export declare const EDITOR_ZOOM_ANIM_MS = 240;
|
|
38
|
+
export declare function easeOutCubic(t: number): number;
|
|
39
|
+
export declare function lerp(a: number, b: number, t: number): number;
|
|
40
|
+
/** Interpolate pan + zoom for a smooth +/− / Reset. */
|
|
41
|
+
export declare function interpolateView(from: {
|
|
42
|
+
pan: Vec2;
|
|
43
|
+
zoom: number;
|
|
44
|
+
}, to: {
|
|
45
|
+
pan: Vec2;
|
|
46
|
+
zoom: number;
|
|
47
|
+
}, t: number): {
|
|
48
|
+
pan: Vec2;
|
|
49
|
+
zoom: number;
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=coords.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coords.d.ts","sourceRoot":"","sources":["../../../src/editor/canvas/coords.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,wEAAwE;AACxE,MAAM,WAAW,OAAO;IACtB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CASjF;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAI1F;AAED,wFAAwF;AACxF,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAMrE;AAED,eAAO,MAAM,eAAe,MAAM,CAAC;AACnC,gFAAgF;AAChF,eAAO,MAAM,eAAe,MAAM,CAAC;AAEnC,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAErD;AAED,4EAA4E;AAC5E,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAInF;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,IAAI,EACT,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,IAAI,CAMN;AAED,iEAAiE;AACjE,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAKjF;AAED,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAG9C;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,uDAAuD;AACvD,wBAAgB,eAAe,CAC7B,IAAI,EAAE;IAAE,GAAG,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EACjC,EAAE,EAAE;IAAE,GAAG,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC/B,CAAC,EAAE,MAAM,GACR;IAAE,GAAG,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAS7B"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ShapeKind, ThemeDefaults } from '../../core';
|
|
2
|
+
/** Edit Map fills stay translucent so the grid shows through for alignment. */
|
|
3
|
+
export declare function editorShapeFillOpacity(kind: ShapeKind): number;
|
|
4
|
+
export declare function editorShapeFill(shape: {
|
|
5
|
+
kind: ShapeKind;
|
|
6
|
+
style?: {
|
|
7
|
+
fill?: string;
|
|
8
|
+
};
|
|
9
|
+
}, theme: ThemeDefaults): string;
|
|
10
|
+
//# sourceMappingURL=editorFill.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editorFill.d.ts","sourceRoot":"","sources":["../../../src/editor/canvas/editorFill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG3D,+EAA+E;AAC/E,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAI9D;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,EACrD,KAAK,EAAE,aAAa,GACnB,MAAM,CAMR"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ShapeKind } from '../../core';
|
|
2
|
+
import { EditorTool } from '../tools';
|
|
3
|
+
/** Stores and other assignable items — pointer + highlight, not the pan hand. */
|
|
4
|
+
export declare function isHoverHighlightShape(kind: ShapeKind): boolean;
|
|
5
|
+
export declare function editorSelectCursor(args: {
|
|
6
|
+
tool: EditorTool;
|
|
7
|
+
selected: boolean;
|
|
8
|
+
highlightable: boolean;
|
|
9
|
+
dragging?: boolean;
|
|
10
|
+
/** Wayfinding: + cursor — click places an orange store destination. */
|
|
11
|
+
wayfinding?: boolean;
|
|
12
|
+
}): 'pointer' | 'grab' | 'grabbing' | 'cell' | undefined;
|
|
13
|
+
export declare function editorHoverFillOpacity(kind: ShapeKind, base: number, hovered: boolean): number;
|
|
14
|
+
//# sourceMappingURL=editorHover.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editorHover.d.ts","sourceRoot":"","sources":["../../../src/editor/canvas/editorHover.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,iFAAiF;AACjF,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAE9D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uEAAuE;IACvE,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,GAAG,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAYvD;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,GACf,MAAM,CAGR"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ShapeKind } from '../../core';
|
|
2
|
+
/** Outdoor underlay items that look clickable on a floor. */
|
|
3
|
+
export declare function isUnderlayHintShape(kind: ShapeKind): boolean;
|
|
4
|
+
export declare function underlaySwitchHint(kind: ShapeKind): string;
|
|
5
|
+
//# sourceMappingURL=underlayHint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"underlayHint.d.ts","sourceRoot":"","sources":["../../../src/editor/canvas/underlayHint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,6DAA6D;AAC7D,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAE5D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAW1D"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { BatchOp, CmAnchor, CmConnector, CmLevel, CmRouteEdge, CmShape, ConnectorDirection, ConnectorKind, Vec2 } from '../core';
|
|
2
|
+
export type VerticalRailKind = 'escalator' | 'elevator';
|
|
3
|
+
export interface ParsedConnectorSource {
|
|
4
|
+
family: ConnectorKind;
|
|
5
|
+
group: string;
|
|
6
|
+
direction?: 'up' | 'down';
|
|
7
|
+
role?: 'start' | 'end';
|
|
8
|
+
}
|
|
9
|
+
/** Parse v1-style ids: `escalator-5-up-start`, `elevator-2`. */
|
|
10
|
+
export declare function parseConnectorSourceId(value: string | null | undefined): ParsedConnectorSource | null;
|
|
11
|
+
export declare function guessConnectorKind(shape: {
|
|
12
|
+
kind: string;
|
|
13
|
+
key: string;
|
|
14
|
+
sourceSvgId?: string | null;
|
|
15
|
+
}): ConnectorKind | null;
|
|
16
|
+
export declare function connectorIdForShape(shapeId: number, anchors: Array<Pick<CmAnchor, 'shapeId' | 'connectorId'>>): number | null;
|
|
17
|
+
export declare function connectorForShape(shapeId: number, anchors: Array<Pick<CmAnchor, 'shapeId' | 'connectorId'>>, connectors: CmConnector[]): CmConnector | null;
|
|
18
|
+
export declare function resolvedConnectorKind(shape: {
|
|
19
|
+
id: number;
|
|
20
|
+
kind: string;
|
|
21
|
+
key: string;
|
|
22
|
+
sourceSvgId?: string | null;
|
|
23
|
+
}, anchors: Array<Pick<CmAnchor, 'shapeId' | 'connectorId'>>, connectors: CmConnector[]): ConnectorKind | null;
|
|
24
|
+
export declare function railConnectorShapes<T extends {
|
|
25
|
+
id: number;
|
|
26
|
+
kind: string;
|
|
27
|
+
key: string;
|
|
28
|
+
sourceSvgId?: string | null;
|
|
29
|
+
orphanedAt?: string | null;
|
|
30
|
+
}>(shapes: T[], kind: VerticalRailKind, anchors: Array<Pick<CmAnchor, 'shapeId' | 'connectorId'>>, connectors: CmConnector[]): T[];
|
|
31
|
+
export declare function landingAnchor(shapeId: number, anchors: CmAnchor[]): CmAnchor | undefined;
|
|
32
|
+
export declare function shapeLandingPoint(shape: Pick<CmShape, 'geometry'>): Vec2;
|
|
33
|
+
export declare function inferTravelDirection(fromLevelIndex: number, toLevelIndex: number, hint?: 'up' | 'down'): ConnectorDirection;
|
|
34
|
+
export declare function defaultConnectorName(kind: VerticalRailKind, shapes: Array<{
|
|
35
|
+
key: string;
|
|
36
|
+
sourceSvgId?: string | null;
|
|
37
|
+
}>): string;
|
|
38
|
+
export declare function nearestWalkAnchor(anchors: CmAnchor[], levelId: number, point: Vec2, excludeIds?: ReadonlySet<number>): CmAnchor | null;
|
|
39
|
+
export declare function memberShapeIds(connectorId: number, anchors: Array<Pick<CmAnchor, 'shapeId' | 'connectorId'>>): number[];
|
|
40
|
+
export interface ConnectorPlanContext {
|
|
41
|
+
mapId: number;
|
|
42
|
+
levels: CmLevel[];
|
|
43
|
+
shapes: CmShape[];
|
|
44
|
+
anchors: CmAnchor[];
|
|
45
|
+
edges: CmRouteEdge[];
|
|
46
|
+
connectors: CmConnector[];
|
|
47
|
+
allocId: () => number;
|
|
48
|
+
}
|
|
49
|
+
export declare function buildUnlinkConnectorOps(ctx: ConnectorPlanContext, connectorId: number): BatchOp[];
|
|
50
|
+
export declare function buildEscalatorLinkOps(ctx: ConnectorPlanContext, fromShape: CmShape, toShape: CmShape, options?: {
|
|
51
|
+
name?: string;
|
|
52
|
+
direction?: 'up' | 'down';
|
|
53
|
+
}): BatchOp[];
|
|
54
|
+
export declare function buildElevatorShaftOps(ctx: ConnectorPlanContext, memberShapes: CmShape[], options?: {
|
|
55
|
+
name?: string;
|
|
56
|
+
accessible?: boolean;
|
|
57
|
+
connectorId?: number;
|
|
58
|
+
}): BatchOp[];
|
|
59
|
+
export declare function suggestEscalatorPairs(shapes: CmShape[], levels: CmLevel[], anchors: Array<Pick<CmAnchor, 'shapeId' | 'connectorId'>>): Array<{
|
|
60
|
+
fromShapeId: number;
|
|
61
|
+
toShapeId: number;
|
|
62
|
+
label: string;
|
|
63
|
+
}>;
|
|
64
|
+
//# sourceMappingURL=connectorAssignments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connectorAssignments.d.ts","sourceRoot":"","sources":["../../src/editor/connectorAssignments.ts"],"names":[],"mappings":"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"}
|