open-plant 1.3.0 → 1.3.2
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/assets/point-hit-index-worker-CNFA6pZm.js +2 -0
- package/dist/assets/point-hit-index-worker-CNFA6pZm.js.map +1 -0
- package/dist/assets/roi-clip-worker-BDVQwN2T.js.map +1 -1
- package/dist/index.cjs +17 -13
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +3233 -3037
- package/dist/index.js.map +1 -1
- package/dist/types/core/ortho-camera.d.ts +7 -0
- package/dist/types/core/ortho-camera.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/react/draw-layer-brush.d.ts +9 -0
- package/dist/types/react/draw-layer-brush.d.ts.map +1 -0
- package/dist/types/react/draw-layer-label.d.ts +21 -0
- package/dist/types/react/draw-layer-label.d.ts.map +1 -0
- package/dist/types/react/draw-layer-overlay.d.ts +18 -0
- package/dist/types/react/draw-layer-overlay.d.ts.map +1 -0
- package/dist/types/react/draw-layer-stamp.d.ts +24 -0
- package/dist/types/react/draw-layer-stamp.d.ts.map +1 -0
- package/dist/types/react/draw-layer-types.d.ts +243 -0
- package/dist/types/react/draw-layer-types.d.ts.map +1 -0
- package/dist/types/react/draw-layer-utils.d.ts +30 -0
- package/dist/types/react/draw-layer-utils.d.ts.map +1 -0
- package/dist/types/react/draw-layer.d.ts +4 -187
- package/dist/types/react/draw-layer.d.ts.map +1 -1
- package/dist/types/react/wsi-region-hit-utils.d.ts +21 -0
- package/dist/types/react/wsi-region-hit-utils.d.ts.map +1 -0
- package/dist/types/react/wsi-viewer-canvas.d.ts +2 -1
- package/dist/types/react/wsi-viewer-canvas.d.ts.map +1 -1
- package/dist/types/wsi/brush-stroke.d.ts.map +1 -1
- package/dist/types/wsi/image-info.d.ts +26 -1
- package/dist/types/wsi/image-info.d.ts.map +1 -1
- package/dist/types/wsi/point-clip-hybrid.d.ts.map +1 -1
- package/dist/types/wsi/point-clip-worker-client.d.ts.map +1 -1
- package/dist/types/wsi/point-clip.d.ts +1 -1
- package/dist/types/wsi/point-clip.d.ts.map +1 -1
- package/dist/types/wsi/point-hit-index-shared.d.ts +25 -0
- package/dist/types/wsi/point-hit-index-shared.d.ts.map +1 -0
- package/dist/types/wsi/point-hit-index-worker-client.d.ts.map +1 -1
- package/dist/types/wsi/roi-geometry.d.ts +3 -0
- package/dist/types/wsi/roi-geometry.d.ts.map +1 -1
- package/dist/types/wsi/roi-term-stats.d.ts.map +1 -1
- package/dist/types/wsi/tile-scheduler.d.ts.map +1 -1
- package/dist/types/wsi/utils.d.ts +3 -2
- package/dist/types/wsi/utils.d.ts.map +1 -1
- package/dist/types/wsi/worker-client.d.ts +28 -0
- package/dist/types/wsi/worker-client.d.ts.map +1 -0
- package/dist/types/wsi/wsi-canvas-lifecycle.d.ts +15 -0
- package/dist/types/wsi/wsi-canvas-lifecycle.d.ts.map +1 -0
- package/dist/types/wsi/wsi-input-handlers.d.ts +67 -0
- package/dist/types/wsi/wsi-input-handlers.d.ts.map +1 -0
- package/dist/types/wsi/wsi-interaction.d.ts +50 -0
- package/dist/types/wsi/wsi-interaction.d.ts.map +1 -0
- package/dist/types/wsi/wsi-lifecycle-ops.d.ts +38 -0
- package/dist/types/wsi/wsi-lifecycle-ops.d.ts.map +1 -0
- package/dist/types/wsi/wsi-normalize.d.ts +20 -0
- package/dist/types/wsi/wsi-normalize.d.ts.map +1 -0
- package/dist/types/wsi/wsi-point-data.d.ts +14 -0
- package/dist/types/wsi/wsi-point-data.d.ts.map +1 -0
- package/dist/types/wsi/wsi-render-pass.d.ts +40 -0
- package/dist/types/wsi/wsi-render-pass.d.ts.map +1 -0
- package/dist/types/wsi/wsi-renderer-types.d.ts +132 -0
- package/dist/types/wsi/wsi-renderer-types.d.ts.map +1 -0
- package/dist/types/wsi/wsi-shaders.d.ts +4 -0
- package/dist/types/wsi/wsi-shaders.d.ts.map +1 -0
- package/dist/types/wsi/wsi-tile-cache.d.ts +8 -0
- package/dist/types/wsi/wsi-tile-cache.d.ts.map +1 -0
- package/dist/types/wsi/wsi-tile-renderer.d.ts +11 -70
- package/dist/types/wsi/wsi-tile-renderer.d.ts.map +1 -1
- package/dist/types/wsi/wsi-tile-visibility.d.ts +22 -0
- package/dist/types/wsi/wsi-tile-visibility.d.ts.map +1 -0
- package/dist/types/wsi/wsi-view-animation.d.ts +4 -0
- package/dist/types/wsi/wsi-view-animation.d.ts.map +1 -0
- package/dist/types/wsi/wsi-view-ops.d.ts +17 -0
- package/dist/types/wsi/wsi-view-ops.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/assets/point-hit-index-worker-Bp1uxxyQ.js +0 -2
- package/dist/assets/point-hit-index-worker-Bp1uxxyQ.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draw-layer.d.ts","sourceRoot":"","sources":["../../../src/react/draw-layer.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"draw-layer.d.ts","sourceRoot":"","sources":["../../../src/react/draw-layer.tsx"],"names":[],"mappings":"AAeA,OAAO,EAKL,KAAK,cAAc,EAiBpB,MAAM,oBAAoB,CAAC;AAiB5B,OAAO,EAAE,qBAAqB,EAAE,kCAAkC,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AACxH,YAAY,EACV,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,EACpB,UAAU,EACV,cAAc,EACd,UAAU,EACV,sBAAsB,EACtB,4BAA4B,EAC5B,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,qBAAqB,EACrB,UAAU,EACV,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,EACjB,yBAAyB,EACzB,kBAAkB,EAClB,aAAa,EACb,YAAY,GACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AA0B9E,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,UAAU,EACV,WAAW,EACX,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,cAAc,EACd,eAAe,EACf,OAAO,EACP,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EAChB,wBAAwB,EACxB,uBAAuB,EAAE,2BAA2B,EACpD,aAAa,EACb,eAAsB,EACtB,cAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,4BAAoC,EACpC,2BAA2B,EAC3B,aAAa,EACb,SAAS,EACT,KAAK,GACN,EAAE,cAAc,GAAG,KAAK,CAAC,YAAY,CAizBrC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type PreparedRoiPolygon } from "../wsi/roi-geometry";
|
|
2
|
+
import type { WsiRegion } from "../wsi/types";
|
|
3
|
+
import type { WsiTileRenderer } from "../wsi/wsi-tile-renderer";
|
|
4
|
+
import type { DrawCoordinate, RegionLabelStyle, RegionLabelStyleResolver } from "./draw-layer-types";
|
|
5
|
+
export interface PreparedRegionHit {
|
|
6
|
+
region: WsiRegion;
|
|
7
|
+
regionIndex: number;
|
|
8
|
+
regionId: string | number;
|
|
9
|
+
polygons: PreparedRoiPolygon[];
|
|
10
|
+
label: string;
|
|
11
|
+
labelAnchor: DrawCoordinate | null;
|
|
12
|
+
}
|
|
13
|
+
export declare function resolveRegionId(region: WsiRegion, index: number): string | number;
|
|
14
|
+
export declare function isScreenPointInsideLabel(region: PreparedRegionHit, screenCoord: DrawCoordinate, renderer: WsiTileRenderer, labelStyle: RegionLabelStyle, canvasWidth: number, canvasHeight: number): boolean;
|
|
15
|
+
export declare function prepareRegionHits(regions: WsiRegion[]): PreparedRegionHit[];
|
|
16
|
+
export declare function pickPreparedRegionAt(coord: DrawCoordinate, screenCoord: DrawCoordinate, regions: PreparedRegionHit[], renderer: WsiTileRenderer, labelStyle: RegionLabelStyle, labelStyleResolver: RegionLabelStyleResolver | undefined, labelAutoLiftOffsetPx: number, canvasWidth: number, canvasHeight: number): {
|
|
17
|
+
region: WsiRegion;
|
|
18
|
+
regionIndex: number;
|
|
19
|
+
regionId: string | number;
|
|
20
|
+
} | null;
|
|
21
|
+
//# sourceMappingURL=wsi-region-hit-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wsi-region-hit-utils.d.ts","sourceRoot":"","sources":["../../../src/react/wsi-region-hit-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAqC,MAAM,qBAAqB,CAAC;AACjG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAKrG,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,SAAS,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,cAAc,GAAG,IAAI,CAAC;CACpC;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAEjF;AA0CD,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,iBAAiB,EACzB,WAAW,EAAE,cAAc,EAC3B,QAAQ,EAAE,eAAe,EACzB,UAAU,EAAE,gBAAgB,EAC5B,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GACnB,OAAO,CAkBT;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,iBAAiB,EAAE,CAiB3E;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,cAAc,EACrB,WAAW,EAAE,cAAc,EAC3B,OAAO,EAAE,iBAAiB,EAAE,EAC5B,QAAQ,EAAE,eAAe,EACzB,UAAU,EAAE,gBAAgB,EAC5B,kBAAkB,EAAE,wBAAwB,GAAG,SAAS,EACxD,qBAAqB,EAAE,MAAM,EAC7B,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GACnB;IACD,MAAM,EAAE,SAAS,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;CAC3B,GAAG,IAAI,CAuCP"}
|
|
@@ -90,6 +90,7 @@ export interface WsiViewerCanvasProps {
|
|
|
90
90
|
pointPalette?: Uint8Array | null;
|
|
91
91
|
pointSizeByZoom?: PointSizeByZoom;
|
|
92
92
|
pointStrokeScale?: number;
|
|
93
|
+
pointInnerFillOpacity?: number;
|
|
93
94
|
minZoom?: number;
|
|
94
95
|
maxZoom?: number;
|
|
95
96
|
viewTransition?: WsiViewTransitionOptions;
|
|
@@ -131,5 +132,5 @@ export interface WsiViewerCanvasProps {
|
|
|
131
132
|
className?: string;
|
|
132
133
|
style?: CSSProperties;
|
|
133
134
|
}
|
|
134
|
-
export declare function WsiViewerCanvas({ source, viewState, imageColorSettings, onViewStateChange, onStats, onTileError, onContextLost, onContextRestored, debugOverlay, debugOverlayStyle, fitNonce, rotationResetNonce, authToken, ctrlDragRotate, pointData, pointPalette, pointSizeByZoom, pointStrokeScale, minZoom, maxZoom, viewTransition, roiRegions, roiPolygons, clipPointsToRois, clipMode, onClipStats, onRoiPointGroups, roiPaletteIndexToTermId, interactionLock, drawTool, stampOptions, brushOptions, drawFillColor, regionStrokeStyle, regionStrokeHoverStyle, regionStrokeActiveStyle, patchStrokeStyle, resolveRegionStrokeStyle, resolveRegionLabelStyle: resolveRegionLabelStyleProp, overlayShapes, customLayers, patchRegions, regionLabelStyle, drawAreaTooltip, autoLiftRegionLabelAtMaxZoom, onPointerWorldMove, onPointHover, onPointClick, onRegionHover, onRegionClick, activeRegionId: controlledActiveRegionId, onActiveRegionChange, getCellByCoordinatesRef, onDrawComplete, onPatchComplete, overviewMapConfig, className, style, }: WsiViewerCanvasProps): React.ReactElement;
|
|
135
|
+
export declare function WsiViewerCanvas({ source, viewState, imageColorSettings, onViewStateChange, onStats, onTileError, onContextLost, onContextRestored, debugOverlay, debugOverlayStyle, fitNonce, rotationResetNonce, authToken, ctrlDragRotate, pointData, pointPalette, pointSizeByZoom, pointStrokeScale, pointInnerFillOpacity, minZoom, maxZoom, viewTransition, roiRegions, roiPolygons, clipPointsToRois, clipMode, onClipStats, onRoiPointGroups, roiPaletteIndexToTermId, interactionLock, drawTool, stampOptions, brushOptions, drawFillColor, regionStrokeStyle, regionStrokeHoverStyle, regionStrokeActiveStyle, patchStrokeStyle, resolveRegionStrokeStyle, resolveRegionLabelStyle: resolveRegionLabelStyleProp, overlayShapes, customLayers, patchRegions, regionLabelStyle, drawAreaTooltip, autoLiftRegionLabelAtMaxZoom, onPointerWorldMove, onPointHover, onPointClick, onRegionHover, onRegionClick, activeRegionId: controlledActiveRegionId, onActiveRegionChange, getCellByCoordinatesRef, onDrawComplete, onPatchComplete, overviewMapConfig, className, style, }: WsiViewerCanvasProps): React.ReactElement;
|
|
135
136
|
//# sourceMappingURL=wsi-viewer-canvas.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wsi-viewer-canvas.d.ts","sourceRoot":"","sources":["../../../src/react/wsi-viewer-canvas.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EAErB,KAAK,SAAS,EAOf,MAAM,OAAO,CAAC;AAGf,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAGxG,OAAO,EAAyB,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"wsi-viewer-canvas.d.ts","sourceRoot":"","sources":["../../../src/react/wsi-viewer-canvas.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brush-stroke.d.ts","sourceRoot":"","sources":["../../../src/wsi/brush-stroke.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"brush-stroke.d.ts","sourceRoot":"","sources":["../../../src/wsi/brush-stroke.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,qBAAqB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACrD,MAAM,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjE,MAAM,WAAW,yBAAyB;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAifD,wBAAgB,uBAAuB,CACtC,IAAI,EAAE,qBAAqB,EAAE,EAC7B,OAAO,EAAE,yBAAyB,GAChC,qBAAqB,EAAE,CAwDzB"}
|
|
@@ -1,4 +1,29 @@
|
|
|
1
1
|
import type { WsiImageSource } from "./types";
|
|
2
|
-
export
|
|
2
|
+
export interface RawImsInfo {
|
|
3
|
+
width?: number | null;
|
|
4
|
+
height?: number | null;
|
|
5
|
+
tileSize?: number | null;
|
|
6
|
+
zoom?: number | null;
|
|
7
|
+
path?: string | null;
|
|
8
|
+
mpp?: number | null;
|
|
9
|
+
}
|
|
10
|
+
export interface RawWsiTerm {
|
|
11
|
+
termId?: string | null;
|
|
12
|
+
termName?: string | null;
|
|
13
|
+
termColor?: string | null;
|
|
14
|
+
}
|
|
15
|
+
export interface RawImagePayload {
|
|
16
|
+
_id?: string | null;
|
|
17
|
+
name?: string | null;
|
|
18
|
+
width?: number | null;
|
|
19
|
+
height?: number | null;
|
|
20
|
+
tileSize?: number | null;
|
|
21
|
+
zoom?: number | null;
|
|
22
|
+
path?: string | null;
|
|
23
|
+
mpp?: number | null;
|
|
24
|
+
imsInfo?: RawImsInfo | null;
|
|
25
|
+
terms?: RawWsiTerm[] | null;
|
|
26
|
+
}
|
|
27
|
+
export declare function normalizeImageInfo(raw: RawImagePayload, tileBaseUrl: string): WsiImageSource;
|
|
3
28
|
export declare function toTileUrl(source: Pick<WsiImageSource, "tilePath" | "tileBaseUrl" | "tileUrlBuilder">, tier: number, x: number, y: number): string;
|
|
4
29
|
//# sourceMappingURL=image-info.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image-info.d.ts","sourceRoot":"","sources":["../../../src/wsi/image-info.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAW,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"image-info.d.ts","sourceRoot":"","sources":["../../../src/wsi/image-info.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAW,MAAM,SAAS,CAAC;AAEvD,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;CAC7B;AA0CD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,GAAG,cAAc,CAwC5F;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,aAAa,GAAG,gBAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAMjJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"point-clip-hybrid.d.ts","sourceRoot":"","sources":["../../../src/wsi/point-clip-hybrid.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"point-clip-hybrid.d.ts","sourceRoot":"","sources":["../../../src/wsi/point-clip-hybrid.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5C,MAAM,WAAW,sBAAsB;IACrC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE,eAAe,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,CAAC;CACH;AAED,wBAAsB,+BAA+B,CACnD,SAAS,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EAC1C,QAAQ,EAAE,UAAU,EAAE,GAAG,IAAI,GAAG,SAAS,EACzC,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,qBAAqB,CAAC,CAyPhC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"point-clip-worker-client.d.ts","sourceRoot":"","sources":["../../../src/wsi/point-clip-worker-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2D,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAExG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"point-clip-worker-client.d.ts","sourceRoot":"","sources":["../../../src/wsi/point-clip-worker-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2D,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAExG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5C,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,eAAe,CAAC;AAEhE,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,aAAa,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC;IAC1B,IAAI,EAAE,mBAAmB,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,mBAAmB,CAAC;CAC3B;AAsFD,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED,wBAAsB,iCAAiC,CAAC,SAAS,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,CAyDvK;AAED,wBAAsB,oCAAoC,CAAC,SAAS,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA+C/K"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { WsiPointData } from "./types";
|
|
2
1
|
import { type RoiCoordinate, type RoiGeometry } from "./roi-geometry";
|
|
2
|
+
import type { WsiPointData } from "./types";
|
|
3
3
|
export type { RoiCoordinate };
|
|
4
4
|
export type RoiPolygon = RoiGeometry;
|
|
5
5
|
export declare function filterPointDataByPolygons(pointData: WsiPointData | null | undefined, polygons: RoiPolygon[] | null | undefined): WsiPointData | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"point-clip.d.ts","sourceRoot":"","sources":["../../../src/wsi/point-clip.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"point-clip.d.ts","sourceRoot":"","sources":["../../../src/wsi/point-clip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACrH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5C,YAAY,EAAE,aAAa,EAAE,CAAC;AAC9B,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC;AAErC,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,YAAY,GAAG,IAAI,CA6DpJ;AAED,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,WAAW,CA4B/I"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export declare const MIN_POINT_HIT_GRID_SIZE = 24;
|
|
2
|
+
export declare const MAX_POINT_HIT_GRID_SIZE = 1024;
|
|
3
|
+
export declare const POINT_HIT_GRID_DENSITY_SCALE = 4;
|
|
4
|
+
export declare const HASH_EMPTY = -1;
|
|
5
|
+
export interface PointHitIndexBuildInput {
|
|
6
|
+
count: number;
|
|
7
|
+
positions: Float32Array;
|
|
8
|
+
drawIndices?: Uint32Array | null;
|
|
9
|
+
sourceWidth: number;
|
|
10
|
+
sourceHeight: number;
|
|
11
|
+
}
|
|
12
|
+
export interface PointHitIndexBuildResult {
|
|
13
|
+
cellSize: number;
|
|
14
|
+
safeCount: number;
|
|
15
|
+
cellCount: number;
|
|
16
|
+
hashCapacity: number;
|
|
17
|
+
hashTable: Int32Array;
|
|
18
|
+
cellKeys: Int32Array;
|
|
19
|
+
cellOffsets: Uint32Array;
|
|
20
|
+
cellLengths: Uint32Array;
|
|
21
|
+
pointIndices: Uint32Array;
|
|
22
|
+
}
|
|
23
|
+
export declare function cellHash(cellX: number, cellY: number, mask: number): number;
|
|
24
|
+
export declare function buildPointHitIndex(input: PointHitIndexBuildInput): PointHitIndexBuildResult | null;
|
|
25
|
+
//# sourceMappingURL=point-hit-index-shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"point-hit-index-shared.d.ts","sourceRoot":"","sources":["../../../src/wsi/point-hit-index-shared.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAC5C,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAC9C,eAAO,MAAM,UAAU,KAAK,CAAC;AAE7B,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,YAAY,CAAC;IACxB,WAAW,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,UAAU,CAAC;IACtB,QAAQ,EAAE,UAAU,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,WAAW,CAAC;CAC3B;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3E;AAmCD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,wBAAwB,GAAG,IAAI,CA4LlG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"point-hit-index-worker-client.d.ts","sourceRoot":"","sources":["../../../src/wsi/point-hit-index-worker-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"point-hit-index-worker-client.d.ts","sourceRoot":"","sources":["../../../src/wsi/point-hit-index-worker-client.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI5D,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,YAAY,CAAC;IACxB,GAAG,EAAE,WAAW,GAAG,IAAI,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,UAAU,CAAC;IACtB,QAAQ,EAAE,UAAU,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,WAAW,CAAC;CAC3B;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,qBAAqB,EAC5B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,GACZ,MAAM,CASR;AAiDD,wBAAgB,4BAA4B,IAAI,IAAI,CAEnD;AAsCD,wBAAsB,2BAA2B,CAC/C,SAAS,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EAC1C,MAAM,EAAE,cAAc,GAAG,IAAI,GAC5B,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAkDvC"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
import type { WsiRegionCoordinates } from "./types";
|
|
1
2
|
export type RoiCoordinate = [number, number];
|
|
2
3
|
export type RoiLinearRing = RoiCoordinate[];
|
|
3
4
|
export type RoiPolygonRings = RoiLinearRing[];
|
|
4
5
|
export type RoiMultiPolygon = RoiPolygonRings[];
|
|
5
6
|
export type RoiGeometry = RoiLinearRing | RoiPolygonRings | RoiMultiPolygon;
|
|
7
|
+
export declare function toRoiGeometry(coords: WsiRegionCoordinates | null | undefined): RoiGeometry | null | undefined;
|
|
8
|
+
export declare function toRoiGeometry(coords: unknown): RoiGeometry | null | undefined;
|
|
6
9
|
export interface PreparedRoiPolygon {
|
|
7
10
|
outer: RoiLinearRing;
|
|
8
11
|
holes: RoiLinearRing[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roi-geometry.d.ts","sourceRoot":"","sources":["../../../src/wsi/roi-geometry.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC7C,MAAM,MAAM,aAAa,GAAG,aAAa,EAAE,CAAC;AAC5C,MAAM,MAAM,eAAe,GAAG,aAAa,EAAE,CAAC;AAC9C,MAAM,MAAM,eAAe,GAAG,eAAe,EAAE,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,eAAe,GAAG,eAAe,CAAC;AAE5E,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,aAAa,CAAC;IACrB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACb;AA2BD,wBAAgB,YAAY,CAAC,WAAW,EAAE,SAAS,aAAa,EAAE,GAAG,aAAa,CAmBjF;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAS7D;AA6BD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,eAAe,CAuB9F;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,OAAO,CAa9E;AAED,wBAAgB,uBAAuB,CACtC,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,OAAO,EAAE,eAAe,GACtB,OAAO,CAWT;AAED,wBAAgB,kBAAkB,CACjC,UAAU,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,GACxE,kBAAkB,EAAE,CAyCtB;AAED,wBAAgB,sBAAsB,CACrC,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,OAAO,EAAE,kBAAkB,GACzB,OAAO,CAST;AAED,wBAAgB,yBAAyB,CACxC,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,QAAQ,EAAE,SAAS,kBAAkB,EAAE,GACrC,OAAO,CAMT"}
|
|
1
|
+
{"version":3,"file":"roi-geometry.d.ts","sourceRoot":"","sources":["../../../src/wsi/roi-geometry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC7C,MAAM,MAAM,aAAa,GAAG,aAAa,EAAE,CAAC;AAC5C,MAAM,MAAM,eAAe,GAAG,aAAa,EAAE,CAAC;AAC9C,MAAM,MAAM,eAAe,GAAG,eAAe,EAAE,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG,eAAe,GAAG,eAAe,CAAC;AAE5E,wBAAgB,aAAa,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;AAC/G,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;AAM/E,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,aAAa,CAAC;IACrB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACb;AA2BD,wBAAgB,YAAY,CAAC,WAAW,EAAE,SAAS,aAAa,EAAE,GAAG,aAAa,CAmBjF;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAS7D;AA6BD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,eAAe,CAuB9F;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,OAAO,CAa9E;AAED,wBAAgB,uBAAuB,CACtC,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,OAAO,EAAE,eAAe,GACtB,OAAO,CAWT;AAED,wBAAgB,kBAAkB,CACjC,UAAU,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,GACxE,kBAAkB,EAAE,CAyCtB;AAED,wBAAgB,sBAAsB,CACrC,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,OAAO,EAAE,kBAAkB,GACzB,OAAO,CAST;AAED,wBAAgB,yBAAyB,CACxC,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,QAAQ,EAAE,SAAS,kBAAkB,EAAE,GACrC,OAAO,CAMT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roi-term-stats.d.ts","sourceRoot":"","sources":["../../../src/wsi/roi-term-stats.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"roi-term-stats.d.ts","sourceRoot":"","sources":["../../../src/wsi/roi-term-stats.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEvD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,YAAY,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,oBAAoB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,MAAM,EAAE,CAAC;IACvE,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AA2CD,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,EAAE,SAAS,SAAS,EAAE,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,GAAE,oBAAyB,GAAG,kBAAkB,CA8G1L"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tile-scheduler.d.ts","sourceRoot":"","sources":["../../../src/wsi/tile-scheduler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tile-scheduler.d.ts","sourceRoot":"","sources":["../../../src/wsi/tile-scheduler.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE1D,MAAM,WAAW,aAAa;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,qBAAqB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IAC/D,WAAW,CAAC,EAAE,CACb,IAAI,EAAE,aAAa,EACnB,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,MAAM,KAChB,IAAI,CAAC;IACV,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,qBAAqB,KAAK,IAAI,CAAC;CAC1D;AA4BD,qBAAa,aAAa;IACzB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqD;IAChF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAEhB;IACb,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAElB;IAEb,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,WAAW,CAAK;gBAEZ,OAAO,EAAE,oBAAoB;IAiBzC,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIjC,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,GAAG,IAAI;IAuC/C,KAAK,IAAI,IAAI;IAab,OAAO,IAAI,IAAI;IAMf,gBAAgB,IAAI,MAAM;IAI1B,WAAW,IAAI,qBAAqB;IAUpC,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,IAAI;IAyBZ,OAAO,CAAC,sBAAsB;IAW9B,OAAO,CAAC,UAAU;IAwElB,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,eAAe;CAGvB"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import type { TermPalette, WsiViewState } from "./types";
|
|
1
|
+
import type { TermPalette, WsiPointData, WsiViewState } from "./types";
|
|
2
2
|
export declare function clamp(value: number, min: number, max: number): number;
|
|
3
3
|
export declare function calcScaleResolution(imageMpp: number, imageZoom: number, currentZoom: number): number;
|
|
4
4
|
export declare function calcScaleLength(imageMpp: number, imageZoom: number, currentZoom: number): string;
|
|
5
|
+
export declare function nowMs(): number;
|
|
6
|
+
export declare function sanitizePointCount(pointData: WsiPointData): number;
|
|
5
7
|
export declare function isSameViewState(a: Partial<WsiViewState> | null | undefined, b: Partial<WsiViewState> | null | undefined): boolean;
|
|
6
8
|
export declare function toBearerToken(value: string | null | undefined): string;
|
|
7
9
|
export declare function hexToRgba(hex: string | null | undefined): [number, number, number, number];
|
|
@@ -9,5 +11,4 @@ export declare function buildTermPalette(terms: Array<{
|
|
|
9
11
|
termId?: string | null;
|
|
10
12
|
termColor?: string | null;
|
|
11
13
|
}> | null | undefined): TermPalette;
|
|
12
|
-
export declare function createProgram(gl: WebGL2RenderingContext, vertexSource: string, fragmentSource: string): WebGLProgram;
|
|
13
14
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/wsi/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/wsi/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvE,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAErE;AAED,wBAAgB,mBAAmB,CAClC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GACjB,MAAM,CAOR;AAED,wBAAgB,eAAe,CAC9B,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GACjB,MAAM,CAYR;AAED,wBAAgB,KAAK,IAAI,MAAM,CAK9B;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,YAAY,GAAG,MAAM,CAclE;AAED,wBAAgB,eAAe,CAC9B,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,GAAG,SAAS,EAC3C,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,GAAG,SAAS,GACzC,OAAO,CAST;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAQtE;AAED,wBAAgB,SAAS,CACxB,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC5B,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAOlC;AAED,wBAAgB,gBAAgB,CAC/B,KAAK,EACF,KAAK,CAAC;IAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,GAC5D,IAAI,GACJ,SAAS,GACV,WAAW,CAuBb"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export interface WorkerClientHandlers<Res extends {
|
|
2
|
+
id: number;
|
|
3
|
+
}, Pending> {
|
|
4
|
+
onResponse: (message: Res, pending: Pending) => void;
|
|
5
|
+
rejectPending: (pending: Pending, error: Error) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare class WorkerClient<Res extends {
|
|
8
|
+
id: number;
|
|
9
|
+
}, Pending> {
|
|
10
|
+
private readonly createWorker;
|
|
11
|
+
private readonly handlers;
|
|
12
|
+
private worker;
|
|
13
|
+
private supported;
|
|
14
|
+
private requestId;
|
|
15
|
+
private readonly pendingById;
|
|
16
|
+
private readonly handleMessage;
|
|
17
|
+
private readonly handleError;
|
|
18
|
+
constructor(createWorker: () => Worker, handlers: WorkerClientHandlers<Res, Pending>);
|
|
19
|
+
beginRequest(pending: Pending): {
|
|
20
|
+
id: number;
|
|
21
|
+
worker: Worker;
|
|
22
|
+
} | null;
|
|
23
|
+
cancelRequest(id: number): Pending | undefined;
|
|
24
|
+
terminate(reason?: string): void;
|
|
25
|
+
private getOrCreateWorker;
|
|
26
|
+
private teardownWorker;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=worker-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worker-client.d.ts","sourceRoot":"","sources":["../../../src/wsi/worker-client.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB,CAAC,GAAG,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,OAAO;IACvE,UAAU,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACrD,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACzD;AAED,qBAAa,YAAY,CAAC,GAAG,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,OAAO;IAqBzD,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IArB3B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;IAE1D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAO5B;IAEF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAG1B;gBAGiB,YAAY,EAAE,MAAM,MAAM,EAC1B,QAAQ,EAAE,oBAAoB,CAAC,GAAG,EAAE,OAAO,CAAC;IAG/D,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAQrE,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAO9C,SAAS,CAAC,MAAM,SAAsB,GAAG,IAAI;IAI7C,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,cAAc;CAcvB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { OrthoCamera } from "../core/ortho-camera";
|
|
2
|
+
export interface RendererCanvasHandlers {
|
|
3
|
+
pointerDown: (event: PointerEvent) => void;
|
|
4
|
+
pointerMove: (event: PointerEvent) => void;
|
|
5
|
+
pointerUp: (event: PointerEvent) => void;
|
|
6
|
+
wheel: (event: WheelEvent) => void;
|
|
7
|
+
doubleClick: (event: MouseEvent) => void;
|
|
8
|
+
contextMenu: (event: MouseEvent) => void;
|
|
9
|
+
contextLost: (event: Event) => void;
|
|
10
|
+
contextRestored: (event: Event) => void;
|
|
11
|
+
}
|
|
12
|
+
export declare function addRendererCanvasEventListeners(canvas: HTMLCanvasElement, handlers: RendererCanvasHandlers): void;
|
|
13
|
+
export declare function removeRendererCanvasEventListeners(canvas: HTMLCanvasElement, handlers: RendererCanvasHandlers): void;
|
|
14
|
+
export declare function resizeCanvasViewport(canvas: HTMLCanvasElement, gl: WebGL2RenderingContext, camera: OrthoCamera): void;
|
|
15
|
+
//# sourceMappingURL=wsi-canvas-lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wsi-canvas-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/wsi/wsi-canvas-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,WAAW,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,SAAS,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACzC,KAAK,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACnC,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACzC,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACzC,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACpC,eAAe,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACzC;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAUjH;AAED,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAUpH;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,EAAE,EAAE,EAAE,sBAAsB,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAgBrH"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { OrthoCamera } from "../core/ortho-camera";
|
|
2
|
+
import type { RendererCanvasHandlers } from "./wsi-canvas-lifecycle";
|
|
3
|
+
import type { InteractionState } from "./wsi-renderer-types";
|
|
4
|
+
import type { WsiImageSource } from "./types";
|
|
5
|
+
interface BaseInteractionOptions {
|
|
6
|
+
interactionLocked: boolean;
|
|
7
|
+
canvas: HTMLCanvasElement;
|
|
8
|
+
state: InteractionState;
|
|
9
|
+
}
|
|
10
|
+
interface PointerDownWithLockOptions extends BaseInteractionOptions {
|
|
11
|
+
event: PointerEvent;
|
|
12
|
+
ctrlDragRotate: boolean;
|
|
13
|
+
rotationDragSensitivityDegPerPixel: number;
|
|
14
|
+
cancelViewAnimation: () => void;
|
|
15
|
+
}
|
|
16
|
+
interface PointerMoveWithLockOptions extends BaseInteractionOptions {
|
|
17
|
+
event: PointerEvent;
|
|
18
|
+
ctrlDragRotate: boolean;
|
|
19
|
+
rotationDragSensitivityDegPerPixel: number;
|
|
20
|
+
camera: OrthoCamera;
|
|
21
|
+
source: WsiImageSource;
|
|
22
|
+
emitViewState: () => void;
|
|
23
|
+
requestRender: () => void;
|
|
24
|
+
}
|
|
25
|
+
interface PointerUpWithLockOptions extends BaseInteractionOptions {
|
|
26
|
+
event: PointerEvent;
|
|
27
|
+
}
|
|
28
|
+
interface WheelWithLockOptions {
|
|
29
|
+
event: WheelEvent;
|
|
30
|
+
interactionLocked: boolean;
|
|
31
|
+
canvas: HTMLCanvasElement;
|
|
32
|
+
onZoomBy: (factor: number, x: number, y: number) => void;
|
|
33
|
+
}
|
|
34
|
+
interface DoubleClickWithLockOptions {
|
|
35
|
+
event: MouseEvent;
|
|
36
|
+
interactionLocked: boolean;
|
|
37
|
+
canvas: HTMLCanvasElement;
|
|
38
|
+
onZoomBy: (factor: number, x: number, y: number) => void;
|
|
39
|
+
}
|
|
40
|
+
interface ContextMenuWithLockOptions {
|
|
41
|
+
event: MouseEvent;
|
|
42
|
+
canvas: HTMLCanvasElement;
|
|
43
|
+
state: InteractionState;
|
|
44
|
+
}
|
|
45
|
+
export declare function onPointerDownWithLock(options: PointerDownWithLockOptions): void;
|
|
46
|
+
export declare function onPointerMoveWithLock(options: PointerMoveWithLockOptions): void;
|
|
47
|
+
export declare function onPointerUpWithLock(options: PointerUpWithLockOptions): void;
|
|
48
|
+
export declare function onWheelWithLock(options: WheelWithLockOptions): void;
|
|
49
|
+
export declare function onDoubleClickWithLock(options: DoubleClickWithLockOptions): void;
|
|
50
|
+
export declare function onContextMenuWithLock(options: ContextMenuWithLockOptions): void;
|
|
51
|
+
export declare function cancelDrag(canvas: HTMLCanvasElement, state: InteractionState): void;
|
|
52
|
+
export interface CreateRendererInputHandlersOptions {
|
|
53
|
+
canvas: HTMLCanvasElement;
|
|
54
|
+
state: InteractionState;
|
|
55
|
+
getInteractionLocked: () => boolean;
|
|
56
|
+
getCtrlDragRotate: () => boolean;
|
|
57
|
+
getRotationDragSensitivityDegPerPixel: () => number;
|
|
58
|
+
cancelViewAnimation: () => void;
|
|
59
|
+
camera: OrthoCamera;
|
|
60
|
+
source: WsiImageSource;
|
|
61
|
+
emitViewState: () => void;
|
|
62
|
+
requestRender: () => void;
|
|
63
|
+
zoomBy: (factor: number, x: number, y: number) => void;
|
|
64
|
+
}
|
|
65
|
+
export declare function createRendererInputHandlers(options: CreateRendererInputHandlersOptions): Pick<RendererCanvasHandlers, "pointerDown" | "pointerMove" | "pointerUp" | "wheel" | "doubleClick" | "contextMenu">;
|
|
66
|
+
export {};
|
|
67
|
+
//# sourceMappingURL=wsi-input-handlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wsi-input-handlers.d.ts","sourceRoot":"","sources":["../../../src/wsi/wsi-input-handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { InteractionConfig, InteractionState } from "./wsi-renderer-types";
|
|
2
|
+
interface PointerMoveOptions {
|
|
3
|
+
event: PointerEvent;
|
|
4
|
+
canvas: HTMLCanvasElement;
|
|
5
|
+
state: InteractionState;
|
|
6
|
+
config: InteractionConfig;
|
|
7
|
+
camera: {
|
|
8
|
+
getViewState: () => {
|
|
9
|
+
zoom: number;
|
|
10
|
+
offsetX: number;
|
|
11
|
+
offsetY: number;
|
|
12
|
+
rotationDeg: number;
|
|
13
|
+
};
|
|
14
|
+
setViewState: (next: Partial<{
|
|
15
|
+
zoom: number;
|
|
16
|
+
offsetX: number;
|
|
17
|
+
offsetY: number;
|
|
18
|
+
rotationDeg: number;
|
|
19
|
+
}>) => void;
|
|
20
|
+
};
|
|
21
|
+
clampViewState: () => void;
|
|
22
|
+
emitViewState: () => void;
|
|
23
|
+
requestRender: () => void;
|
|
24
|
+
}
|
|
25
|
+
interface PointerDownOptions {
|
|
26
|
+
event: PointerEvent;
|
|
27
|
+
canvas: HTMLCanvasElement;
|
|
28
|
+
state: InteractionState;
|
|
29
|
+
config: InteractionConfig;
|
|
30
|
+
cancelViewAnimation: () => void;
|
|
31
|
+
}
|
|
32
|
+
interface WheelOptions {
|
|
33
|
+
event: WheelEvent;
|
|
34
|
+
canvas: HTMLCanvasElement;
|
|
35
|
+
onZoomBy: (factor: number, x: number, y: number) => void;
|
|
36
|
+
}
|
|
37
|
+
interface DoubleClickOptions {
|
|
38
|
+
event: MouseEvent;
|
|
39
|
+
canvas: HTMLCanvasElement;
|
|
40
|
+
onZoomBy: (factor: number, x: number, y: number) => void;
|
|
41
|
+
}
|
|
42
|
+
export declare function cancelDrag(canvas: HTMLCanvasElement, state: InteractionState): void;
|
|
43
|
+
export declare function handlePointerDown(options: PointerDownOptions): void;
|
|
44
|
+
export declare function handlePointerMove(options: PointerMoveOptions): void;
|
|
45
|
+
export declare function handlePointerUp(event: PointerEvent, canvas: HTMLCanvasElement, state: InteractionState): void;
|
|
46
|
+
export declare function handleWheel(options: WheelOptions): void;
|
|
47
|
+
export declare function handleDoubleClick(options: DoubleClickOptions): void;
|
|
48
|
+
export declare function handleContextMenu(event: MouseEvent, dragging: boolean): void;
|
|
49
|
+
export {};
|
|
50
|
+
//# sourceMappingURL=wsi-interaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wsi-interaction.d.ts","sourceRoot":"","sources":["../../../src/wsi/wsi-interaction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEhF,UAAU,kBAAkB;IAC1B,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,KAAK,EAAE,gBAAgB,CAAC;IACxB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,EAAE;QACN,YAAY,EAAE,MAAM;YAClB,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,MAAM,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;YAChB,WAAW,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAA;SAAE,CAAC,KAAK,IAAI,CAAC;KAChH,CAAC;IACF,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,UAAU,kBAAkB;IAC1B,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,KAAK,EAAE,gBAAgB,CAAC;IACxB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,mBAAmB,EAAE,MAAM,IAAI,CAAC;CACjC;AAED,UAAU,YAAY;IACpB,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1D;AAED,UAAU,kBAAkB;IAC1B,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1D;AASD,wBAAgB,UAAU,CAAC,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAanF;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAoBnE;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAuCnE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAG7G;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAQvD;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAMnE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI,CAI5E"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { TileScheduler } from "./tile-scheduler";
|
|
2
|
+
import type { CachedTile, PointProgram, TileVertexProgram } from "./wsi-renderer-types";
|
|
3
|
+
export interface ContextLostOptions {
|
|
4
|
+
event: Event;
|
|
5
|
+
destroyed: boolean;
|
|
6
|
+
contextLost: boolean;
|
|
7
|
+
frame: number | null;
|
|
8
|
+
cancelViewAnimation: () => void;
|
|
9
|
+
cancelDrag: () => void;
|
|
10
|
+
tileScheduler: TileScheduler;
|
|
11
|
+
cache: Map<string, CachedTile>;
|
|
12
|
+
onContextLost?: () => void;
|
|
13
|
+
}
|
|
14
|
+
export interface ContextLostResult {
|
|
15
|
+
handled: boolean;
|
|
16
|
+
frame: number | null;
|
|
17
|
+
}
|
|
18
|
+
export declare function handleContextLost(options: ContextLostOptions): ContextLostResult;
|
|
19
|
+
export interface DestroyRendererOptions {
|
|
20
|
+
destroyed: boolean;
|
|
21
|
+
frame: number | null;
|
|
22
|
+
cancelViewAnimation: () => void;
|
|
23
|
+
resizeObserver: ResizeObserver;
|
|
24
|
+
removeCanvasEventListeners: () => void;
|
|
25
|
+
cancelDrag: () => void;
|
|
26
|
+
tileScheduler: TileScheduler;
|
|
27
|
+
contextLost: boolean;
|
|
28
|
+
gl: WebGL2RenderingContext;
|
|
29
|
+
cache: Map<string, CachedTile>;
|
|
30
|
+
tileProgram: TileVertexProgram;
|
|
31
|
+
pointProgram: PointProgram;
|
|
32
|
+
}
|
|
33
|
+
export interface DestroyRendererResult {
|
|
34
|
+
didDestroy: boolean;
|
|
35
|
+
frame: number | null;
|
|
36
|
+
}
|
|
37
|
+
export declare function destroyRenderer(options: DestroyRendererOptions): DestroyRendererResult;
|
|
38
|
+
//# sourceMappingURL=wsi-lifecycle-ops.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wsi-lifecycle-ops.d.ts","sourceRoot":"","sources":["../../../src/wsi/wsi-lifecycle-ops.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAGxF,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,aAAa,CAAC;IAC7B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,iBAAiB,CA0BhF;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,cAAc,EAAE,cAAc,CAAC;IAC/B,0BAA0B,EAAE,MAAM,IAAI,CAAC;IACvC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,OAAO,CAAC;IACrB,EAAE,EAAE,sBAAsB,CAAC;IAC3B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC/B,WAAW,EAAE,iBAAiB,CAAC;IAC/B,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,qBAAqB,CAwCtF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { WsiImageColorSettings } from "./types";
|
|
2
|
+
import type { NormalizedImageColorSettings, PointSizeByZoom, PointSizeStop } from "./wsi-renderer-types";
|
|
3
|
+
export declare const DEFAULT_ROTATION_DRAG_SENSITIVITY = 0.35;
|
|
4
|
+
export declare const MIN_POINT_SIZE_PX = 0.5;
|
|
5
|
+
export declare const MAX_POINT_SIZE_PX = 256;
|
|
6
|
+
export declare const DEFAULT_POINT_SIZE_STOPS: readonly PointSizeStop[];
|
|
7
|
+
export declare function toRadians(deg: number): number;
|
|
8
|
+
export declare function isSameArrayView(a: ArrayBufferView | null | undefined, b: ArrayBufferView | null | undefined): boolean;
|
|
9
|
+
export declare function clonePointSizeStops(stops: readonly PointSizeStop[]): PointSizeStop[];
|
|
10
|
+
export declare function normalizePointSizeStops(pointSizeByZoom: PointSizeByZoom | null | undefined): PointSizeStop[];
|
|
11
|
+
export declare function arePointSizeStopsEqual(a: readonly PointSizeStop[], b: readonly PointSizeStop[]): boolean;
|
|
12
|
+
export declare function resolvePointSizeByZoomStops(continuousZoom: number, stops: readonly PointSizeStop[]): number;
|
|
13
|
+
export declare function normalizeStrokeScale(value: number | null | undefined): number;
|
|
14
|
+
export declare function normalizePointInnerFillOpacity(value: number | null | undefined): number;
|
|
15
|
+
export declare function toNormalizedImageColorSettings(settings: WsiImageColorSettings | null | undefined): NormalizedImageColorSettings;
|
|
16
|
+
export declare function linearEasing(t: number): number;
|
|
17
|
+
export declare function normalizeViewTransitionDuration(duration: number | null | undefined): number;
|
|
18
|
+
export declare function normalizeZoomOverride(value: number | null | undefined): number | null;
|
|
19
|
+
export declare function normalizeTransitionEasing(easing: ((t: number) => number) | null | undefined): (t: number) => number;
|
|
20
|
+
//# sourceMappingURL=wsi-normalize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wsi-normalize.d.ts","sourceRoot":"","sources":["../../../src/wsi/wsi-normalize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,KAAK,EAAE,4BAA4B,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEzG,eAAO,MAAM,iCAAiC,OAAO,CAAC;AACtD,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,eAAO,MAAM,wBAAwB,EAAE,SAAS,aAAa,EAa5D,CAAC;AAUF,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE7C;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,EAAE,CAAC,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAGrH;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,GAAG,aAAa,EAAE,CAEpF;AAED,wBAAgB,uBAAuB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,GAAG,aAAa,EAAE,CAkB5G;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,SAAS,aAAa,EAAE,EAAE,CAAC,EAAE,SAAS,aAAa,EAAE,GAAG,OAAO,CASxG;AAED,wBAAgB,2BAA2B,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,aAAa,EAAE,GAAG,MAAM,CAoB3G;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAG7E;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAGvF;AAOD,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,GAAG,4BAA4B,CAS/H;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAG3F;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAGrF;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAEnH"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { WsiPointData } from "./types";
|
|
2
|
+
import type { PointProgram } from "./wsi-renderer-types";
|
|
3
|
+
export interface PointBufferRuntime {
|
|
4
|
+
pointCount: number;
|
|
5
|
+
usePointIndices: boolean;
|
|
6
|
+
pointBuffersDirty: boolean;
|
|
7
|
+
lastPointData: WsiPointData | null;
|
|
8
|
+
zeroFillModes: Uint8Array<ArrayBufferLike>;
|
|
9
|
+
lastPointPalette: Uint8Array<ArrayBufferLike> | null;
|
|
10
|
+
pointPaletteSize: number;
|
|
11
|
+
}
|
|
12
|
+
export declare function setPointPalette(runtime: PointBufferRuntime, gl: WebGL2RenderingContext, pointProgram: PointProgram, contextLost: boolean, colors: Uint8Array | null | undefined): PointBufferRuntime;
|
|
13
|
+
export declare function setPointData(runtime: PointBufferRuntime, gl: WebGL2RenderingContext, pointProgram: PointProgram, contextLost: boolean, points: WsiPointData | null | undefined): PointBufferRuntime;
|
|
14
|
+
//# sourceMappingURL=wsi-point-data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wsi-point-data.d.ts","sourceRoot":"","sources":["../../../src/wsi/wsi-point-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAC;IACnC,aAAa,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;IAC3C,gBAAgB,EAAE,UAAU,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC;IACrD,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAsCD,wBAAgB,eAAe,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,sBAAsB,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,GAAG,kBAAkB,CA0BpM;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,sBAAsB,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,GAAG,kBAAkB,CA8EnM"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { OrthoCamera } from "../core/ortho-camera";
|
|
2
|
+
import type { ScheduledTile, TileScheduler } from "./tile-scheduler";
|
|
3
|
+
import type { WsiImageSource } from "./types";
|
|
4
|
+
import type { Bounds, CachedTile, NormalizedImageColorSettings, PointProgram, TileVertexProgram } from "./wsi-renderer-types";
|
|
5
|
+
export interface RenderFrameOptions {
|
|
6
|
+
gl: WebGL2RenderingContext;
|
|
7
|
+
camera: OrthoCamera;
|
|
8
|
+
source: WsiImageSource;
|
|
9
|
+
cache: Map<string, CachedTile>;
|
|
10
|
+
frameSerial: number;
|
|
11
|
+
tileProgram: TileVertexProgram;
|
|
12
|
+
pointProgram: PointProgram;
|
|
13
|
+
imageColorSettings: NormalizedImageColorSettings;
|
|
14
|
+
pointCount: number;
|
|
15
|
+
usePointIndices: boolean;
|
|
16
|
+
pointPaletteSize: number;
|
|
17
|
+
pointStrokeScale: number;
|
|
18
|
+
pointInnerFillOpacity: number;
|
|
19
|
+
pointSizePx: number;
|
|
20
|
+
tileScheduler: TileScheduler;
|
|
21
|
+
getVisibleTiles: () => {
|
|
22
|
+
tier: number;
|
|
23
|
+
visible: ScheduledTile[];
|
|
24
|
+
};
|
|
25
|
+
getVisibleTilesForTier: (tier: number) => ScheduledTile[];
|
|
26
|
+
getViewBounds: () => Bounds;
|
|
27
|
+
intersectsBounds: (a: Bounds, b: Bounds) => boolean;
|
|
28
|
+
}
|
|
29
|
+
export interface RenderFrameResult {
|
|
30
|
+
tier: number;
|
|
31
|
+
visible: number;
|
|
32
|
+
rendered: number;
|
|
33
|
+
points: number;
|
|
34
|
+
fallback: number;
|
|
35
|
+
cacheHits: number;
|
|
36
|
+
cacheMisses: number;
|
|
37
|
+
drawCalls: number;
|
|
38
|
+
}
|
|
39
|
+
export declare function renderFrame(options: RenderFrameOptions): RenderFrameResult;
|
|
40
|
+
//# sourceMappingURL=wsi-render-pass.d.ts.map
|