diff --git a/typescript/package-lock.json b/typescript/package-lock.json index 36c1fc07d6..902700a84f 100644 --- a/typescript/package-lock.json +++ b/typescript/package-lock.json @@ -43,8 +43,8 @@ "@types/react-redux": "^7.1.34", "@types/uuid": "^10.0.0", "@types/workerpool": "^6.4.7", - "@typescript-eslint/eslint-plugin": "^8.16.0", - "@typescript-eslint/parser": "^8.16.0", + "@typescript-eslint/eslint-plugin": "^8.20.0", + "@typescript-eslint/parser": "^8.20.0", "assert": "^2.0.0", "babel-jest": "^29.6.0", "copyfiles": "^2.0.0", @@ -10409,20 +10409,20 @@ } }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.16.0.tgz", - "integrity": "sha512-5YTHKV8MYlyMI6BaEG7crQ9BhSc8RxzshOReKwZwRWN0+XvvTOm+L/UYLCYxFpfwYuAAqhxiq4yae0CMFwbL7Q==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.20.0.tgz", + "integrity": "sha512-naduuphVw5StFfqp4Gq4WhIBE2gN1GEmMUExpJYknZJdRnc+2gDzB8Z3+5+/Kv33hPQRDGzQO/0opHE72lZZ6A==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.16.0", - "@typescript-eslint/type-utils": "8.16.0", - "@typescript-eslint/utils": "8.16.0", - "@typescript-eslint/visitor-keys": "8.16.0", + "@typescript-eslint/scope-manager": "8.20.0", + "@typescript-eslint/type-utils": "8.20.0", + "@typescript-eslint/utils": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10433,24 +10433,20 @@ }, "peerDependencies": { "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, "node_modules/@typescript-eslint/parser": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.16.0.tgz", - "integrity": "sha512-D7DbgGFtsqIPIFMPJwCad9Gfi/hC0PWErRRHFnaCWoEDYi5tQUDiJCTmGUbBiLzjqAck4KcXt9Ayj0CNlIrF+w==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.20.0.tgz", + "integrity": "sha512-gKXG7A5HMyjDIedBi6bUrDcun8GIjnI8qOwVLiY3rx6T/sHP/19XLJOnIq/FgQvWLHja5JN/LSE7eklNBr612g==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.16.0", - "@typescript-eslint/types": "8.16.0", - "@typescript-eslint/typescript-estree": "8.16.0", - "@typescript-eslint/visitor-keys": "8.16.0", + "@typescript-eslint/scope-manager": "8.20.0", + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/typescript-estree": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0", "debug": "^4.3.4" }, "engines": { @@ -10461,22 +10457,18 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.16.0.tgz", - "integrity": "sha512-mwsZWubQvBki2t5565uxF0EYvG+FwdFb8bMtDuGQLdCCnGPrDEDvm1gtfynuKlnpzeBRqdFCkMf9jg1fnAK8sg==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.20.0.tgz", + "integrity": "sha512-J7+VkpeGzhOt3FeG1+SzhiMj9NzGD/M6KoGn9f4dbz3YzK9hvbhVTmLj/HiTp9DazIzJ8B4XcM80LrR9Dm1rJw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.16.0", - "@typescript-eslint/visitor-keys": "8.16.0" + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10487,15 +10479,15 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.16.0.tgz", - "integrity": "sha512-IqZHGG+g1XCWX9NyqnI/0CX5LL8/18awQqmkZSl2ynn8F76j579dByc0jhfVSnSnhf7zv76mKBQv9HQFKvDCgg==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.20.0.tgz", + "integrity": "sha512-bPC+j71GGvA7rVNAHAtOjbVXbLN5PkwqMvy1cwGeaxUoRQXVuKCebRoLzm+IPW/NtFFpstn1ummSIasD5t60GA==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "8.16.0", - "@typescript-eslint/utils": "8.16.0", + "@typescript-eslint/typescript-estree": "8.20.0", + "@typescript-eslint/utils": "8.20.0", "debug": "^4.3.4", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10505,18 +10497,14 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, "node_modules/@typescript-eslint/types": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.16.0.tgz", - "integrity": "sha512-NzrHj6thBAOSE4d9bsuRNMvk+BvaQvmY4dDglgkgGC0EW/tB3Kelnp3tAKH87GEwzoxgeQn9fNGRyFJM/xd+GQ==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.20.0.tgz", + "integrity": "sha512-cqaMiY72CkP+2xZRrFt3ExRBu0WmVitN/rYPZErA80mHjHx/Svgp8yfbzkJmDoQ/whcytOPO9/IZXnOc+wigRA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10527,19 +10515,19 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.16.0.tgz", - "integrity": "sha512-E2+9IzzXMc1iaBy9zmo+UYvluE3TW7bCGWSF41hVWUE01o8nzr1rvOQYSxelxr6StUvRcTMe633eY8mXASMaNw==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.20.0.tgz", + "integrity": "sha512-Y7ncuy78bJqHI35NwzWol8E0X7XkRVS4K4P4TCyzWkOJih5NDvtoRDW4Ba9YJJoB2igm9yXDdYI/+fkiiAxPzA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.16.0", - "@typescript-eslint/visitor-keys": "8.16.0", + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10548,10 +10536,8 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "peerDependencies": { + "typescript": ">=4.8.4 <5.8.0" } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { @@ -10591,15 +10577,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.16.0.tgz", - "integrity": "sha512-C1zRy/mOL8Pj157GiX4kaw7iyRLKfJXBR3L82hk5kS/GyHcOFmy4YUq/zfZti72I9wnuQtA/+xzft4wCC8PJdA==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.20.0.tgz", + "integrity": "sha512-dq70RUw6UK9ei7vxc4KQtBRk7qkHZv447OUZ6RPQMQl71I3NZxQJX/f32Smr+iqWrB02pHKn2yAdHBb0KNrRMA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.16.0", - "@typescript-eslint/types": "8.16.0", - "@typescript-eslint/typescript-estree": "8.16.0" + "@typescript-eslint/scope-manager": "8.20.0", + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/typescript-estree": "8.20.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10609,21 +10595,17 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.8.0" } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.16.0.tgz", - "integrity": "sha512-pq19gbaMOmFE3CbL0ZB8J8BFCo2ckfHBfaIsaOZgBIF4EoISJIdLX5xRhd0FGB0LlHReNRuzoJoMGpTjq8F2CQ==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.20.0.tgz", + "integrity": "sha512-v/BpkeeYAsPkKCkR8BDwcno0llhzWVqPOamQrAEMdpZav2Y9OVjd9dwJyBLJWwf335B5DmlifECIkZRJCaGaHA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.16.0", + "@typescript-eslint/types": "8.20.0", "eslint-visitor-keys": "^4.2.0" }, "engines": { @@ -32817,15 +32799,15 @@ } }, "node_modules/ts-api-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", - "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.0.tgz", + "integrity": "sha512-xCt/TOAc+EOHS1XPnijD3/yzpH6qg2xppZO1YDqGoVsNXfQfzHpOdNuXwrwOU8u4ITXJyDCTyt8w5g1sZv9ynQ==", "dev": true, "engines": { - "node": ">=16" + "node": ">=18.12" }, "peerDependencies": { - "typescript": ">=4.2.0" + "typescript": ">=4.8.4" } }, "node_modules/ts-dedent": { @@ -34928,7 +34910,7 @@ }, "packages/group-tree-plot": { "name": "@webviz/group-tree-plot", - "version": "1.3.22", + "version": "1.3.23", "license": "MPL-2.0", "dependencies": { "d3": "^7.8.2", @@ -34941,7 +34923,7 @@ }, "packages/subsurface-viewer": { "name": "@webviz/subsurface-viewer", - "version": "1.5.1", + "version": "1.5.2", "license": "MPL-2.0", "dependencies": { "@deck.gl-community/editable-layers": "^9.0.3", @@ -35156,7 +35138,7 @@ }, "packages/well-completions-plot": { "name": "@webviz/well-completions-plot", - "version": "1.5.18", + "version": "1.5.19", "license": "MPL-2.0", "dependencies": { "react-resize-detector": "^11.0.1", @@ -35196,7 +35178,7 @@ }, "packages/well-log-viewer": { "name": "@webviz/well-log-viewer", - "version": "2.2.4", + "version": "2.2.5", "license": "MPL-2.0", "dependencies": { "@emerson-eps/color-tables": "^0.4.85", @@ -35248,7 +35230,7 @@ }, "packages/wsc-common": { "name": "@webviz/wsc-common", - "version": "1.0.13", + "version": "1.0.14", "license": "MPL-2.0", "dependencies": { "@deck.gl/core": "^9.0.40", diff --git a/typescript/package.json b/typescript/package.json index d67dc0e4b1..122a1c7bec 100644 --- a/typescript/package.json +++ b/typescript/package.json @@ -76,8 +76,8 @@ "@types/react-redux": "^7.1.34", "@types/uuid": "^10.0.0", "@types/workerpool": "^6.4.7", - "@typescript-eslint/eslint-plugin": "^8.16.0", - "@typescript-eslint/parser": "^8.16.0", + "@typescript-eslint/eslint-plugin": "^8.20.0", + "@typescript-eslint/parser": "^8.20.0", "assert": "^2.0.0", "babel-jest": "^29.6.0", "copyfiles": "^2.0.0", diff --git a/typescript/packages/subsurface-viewer/CHANGELOG.md b/typescript/packages/subsurface-viewer/CHANGELOG.md index 7842e51754..c1018d1138 100644 --- a/typescript/packages/subsurface-viewer/CHANGELOG.md +++ b/typescript/packages/subsurface-viewer/CHANGELOG.md @@ -1,3 +1,10 @@ +# [1.6.0](https://github.com/equinor/webviz-subsurface-components/compare/subsurface-viewer@1.5.2...subsurface-viewer@1.6.0) (2025-01-20) + + +### Features + +* Expose `onDrag` and `getCursor` functions from `DeckGL` component ([#2415](https://github.com/equinor/webviz-subsurface-components/issues/2415)) ([fa51d16](https://github.com/equinor/webviz-subsurface-components/commit/fa51d16bb95a3405cd90751be3512300a98f8994)) + ## [1.5.2](https://github.com/equinor/webviz-subsurface-components/compare/subsurface-viewer@1.5.1...subsurface-viewer@1.5.2) (2025-01-20) diff --git a/typescript/packages/subsurface-viewer/package.json b/typescript/packages/subsurface-viewer/package.json index e5efc229c6..34f66a8b02 100644 --- a/typescript/packages/subsurface-viewer/package.json +++ b/typescript/packages/subsurface-viewer/package.json @@ -1,6 +1,6 @@ { "name": "@webviz/subsurface-viewer", - "version": "1.5.2", + "version": "1.6.0", "description": "3D visualization component for subsurface reservoir data", "keywords": [ "subsurface", diff --git a/typescript/packages/subsurface-viewer/src/components/Map.tsx b/typescript/packages/subsurface-viewer/src/components/Map.tsx index 0751365b20..a83e972118 100644 --- a/typescript/packages/subsurface-viewer/src/components/Map.tsx +++ b/typescript/packages/subsurface-viewer/src/components/Map.tsx @@ -20,7 +20,7 @@ import type { View, Viewport, } from "@deck.gl/core"; -import type { DeckGLRef } from "@deck.gl/react"; +import type { DeckGLProps, DeckGLRef } from "@deck.gl/react"; import DeckGL from "@deck.gl/react"; import { @@ -350,6 +350,16 @@ export interface MapProps { onDragStart?: (info: PickingInfo, event: MjolnirGestureEvent) => void; onDragEnd?: (info: PickingInfo, event: MjolnirGestureEvent) => void; + onDrag?: (info: PickingInfo, event: MjolnirGestureEvent) => void; + + /** + * Override default cursor with a callback. + * @param cursorState + * @returns cursor string + * @default "grabbing" when dragging, "default" otherwise + * @see https://developer.mozilla.org/en-US/docs/Web/CSS/cursor + */ + getCursor?: DeckGLProps["getCursor"]; triggerResetMultipleWells?: number; @@ -421,6 +431,8 @@ const Map: React.FC = ({ onRenderingProgress, onDragStart, onDragEnd, + onDrag, + getCursor, lights, triggerResetMultipleWells, verticalScale, @@ -758,6 +770,20 @@ const Map: React.FC = ({ [getCameraPosition, viewController] ); + const getCursorFunc = useCallback( + function getCursorFunc( + cursorState: Parameters< + Exclude + >[0] + ): string { + if (getCursor) { + return getCursor(cursorState); + } + return cursorState.isDragging ? "grabbing" : "default"; + }, + [getCursor] + ); + const effects = parseLights(lights) ?? []; const [deckGlViews, deckGlViewState] = useMemo(() => { @@ -831,9 +857,7 @@ const Map: React.FC = ({ }, colorTables: colorTables, }} - getCursor={({ isDragging }): string => - isDragging ? "grabbing" : "default" - } + getCursor={getCursorFunc} getTooltip={getTooltip} ref={deckRef} onViewStateChange={onViewStateChange} @@ -843,6 +867,7 @@ const Map: React.FC = ({ effects={effects} onDragStart={onDragStart} onDragEnd={onDragEnd} + onDrag={onDrag} onResize={onResize} pickingRadius={pickingRadius} > diff --git a/typescript/packages/well-log-viewer/CHANGELOG.md b/typescript/packages/well-log-viewer/CHANGELOG.md index 4ea7ec8390..a4ce8c3483 100644 --- a/typescript/packages/well-log-viewer/CHANGELOG.md +++ b/typescript/packages/well-log-viewer/CHANGELOG.md @@ -1,3 +1,10 @@ +## [2.2.5](https://github.com/equinor/webviz-subsurface-components/compare/well-log-viewer@2.2.4...well-log-viewer@2.2.5) (2025-01-20) + + +### Bug Fixes + +* [Snyk] Security upgrade terser-webpack-plugin from 5.3.10 to 5.3.11 ([#2395](https://github.com/equinor/webviz-subsurface-components/issues/2395)) ([2a9a06f](https://github.com/equinor/webviz-subsurface-components/commit/2a9a06f4526736622025811e9248995f2783a039)) + ## [2.2.4](https://github.com/equinor/webviz-subsurface-components/compare/well-log-viewer@2.2.3...well-log-viewer@2.2.4) (2025-01-17) diff --git a/typescript/packages/well-log-viewer/package.json b/typescript/packages/well-log-viewer/package.json index 979104b51d..1ed066d55f 100644 --- a/typescript/packages/well-log-viewer/package.json +++ b/typescript/packages/well-log-viewer/package.json @@ -1,6 +1,6 @@ { "name": "@webviz/well-log-viewer", - "version": "2.2.4", + "version": "2.2.5", "description": "", "main": "dist/index.js", "types": "dist/index.d.ts",