@vertexvis/viewer 0.22.0-canary.3 → 0.22.0-testing.0

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.
Files changed (50) hide show
  1. package/dist/cjs/index.cjs.js +4 -1
  2. package/dist/cjs/index.cjs.js.map +1 -1
  3. package/dist/cjs/multiElementInteractionHandler-93bd9593.js.map +1 -1
  4. package/dist/cjs/{queries-d9cd5ec1.js → queries-918bb133.js} +315 -41
  5. package/dist/cjs/queries-918bb133.js.map +1 -0
  6. package/dist/cjs/vertex-viewer.cjs.entry.js +3 -256
  7. package/dist/cjs/vertex-viewer.cjs.entry.js.map +1 -1
  8. package/dist/collection/index.js +1 -0
  9. package/dist/collection/index.js.map +1 -1
  10. package/dist/collection/lib/interactions/baseInteractionHandler.js.map +1 -1
  11. package/dist/collection/lib/interactions/index.js +1 -0
  12. package/dist/collection/lib/interactions/index.js.map +1 -1
  13. package/dist/collection/lib/interactions/mouseInteractions.js +6 -0
  14. package/dist/collection/lib/interactions/mouseInteractions.js.map +1 -1
  15. package/dist/collection/lib/interactions/pointerInteractionHandler.js +6 -0
  16. package/dist/collection/lib/interactions/pointerInteractionHandler.js.map +1 -1
  17. package/dist/components/index.js +1 -1
  18. package/dist/components/multiElementInteractionHandler.js.map +1 -1
  19. package/dist/components/queries.js +269 -2
  20. package/dist/components/queries.js.map +1 -1
  21. package/dist/components/vertex-viewer.js +3 -256
  22. package/dist/components/vertex-viewer.js.map +1 -1
  23. package/dist/esm/index.js +3 -1
  24. package/dist/esm/index.js.map +1 -1
  25. package/dist/esm/index.mjs +3 -1
  26. package/dist/esm/multiElementInteractionHandler-8b48d16e.js.map +1 -1
  27. package/dist/esm/{queries-2834b01d.js → queries-e3684cb0.js} +270 -3
  28. package/dist/esm/queries-e3684cb0.js.map +1 -0
  29. package/dist/esm/vertex-viewer.entry.js +3 -256
  30. package/dist/esm/vertex-viewer.entry.js.map +1 -1
  31. package/dist/types/index.d.ts +1 -0
  32. package/dist/types/lib/interactions/baseInteractionHandler.d.ts +6 -6
  33. package/dist/types/lib/interactions/index.d.ts +1 -0
  34. package/dist/types/lib/interactions/mouseInteractions.d.ts +2 -0
  35. package/dist/types/lib/interactions/pointerInteractionHandler.d.ts +2 -0
  36. package/dist/viewer/index.esm.js +1 -1
  37. package/dist/viewer/index.esm.js.map +1 -1
  38. package/dist/viewer/p-0ab3b3cc.js +5 -0
  39. package/dist/viewer/p-0ab3b3cc.js.map +1 -0
  40. package/dist/viewer/p-8a56c008.entry.js +5 -0
  41. package/dist/viewer/p-8a56c008.entry.js.map +1 -0
  42. package/dist/viewer/p-bf67f570.js.map +1 -1
  43. package/dist/viewer/viewer.esm.js +1 -1
  44. package/package.json +7 -7
  45. package/dist/cjs/queries-d9cd5ec1.js.map +0 -1
  46. package/dist/esm/queries-2834b01d.js.map +0 -1
  47. package/dist/viewer/p-339774b3.js +0 -5
  48. package/dist/viewer/p-339774b3.js.map +0 -1
  49. package/dist/viewer/p-b8dfa0c1.entry.js +0 -5
  50. package/dist/viewer/p-b8dfa0c1.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["src/lib/interactions/baseInteractionHandler.ts","src/lib/interactions/multiElementInteractionHandler.ts"],"names":["SCROLL_WHEEL_DELTA_PERCENTAGES","DEFAULT_FONT_SIZE","DEFAULT_LINE_HEIGHT","BaseInteractionHandler","[object Object]","downEvent","upEvent","moveEvent","rotateInteraction","rotatePointInteraction","zoomInteraction","panInteraction","twistInteraction","pivotInteraction","getConfig","this","primaryInteraction","isDragging","keyboardControls","disableIndividualInteractions","primaryInteractionTypeChange","EventDispatcher","handleDownEvent","bind","handleMouseWheel","handleWindowMove","handleWindowUp","handleDoubleClick","element","api","interactionApi","addEventListener","passive","_a","removeEventListener","_b","_c","undefined","listener","on","type","currentInteraction","draggingInteraction","point","getPosition","resetLastAngle","setPosition","getType","lastPrimaryRotateInteraction","emit","event","preventDefault","interactionTimer","window","setTimeout","downPosition","Point","create","screenX","screenY","downPositionCanvas","getCanvasPosition","lastMoveEvent","interactions","interactionDelay","position","pixelThreshold","isTouch","distance","beginDrag","drag","endDrag","clearTimeout","detail","buttons","viewAll","metaKey","shiftKey","altKey","ctrlKey","clientX","clientY","delta","wheelDeltaToPixels","deltaY","deltaMode","rect","getBoundingClientRect","getMouseClientPosition","forEach","percentage","index","zoomDelta","zoomToPoint","computedBodyStyle","getComputedStyle","document","body","defaultLineHeight","fontSize","isNaN","parseFloat","lineHeight","height","innerHeight","canvasBounds","canvasOffset","left","top","subtract","PointerEvent","pointerType","MultiElementInteractionHandler","registeredExternalElements","external","id","UUID","disposable","addEventListenersToElement","externalElement","dispose","Object","fromEntries","entries","filter","key","keys","deregisterAdditionalElementById"],"mappings":"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","sourcesContent":["import { Point } from '@vertexvis/geometry';\nimport { Disposable, EventDispatcher, Listener } from '@vertexvis/utils';\n\nimport { ConfigProvider } from '../config';\nimport { getMouseClientPosition } from '../dom';\nimport { InteractionApi } from './interactionApi';\nimport { BaseEvent } from './interactionEvent';\nimport { InteractionHandler } from './interactionHandler';\nimport {\n MouseInteraction,\n PanInteraction,\n PivotInteraction,\n RotateInteraction,\n RotatePointInteraction,\n TwistInteraction,\n ZoomInteraction,\n} from './mouseInteractions';\n\nexport type InteractionType =\n | 'rotate'\n | 'zoom'\n | 'pan'\n | 'twist'\n | 'rotate-point'\n | 'pivot';\n\nconst SCROLL_WHEEL_DELTA_PERCENTAGES = [0.2, 0.15, 0.25, 0.25, 0.15];\nconst DEFAULT_FONT_SIZE = 16;\nconst DEFAULT_LINE_HEIGHT = 1.2;\n\nexport abstract class BaseInteractionHandler implements InteractionHandler {\n protected interactionApi?: InteractionApi;\n protected element?: HTMLElement;\n protected downPosition?: Point.Point;\n private downPositionCanvas?: Point.Point;\n private primaryInteraction: MouseInteraction = this.rotateInteraction;\n private currentInteraction?: MouseInteraction;\n private draggingInteraction: MouseInteraction | undefined;\n private lastPrimaryRotateInteraction?: MouseInteraction;\n private isDragging = false;\n private lastMoveEvent?: BaseEvent;\n private interactionTimer?: number;\n private keyboardControls = false;\n\n protected disableIndividualInteractions = false;\n\n private computedBodyStyle?: CSSStyleDeclaration;\n\n private primaryInteractionTypeChange = new EventDispatcher<void>();\n\n public constructor(\n protected downEvent: 'mousedown' | 'pointerdown',\n protected upEvent: 'mouseup' | 'pointerup',\n protected moveEvent: 'mousemove' | 'pointermove',\n private rotateInteraction: RotateInteraction,\n private rotatePointInteraction: RotatePointInteraction,\n private zoomInteraction: ZoomInteraction,\n private panInteraction: PanInteraction,\n private twistInteraction: TwistInteraction,\n private pivotInteraction: PivotInteraction,\n private getConfig: ConfigProvider\n ) {\n this.handleDownEvent = this.handleDownEvent.bind(this);\n this.handleMouseWheel = this.handleMouseWheel.bind(this);\n this.handleWindowMove = this.handleWindowMove.bind(this);\n this.handleWindowUp = this.handleWindowUp.bind(this);\n this.handleDoubleClick = this.handleDoubleClick.bind(this);\n }\n\n public initialize(element: HTMLElement, api: InteractionApi): void {\n this.element = element;\n this.interactionApi = api;\n element.addEventListener(this.downEvent, this.handleDownEvent);\n element.addEventListener('mousedown', this.handleDoubleClick);\n element.addEventListener('wheel', this.handleMouseWheel, {\n passive: false,\n });\n }\n\n public dispose(): void {\n this.element?.removeEventListener(this.downEvent, this.handleDownEvent);\n this.element?.removeEventListener('mousedown', this.handleDoubleClick);\n this.element?.removeEventListener('wheel', this.handleMouseWheel);\n this.element = undefined;\n }\n\n public onPrimaryInteractionTypeChange(listener: Listener<void>): Disposable {\n return this.primaryInteractionTypeChange.on(listener);\n }\n\n public setCurrentInteractionType(type?: InteractionType): void {\n switch (type) {\n case 'rotate':\n this.currentInteraction = this.rotateInteraction;\n break;\n case 'zoom':\n this.currentInteraction = this.zoomInteraction;\n break;\n case 'pan':\n this.currentInteraction = this.panInteraction;\n break;\n case 'twist':\n this.currentInteraction = this.twistInteraction;\n break;\n case 'rotate-point':\n this.currentInteraction = this.rotatePointInteraction;\n break;\n case 'pivot':\n this.currentInteraction = this.pivotInteraction;\n break;\n default:\n this.currentInteraction = undefined;\n }\n\n if (this.draggingInteraction) {\n const point = this.draggingInteraction.getPosition();\n this.draggingInteraction =\n this.currentInteraction || this.primaryInteraction;\n this.interactionApi?.resetLastAngle();\n this.draggingInteraction.setPosition(point);\n }\n }\n\n public getPrimaryInteractionType(): InteractionType {\n return this.primaryInteraction.getType();\n }\n\n public getCurrentInteractionType(): InteractionType {\n return (this.currentInteraction || this.primaryInteraction).getType();\n }\n\n public setPrimaryInteractionType(type: InteractionType): void {\n switch (type) {\n case 'rotate':\n this.primaryInteraction = this.rotateInteraction;\n this.lastPrimaryRotateInteraction = this.rotateInteraction;\n break;\n case 'rotate-point':\n this.primaryInteraction = this.rotatePointInteraction;\n this.lastPrimaryRotateInteraction = this.rotatePointInteraction;\n break;\n case 'zoom':\n this.primaryInteraction = this.zoomInteraction;\n break;\n case 'pan':\n this.primaryInteraction = this.panInteraction;\n break;\n case 'pivot':\n this.primaryInteraction = this.pivotInteraction;\n break;\n }\n this.primaryInteractionTypeChange.emit();\n }\n\n public setDefaultKeyboardControls(keyboardControls: boolean): void {\n this.keyboardControls = keyboardControls;\n }\n\n protected handleDownEvent(event: BaseEvent): void {\n // Prevent selection of any text while interacting with the model.\n event.preventDefault();\n\n this.interactionTimer = window.setTimeout(() => {\n this.downPosition = Point.create(event.screenX, event.screenY);\n this.downPositionCanvas = this.getCanvasPosition(event);\n this.interactionTimer = undefined;\n\n // Perform the current movement in the case that the interaction timer elapses\n if (this.lastMoveEvent != null) {\n this.handleWindowMove(this.lastMoveEvent);\n }\n }, this.getConfig().interactions.interactionDelay);\n\n window.addEventListener(this.moveEvent, this.handleWindowMove);\n window.addEventListener(this.upEvent, this.handleWindowUp);\n }\n\n protected handleWindowMove(event: BaseEvent): void {\n if (this.interactionTimer == null) {\n if (this.disableIndividualInteractions) {\n return;\n }\n\n const position = Point.create(event.screenX, event.screenY);\n const pixelThreshold =\n this.interactionApi != null\n ? this.interactionApi.pixelThreshold(this.isTouch(event))\n : 2;\n if (\n this.downPosition != null &&\n Point.distance(position, this.downPosition) >= pixelThreshold &&\n !this.isDragging\n ) {\n this.beginDrag(event);\n this.isDragging = true;\n }\n\n if (this.isDragging) {\n this.drag(event);\n }\n }\n\n this.lastMoveEvent = event;\n }\n\n protected async handleWindowUp(event: BaseEvent): Promise<void> {\n if (this.isDragging) {\n this.endDrag(event);\n this.isDragging = false;\n }\n\n if (this.interactionTimer != null) {\n window.clearTimeout(this.interactionTimer);\n this.interactionTimer = undefined;\n }\n\n window.removeEventListener(this.moveEvent, this.handleWindowMove);\n window.removeEventListener(this.upEvent, this.handleWindowUp);\n this.lastMoveEvent = undefined;\n }\n\n protected async handleDoubleClick(event: BaseEvent): Promise<void> {\n // event.detail is the number of clicks that have happened recently. If the number is 2, then the user double clicked.\n if (\n event.detail === 2 &&\n event.buttons === 4 &&\n this.interactionApi != null\n ) {\n this.interactionApi.viewAll();\n }\n }\n\n protected beginDrag(event: BaseEvent): void {\n if (this.keyboardControls && event.metaKey && event.shiftKey) {\n this.currentInteraction = this.rotatePointInteraction;\n } else if (this.keyboardControls && event.shiftKey && event.altKey) {\n this.currentInteraction = this.twistInteraction;\n } else if (this.keyboardControls && event.shiftKey) {\n this.currentInteraction = this.zoomInteraction;\n } else if (this.keyboardControls && (event.metaKey || event.ctrlKey)) {\n this.currentInteraction = this.panInteraction;\n } else if (this.keyboardControls && event.altKey) {\n this.currentInteraction = this.rotateInteraction;\n }\n\n if (event.buttons === 1) {\n this.draggingInteraction =\n this.currentInteraction || this.primaryInteraction;\n } else if (event.buttons === 2) {\n this.draggingInteraction = this.panInteraction;\n } else if (event.buttons === 4) {\n this.draggingInteraction =\n this.lastPrimaryRotateInteraction ?? this.rotateInteraction;\n }\n\n if (\n this.draggingInteraction != null &&\n this.interactionApi != null &&\n this.element != null\n ) {\n // Ensure any scroll wheel interactions have been ended prior to beginning\n // another interaction to prevent the interaction from being ended early.\n this.zoomInteraction.endDrag(event, this.interactionApi);\n\n this.draggingInteraction.beginDrag(\n event,\n this.downPositionCanvas || Point.create(event.clientX, event.clientY),\n this.interactionApi,\n this.element\n );\n }\n }\n\n protected drag(event: BaseEvent): void {\n if (this.keyboardControls && event.altKey && event.shiftKey) {\n this.currentInteraction = this.twistInteraction;\n } else {\n this.currentInteraction = undefined;\n }\n this.draggingInteraction =\n this.currentInteraction ||\n this.draggingInteraction ||\n this.primaryInteraction;\n if (this.draggingInteraction != null && this.interactionApi != null) {\n this.draggingInteraction.drag(event, this.interactionApi);\n }\n }\n\n protected endDrag(event: BaseEvent): void {\n if (\n this.keyboardControls &&\n this.currentInteraction === this.twistInteraction\n ) {\n this.currentInteraction = undefined;\n }\n\n if (this.draggingInteraction != null && this.interactionApi != null) {\n this.draggingInteraction.endDrag(event, this.interactionApi);\n this.draggingInteraction = undefined;\n }\n }\n\n protected handleMouseWheel(event: WheelEvent): void {\n event.preventDefault();\n\n if (\n this.element != null &&\n this.interactionApi != null &&\n event.buttons !== 4\n ) {\n const delta =\n -this.wheelDeltaToPixels(event.deltaY, event.deltaMode) / 10;\n const rect = this.element.getBoundingClientRect();\n const point = getMouseClientPosition(event, rect);\n\n SCROLL_WHEEL_DELTA_PERCENTAGES.forEach((percentage, index) => {\n window.setTimeout(() => {\n if (this.interactionApi != null) {\n const zoomDelta = delta * percentage;\n this.zoomInteraction.zoomToPoint(\n point,\n zoomDelta,\n this.interactionApi\n );\n }\n }, index * 2);\n });\n }\n }\n\n protected wheelDeltaToPixels(deltaY: number, deltaMode: number): number {\n if (this.computedBodyStyle == null) {\n this.computedBodyStyle = window.getComputedStyle(document.body);\n }\n\n const defaultLineHeight =\n this.computedBodyStyle.fontSize != null &&\n this.computedBodyStyle.fontSize !== '' &&\n !isNaN(parseFloat(this.computedBodyStyle.fontSize))\n ? parseFloat(this.computedBodyStyle.fontSize) * DEFAULT_LINE_HEIGHT\n : DEFAULT_FONT_SIZE * DEFAULT_LINE_HEIGHT;\n\n if (deltaMode === 1) {\n // deltaMode 1 corresponds to DOM_DELTA_LINE, which computes deltas in lines\n return this.computedBodyStyle.lineHeight != null &&\n this.computedBodyStyle.lineHeight !== '' &&\n !isNaN(parseFloat(this.computedBodyStyle.lineHeight))\n ? deltaY * parseFloat(this.computedBodyStyle.lineHeight)\n : deltaY * defaultLineHeight;\n } else if (deltaMode === 2) {\n // deltaMode 2 corresponds to DOM_DELTA_PAGE, which computes deltas in pages\n return this.computedBodyStyle.height != null &&\n this.computedBodyStyle.height !== '' &&\n !isNaN(parseFloat(this.computedBodyStyle.height))\n ? deltaY * parseFloat(this.computedBodyStyle.height)\n : deltaY * window.innerHeight;\n }\n // deltaMode 0 corresponds to DOM_DELTA_PIXEL, which computes deltas in pixels\n return deltaY;\n }\n\n protected getCanvasPosition(event: BaseEvent): Point.Point | undefined {\n const canvasBounds = this.element?.getBoundingClientRect();\n const canvasOffset =\n canvasBounds != null\n ? Point.create(canvasBounds.left, canvasBounds.top)\n : undefined;\n\n return canvasOffset != null\n ? Point.subtract(Point.create(event.clientX, event.clientY), canvasOffset)\n : undefined;\n }\n\n protected isTouch(event: BaseEvent): boolean {\n return window.PointerEvent != null && event instanceof PointerEvent\n ? event.pointerType === 'touch'\n : false;\n }\n}\n","import { Disposable, UUID } from '@vertexvis/utils';\n\nimport { BaseInteractionHandler } from './baseInteractionHandler';\n\nexport abstract class MultiElementInteractionHandler extends BaseInteractionHandler {\n protected registeredExternalElements: Record<UUID.UUID, Disposable> = {};\n\n public registerAdditionalElement(external: HTMLElement): Disposable {\n const id = UUID.create();\n const disposable = this.addEventListenersToElement(external);\n\n this.registeredExternalElements[id] = disposable;\n return disposable;\n }\n\n public deregisterAdditionalElementById(id: UUID.UUID): void {\n const externalElement = this.registeredExternalElements[id];\n\n externalElement.dispose();\n\n this.registeredExternalElements = Object.fromEntries(\n Object.entries(this.registeredExternalElements).filter(\n ([key]) => key !== id\n )\n );\n }\n\n protected deregisterAllListeners(): void {\n Object.keys(this.registeredExternalElements).forEach((id) =>\n this.deregisterAdditionalElementById(id)\n );\n }\n\n public abstract addEventListenersToElement(element?: HTMLElement): Disposable;\n}\n"]}
1
+ {"version":3,"sources":["src/lib/interactions/baseInteractionHandler.ts","src/lib/interactions/multiElementInteractionHandler.ts"],"names":["SCROLL_WHEEL_DELTA_PERCENTAGES","DEFAULT_FONT_SIZE","DEFAULT_LINE_HEIGHT","BaseInteractionHandler","[object Object]","downEvent","upEvent","moveEvent","rotateInteraction","rotatePointInteraction","zoomInteraction","panInteraction","twistInteraction","pivotInteraction","getConfig","this","primaryInteraction","isDragging","keyboardControls","disableIndividualInteractions","primaryInteractionTypeChange","EventDispatcher","handleDownEvent","bind","handleMouseWheel","handleWindowMove","handleWindowUp","handleDoubleClick","element","api","interactionApi","addEventListener","passive","_a","removeEventListener","_b","_c","undefined","listener","on","type","currentInteraction","draggingInteraction","point","getPosition","resetLastAngle","setPosition","getType","lastPrimaryRotateInteraction","emit","event","preventDefault","interactionTimer","window","setTimeout","downPosition","Point","create","screenX","screenY","downPositionCanvas","getCanvasPosition","lastMoveEvent","interactions","interactionDelay","position","pixelThreshold","isTouch","distance","beginDrag","drag","endDrag","clearTimeout","detail","buttons","viewAll","metaKey","shiftKey","altKey","ctrlKey","clientX","clientY","delta","wheelDeltaToPixels","deltaY","deltaMode","rect","getBoundingClientRect","getMouseClientPosition","forEach","percentage","index","zoomDelta","zoomToPoint","computedBodyStyle","getComputedStyle","document","body","defaultLineHeight","fontSize","isNaN","parseFloat","lineHeight","height","innerHeight","canvasBounds","canvasOffset","left","top","subtract","PointerEvent","pointerType","MultiElementInteractionHandler","registeredExternalElements","external","id","UUID","disposable","addEventListenersToElement","externalElement","dispose","Object","fromEntries","entries","filter","key","keys","deregisterAdditionalElementById"],"mappings":"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","sourcesContent":["import { Point } from '@vertexvis/geometry';\nimport { Disposable, EventDispatcher, Listener } from '@vertexvis/utils';\n\nimport { ConfigProvider } from '../config';\nimport { getMouseClientPosition } from '../dom';\nimport { InteractionApi } from './interactionApi';\nimport { BaseEvent } from './interactionEvent';\nimport { InteractionHandler } from './interactionHandler';\nimport {\n MouseInteraction,\n PanInteraction,\n PivotInteraction,\n RotateInteraction,\n RotatePointInteraction,\n TwistInteraction,\n ZoomInteraction,\n} from './mouseInteractions';\n\nexport type InteractionType =\n | 'rotate'\n | 'zoom'\n | 'pan'\n | 'twist'\n | 'rotate-point'\n | 'pivot';\n\nconst SCROLL_WHEEL_DELTA_PERCENTAGES = [0.2, 0.15, 0.25, 0.25, 0.15];\nconst DEFAULT_FONT_SIZE = 16;\nconst DEFAULT_LINE_HEIGHT = 1.2;\n\nexport abstract class BaseInteractionHandler implements InteractionHandler {\n protected interactionApi?: InteractionApi;\n protected element?: HTMLElement;\n protected downPosition?: Point.Point;\n private downPositionCanvas?: Point.Point;\n private primaryInteraction: MouseInteraction = this.rotateInteraction;\n private currentInteraction?: MouseInteraction;\n private draggingInteraction: MouseInteraction | undefined;\n private lastPrimaryRotateInteraction?: MouseInteraction;\n private isDragging = false;\n private lastMoveEvent?: BaseEvent;\n private interactionTimer?: number;\n private keyboardControls = false;\n\n protected disableIndividualInteractions = false;\n\n private computedBodyStyle?: CSSStyleDeclaration;\n\n private primaryInteractionTypeChange = new EventDispatcher<void>();\n\n public constructor(\n protected downEvent: 'mousedown' | 'pointerdown',\n protected upEvent: 'mouseup' | 'pointerup',\n protected moveEvent: 'mousemove' | 'pointermove',\n protected rotateInteraction: RotateInteraction,\n protected rotatePointInteraction: RotatePointInteraction,\n protected zoomInteraction: ZoomInteraction,\n protected panInteraction: PanInteraction,\n protected twistInteraction: TwistInteraction,\n protected pivotInteraction: PivotInteraction,\n private getConfig: ConfigProvider\n ) {\n this.handleDownEvent = this.handleDownEvent.bind(this);\n this.handleMouseWheel = this.handleMouseWheel.bind(this);\n this.handleWindowMove = this.handleWindowMove.bind(this);\n this.handleWindowUp = this.handleWindowUp.bind(this);\n this.handleDoubleClick = this.handleDoubleClick.bind(this);\n }\n\n public initialize(element: HTMLElement, api: InteractionApi): void {\n this.element = element;\n this.interactionApi = api;\n element.addEventListener(this.downEvent, this.handleDownEvent);\n element.addEventListener('mousedown', this.handleDoubleClick);\n element.addEventListener('wheel', this.handleMouseWheel, {\n passive: false,\n });\n }\n\n public dispose(): void {\n this.element?.removeEventListener(this.downEvent, this.handleDownEvent);\n this.element?.removeEventListener('mousedown', this.handleDoubleClick);\n this.element?.removeEventListener('wheel', this.handleMouseWheel);\n this.element = undefined;\n }\n\n public onPrimaryInteractionTypeChange(listener: Listener<void>): Disposable {\n return this.primaryInteractionTypeChange.on(listener);\n }\n\n public setCurrentInteractionType(type?: InteractionType): void {\n switch (type) {\n case 'rotate':\n this.currentInteraction = this.rotateInteraction;\n break;\n case 'zoom':\n this.currentInteraction = this.zoomInteraction;\n break;\n case 'pan':\n this.currentInteraction = this.panInteraction;\n break;\n case 'twist':\n this.currentInteraction = this.twistInteraction;\n break;\n case 'rotate-point':\n this.currentInteraction = this.rotatePointInteraction;\n break;\n case 'pivot':\n this.currentInteraction = this.pivotInteraction;\n break;\n default:\n this.currentInteraction = undefined;\n }\n\n if (this.draggingInteraction) {\n const point = this.draggingInteraction.getPosition();\n this.draggingInteraction =\n this.currentInteraction || this.primaryInteraction;\n this.interactionApi?.resetLastAngle();\n this.draggingInteraction.setPosition(point);\n }\n }\n\n public getPrimaryInteractionType(): InteractionType {\n return this.primaryInteraction.getType();\n }\n\n public getCurrentInteractionType(): InteractionType {\n return (this.currentInteraction || this.primaryInteraction).getType();\n }\n\n public setPrimaryInteractionType(type: InteractionType): void {\n switch (type) {\n case 'rotate':\n this.primaryInteraction = this.rotateInteraction;\n this.lastPrimaryRotateInteraction = this.rotateInteraction;\n break;\n case 'rotate-point':\n this.primaryInteraction = this.rotatePointInteraction;\n this.lastPrimaryRotateInteraction = this.rotatePointInteraction;\n break;\n case 'zoom':\n this.primaryInteraction = this.zoomInteraction;\n break;\n case 'pan':\n this.primaryInteraction = this.panInteraction;\n break;\n case 'pivot':\n this.primaryInteraction = this.pivotInteraction;\n break;\n }\n this.primaryInteractionTypeChange.emit();\n }\n\n public setDefaultKeyboardControls(keyboardControls: boolean): void {\n this.keyboardControls = keyboardControls;\n }\n\n protected handleDownEvent(event: BaseEvent): void {\n // Prevent selection of any text while interacting with the model.\n event.preventDefault();\n\n this.interactionTimer = window.setTimeout(() => {\n this.downPosition = Point.create(event.screenX, event.screenY);\n this.downPositionCanvas = this.getCanvasPosition(event);\n this.interactionTimer = undefined;\n\n // Perform the current movement in the case that the interaction timer elapses\n if (this.lastMoveEvent != null) {\n this.handleWindowMove(this.lastMoveEvent);\n }\n }, this.getConfig().interactions.interactionDelay);\n\n window.addEventListener(this.moveEvent, this.handleWindowMove);\n window.addEventListener(this.upEvent, this.handleWindowUp);\n }\n\n protected handleWindowMove(event: BaseEvent): void {\n if (this.interactionTimer == null) {\n if (this.disableIndividualInteractions) {\n return;\n }\n\n const position = Point.create(event.screenX, event.screenY);\n const pixelThreshold =\n this.interactionApi != null\n ? this.interactionApi.pixelThreshold(this.isTouch(event))\n : 2;\n if (\n this.downPosition != null &&\n Point.distance(position, this.downPosition) >= pixelThreshold &&\n !this.isDragging\n ) {\n this.beginDrag(event);\n this.isDragging = true;\n }\n\n if (this.isDragging) {\n this.drag(event);\n }\n }\n\n this.lastMoveEvent = event;\n }\n\n protected async handleWindowUp(event: BaseEvent): Promise<void> {\n if (this.isDragging) {\n this.endDrag(event);\n this.isDragging = false;\n }\n\n if (this.interactionTimer != null) {\n window.clearTimeout(this.interactionTimer);\n this.interactionTimer = undefined;\n }\n\n window.removeEventListener(this.moveEvent, this.handleWindowMove);\n window.removeEventListener(this.upEvent, this.handleWindowUp);\n this.lastMoveEvent = undefined;\n }\n\n protected async handleDoubleClick(event: BaseEvent): Promise<void> {\n // event.detail is the number of clicks that have happened recently. If the number is 2, then the user double clicked.\n if (\n event.detail === 2 &&\n event.buttons === 4 &&\n this.interactionApi != null\n ) {\n this.interactionApi.viewAll();\n }\n }\n\n protected beginDrag(event: BaseEvent): void {\n if (this.keyboardControls && event.metaKey && event.shiftKey) {\n this.currentInteraction = this.rotatePointInteraction;\n } else if (this.keyboardControls && event.shiftKey && event.altKey) {\n this.currentInteraction = this.twistInteraction;\n } else if (this.keyboardControls && event.shiftKey) {\n this.currentInteraction = this.zoomInteraction;\n } else if (this.keyboardControls && (event.metaKey || event.ctrlKey)) {\n this.currentInteraction = this.panInteraction;\n } else if (this.keyboardControls && event.altKey) {\n this.currentInteraction = this.rotateInteraction;\n }\n\n if (event.buttons === 1) {\n this.draggingInteraction =\n this.currentInteraction || this.primaryInteraction;\n } else if (event.buttons === 2) {\n this.draggingInteraction = this.panInteraction;\n } else if (event.buttons === 4) {\n this.draggingInteraction =\n this.lastPrimaryRotateInteraction ?? this.rotateInteraction;\n }\n\n if (\n this.draggingInteraction != null &&\n this.interactionApi != null &&\n this.element != null\n ) {\n // Ensure any scroll wheel interactions have been ended prior to beginning\n // another interaction to prevent the interaction from being ended early.\n this.zoomInteraction.endDrag(event, this.interactionApi);\n\n this.draggingInteraction.beginDrag(\n event,\n this.downPositionCanvas || Point.create(event.clientX, event.clientY),\n this.interactionApi,\n this.element\n );\n }\n }\n\n protected drag(event: BaseEvent): void {\n if (this.keyboardControls && event.altKey && event.shiftKey) {\n this.currentInteraction = this.twistInteraction;\n } else {\n this.currentInteraction = undefined;\n }\n this.draggingInteraction =\n this.currentInteraction ||\n this.draggingInteraction ||\n this.primaryInteraction;\n if (this.draggingInteraction != null && this.interactionApi != null) {\n this.draggingInteraction.drag(event, this.interactionApi);\n }\n }\n\n protected endDrag(event: BaseEvent): void {\n if (\n this.keyboardControls &&\n this.currentInteraction === this.twistInteraction\n ) {\n this.currentInteraction = undefined;\n }\n\n if (this.draggingInteraction != null && this.interactionApi != null) {\n this.draggingInteraction.endDrag(event, this.interactionApi);\n this.draggingInteraction = undefined;\n }\n }\n\n protected handleMouseWheel(event: WheelEvent): void {\n event.preventDefault();\n\n if (\n this.element != null &&\n this.interactionApi != null &&\n event.buttons !== 4\n ) {\n const delta =\n -this.wheelDeltaToPixels(event.deltaY, event.deltaMode) / 10;\n const rect = this.element.getBoundingClientRect();\n const point = getMouseClientPosition(event, rect);\n\n SCROLL_WHEEL_DELTA_PERCENTAGES.forEach((percentage, index) => {\n window.setTimeout(() => {\n if (this.interactionApi != null) {\n const zoomDelta = delta * percentage;\n this.zoomInteraction.zoomToPoint(\n point,\n zoomDelta,\n this.interactionApi\n );\n }\n }, index * 2);\n });\n }\n }\n\n protected wheelDeltaToPixels(deltaY: number, deltaMode: number): number {\n if (this.computedBodyStyle == null) {\n this.computedBodyStyle = window.getComputedStyle(document.body);\n }\n\n const defaultLineHeight =\n this.computedBodyStyle.fontSize != null &&\n this.computedBodyStyle.fontSize !== '' &&\n !isNaN(parseFloat(this.computedBodyStyle.fontSize))\n ? parseFloat(this.computedBodyStyle.fontSize) * DEFAULT_LINE_HEIGHT\n : DEFAULT_FONT_SIZE * DEFAULT_LINE_HEIGHT;\n\n if (deltaMode === 1) {\n // deltaMode 1 corresponds to DOM_DELTA_LINE, which computes deltas in lines\n return this.computedBodyStyle.lineHeight != null &&\n this.computedBodyStyle.lineHeight !== '' &&\n !isNaN(parseFloat(this.computedBodyStyle.lineHeight))\n ? deltaY * parseFloat(this.computedBodyStyle.lineHeight)\n : deltaY * defaultLineHeight;\n } else if (deltaMode === 2) {\n // deltaMode 2 corresponds to DOM_DELTA_PAGE, which computes deltas in pages\n return this.computedBodyStyle.height != null &&\n this.computedBodyStyle.height !== '' &&\n !isNaN(parseFloat(this.computedBodyStyle.height))\n ? deltaY * parseFloat(this.computedBodyStyle.height)\n : deltaY * window.innerHeight;\n }\n // deltaMode 0 corresponds to DOM_DELTA_PIXEL, which computes deltas in pixels\n return deltaY;\n }\n\n protected getCanvasPosition(event: BaseEvent): Point.Point | undefined {\n const canvasBounds = this.element?.getBoundingClientRect();\n const canvasOffset =\n canvasBounds != null\n ? Point.create(canvasBounds.left, canvasBounds.top)\n : undefined;\n\n return canvasOffset != null\n ? Point.subtract(Point.create(event.clientX, event.clientY), canvasOffset)\n : undefined;\n }\n\n protected isTouch(event: BaseEvent): boolean {\n return window.PointerEvent != null && event instanceof PointerEvent\n ? event.pointerType === 'touch'\n : false;\n }\n}\n","import { Disposable, UUID } from '@vertexvis/utils';\n\nimport { BaseInteractionHandler } from './baseInteractionHandler';\n\nexport abstract class MultiElementInteractionHandler extends BaseInteractionHandler {\n protected registeredExternalElements: Record<UUID.UUID, Disposable> = {};\n\n public registerAdditionalElement(external: HTMLElement): Disposable {\n const id = UUID.create();\n const disposable = this.addEventListenersToElement(external);\n\n this.registeredExternalElements[id] = disposable;\n return disposable;\n }\n\n public deregisterAdditionalElementById(id: UUID.UUID): void {\n const externalElement = this.registeredExternalElements[id];\n\n externalElement.dispose();\n\n this.registeredExternalElements = Object.fromEntries(\n Object.entries(this.registeredExternalElements).filter(\n ([key]) => key !== id\n )\n );\n }\n\n protected deregisterAllListeners(): void {\n Object.keys(this.registeredExternalElements).forEach((id) =>\n this.deregisterAdditionalElementById(id)\n );\n }\n\n public abstract addEventListenersToElement(element?: HTMLElement): Disposable;\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  /*!
2
2
  * Copyright (c) 2024 Vertex Software LLC. All rights reserved.
3
3
  */
4
- import{d as e,N as t,w as n,p as a,b as r}from"./p-e541044a.js";import{g as i}from"./p-446bdb50.js";import"./p-88c19f38.js";const o=e=>`__sc_import_${e.replace(/\s|-/g,"_")}`;const s=()=>{const r=Array.from(e.querySelectorAll("script")).find((e=>new RegExp(`/${t}(\\.esm)?\\.js($|\\?|#)`).test(e.src)||e.getAttribute("data-stencil-namespace")===t));const i="";const o={};if(i!==""){o.resourcesUrl=new URL(".",i).href}else{o.resourcesUrl=new URL(".",new URL(r.getAttribute("data-resources-url")||r.src,n.location.href)).href;{l(o.resourcesUrl,r)}if(!n.customElements){return __sc_import_viewer("./p-093f9bdb.js").then((()=>o))}}return a(o)};const l=(a,r)=>{const i=o(t);try{n[i]=new Function("w",`return import(w);//${Math.random()}`)}catch(t){const o=new Map;n[i]=t=>{const s=new URL(t,a).href;let l=o.get(s);if(!l){const t=e.createElement("script");t.type="module";t.crossOrigin=r.crossOrigin;t.src=URL.createObjectURL(new Blob([`import * as m from '${s}'; window.${i}.m = m;`],{type:"application/javascript"}));l=new Promise((e=>{t.onload=()=>{e(n[i].m);t.remove()}}));o.set(s,l);e.head.appendChild(t)}return l}}};s().then((e=>{i();return r(JSON.parse('[["p-b4bd626d",[[1,"vertex-viewer-pin-tool",{"pinController":[1040],"pinModel":[16],"viewer":[16],"tool":[1025],"mode":[1025],"primaryColor":[1025,"primary-color"],"accentColor":[1025,"accent-color"],"pins":[32],"selectedPinId":[32],"elementBounds":[32],"projectionViewMatrix":[32]}]]],["p-65a8ee89",[[1,"vertex-scene-tree",{"overScanCount":[2,"over-scan-count"],"viewerSelector":[1,"viewer-selector"],"viewer":[1040],"rowData":[16],"config":[1],"configEnv":[1,"config-env"],"controller":[1040],"searchOptions":[1040],"metadataSearchExactMatch":[1028,"metadata-search-exact-match"],"metadataSearchKeys":[1040],"metadataKeys":[16],"rows":[32],"totalRows":[32],"showLoader":[32],"showEmptyResults":[32],"stateMap":[32],"errorDetails":[32],"attemptingRetry":[32],"invalidateRows":[64],"scrollToIndex":[64],"scrollToItem":[64],"expandAll":[64],"collapseAll":[64],"expandItem":[64],"collapseItem":[64],"toggleExpandItem":[64],"toggleItemVisibility":[64],"hideItem":[64],"showItem":[64],"selectItem":[64],"deselectItem":[64],"getRowAtIndex":[64],"getRowForEvent":[64],"getRowAtClientY":[64],"filterItems":[64],"selectFilteredItems":[64],"fetchMetadataKeys":[64]},[[0,"search","handleSearch"],[0,"cellLoaded","handleCellLoaded"]]]]],["p-56ca4f9b",[[1,"vertex-viewer-default-toolbar",{"viewer":[16],"placement":[1],"direction":[1],"animationsDisabled":[4,"animations-disabled"],"animationMs":[2,"animation-ms"]}]]],["p-6301bb69",[[1,"vertex-viewer-markup",{"arrowTemplateId":[1,"arrow-template-id"],"circleTemplateId":[1,"circle-template-id"],"freeformTemplateId":[1,"freeform-template-id"],"tool":[1],"disabled":[4],"viewer":[16],"selectedMarkupId":[1025,"selected-markup-id"],"selectNew":[4,"select-new"],"startLineAnchorStyle":[1025,"start-line-anchor-style"],"endLineAnchorStyle":[1025,"end-line-anchor-style"],"toSelectMarkupId":[32],"pointerDownPosition":[32],"addMarkup":[64],"removeMarkup":[64],"getMarkupElements":[64],"getMarkupElement":[64]},[[0,"markupEnd","handleMarkupEnd"],[0,"interactionEnd","handleMarkupUpdated"],[1,"pointerdown","handleMarkupPointerDown"]]]]],["p-db619362",[[1,"vertex-viewer-markup-tool",{"arrowTemplateId":[1,"arrow-template-id"],"circleTemplateId":[1,"circle-template-id"],"freeformTemplateId":[1,"freeform-template-id"],"tool":[1],"disabled":[4],"viewer":[16],"startLineAnchorStyle":[1025,"start-line-anchor-style"],"endLineAnchorStyle":[1025,"end-line-anchor-style"],"stateMap":[32],"reset":[64]}]]],["p-061f8089",[[1,"vertex-viewer-view-cube",{"xPositiveLabel":[1,"x-positive-label"],"xNegativeLabel":[1,"x-negative-label"],"yPositiveLabel":[1,"y-positive-label"],"yNegativeLabel":[1,"y-negative-label"],"zPositiveLabel":[1,"z-positive-label"],"zNegativeLabel":[1,"z-negative-label"],"standardViewsOff":[4,"standard-views-off"],"viewAll":[4,"view-all"],"animationDuration":[2,"animation-duration"],"triadOff":[4,"triad-off"],"worldOrientation":[1040],"camera":[1040],"viewer":[16],"boxLength":[32],"triadPosition":[32]}]]],["p-5d13d9c6",[[1,"vertex-viewer-measurement-distance",{"start":[1040],"startJson":[1,"start-json"],"end":[1040],"endJson":[1,"end-json"],"distance":[1026],"showAxisReferenceLines":[4,"show-axis-reference-lines"],"snapDistance":[2,"snap-distance"],"units":[1],"fractionalDigits":[2,"fractional-digits"],"labelFormatter":[16],"anchorLabelOffset":[2,"anchor-label-offset"],"lineCapLength":[2,"line-cap-length"],"mode":[513],"interactingAnchor":[1537,"interacting-anchor"],"invalid":[1540],"camera":[16],"hitProvider":[16],"indicatorPt":[1040],"viewer":[16],"measurementModel":[16],"viewport":[32],"elementBounds":[32],"interactionCount":[32],"internalCamera":[32],"invalidateStateCounter":[32],"stateMap":[32],"measurementUnits":[32],"computeElementMetrics":[64]}]]],["p-f2d29b93",[[1,"vertex-viewer-measurement-precise",{"measurementModel":[16],"measurementOverlays":[16],"measurementController":[1040],"measurableEntityTypes":[16],"viewer":[16],"configEnv":[1,"config-env"],"config":[1]}]]],["p-519f8718",[[1,"vertex-viewer-annotation-callout",{"data":[16],"iconSize":[1,"icon-size"]}]]],["p-42d9df54",[[1,"vertex-viewer-box-query-tool",{"viewer":[16],"controller":[1040],"model":[1040],"operationType":[1,"operation-type"],"mode":[1],"details":[32]}]]],["p-c4016928",[[1,"vertex-viewer-walk-mode-tool",{"viewer":[16],"controller":[1040],"model":[1040],"teleportMode":[1,"teleport-mode"],"enabled":[4]}]]],["p-e0e10e4f",[[1,"vertex-scene-tree-table-cell",{"node":[16],"tree":[16],"value":[1],"placeholder":[1],"hovered":[1028],"isScrolling":[4,"is-scrolling"],"expandToggle":[4,"expand-toggle"],"visibilityToggle":[4,"visibility-toggle"],"selectionHandler":[16],"visibilityHandler":[16],"expansionHandler":[16],"hoverController":[16]}]]],["p-109f49a3",[[1,"vertex-scene-tree-table-column",{"initialWidth":[2,"initial-width"],"minWidth":[2,"min-width"],"maxWidth":[2,"max-width"]}]]],["p-ca00f349",[[1,"vertex-scene-tree-table-header"]]],["p-bbeeb724",[[1,"vertex-scene-tree-table-resize-divider",{"dragging":[32]}]]],["p-29a85362",[[1,"vertex-scene-tree-toolbar-group"]]],["p-b8dfa0c1",[[1,"vertex-viewer",{"src":[1],"clientId":[1,"client-id"],"deviceId":[1025,"device-id"],"config":[1],"configEnv":[1,"config-env"],"resolvedConfig":[1040],"cameraControls":[4,"camera-controls"],"cameraType":[1537,"camera-type"],"keyboardControls":[4,"keyboard-controls"],"rotateAroundTapPoint":[4,"rotate-around-tap-point"],"token":[1025],"depthBuffers":[1,"depth-buffers"],"phantom":[16],"noDefaultLights":[4,"no-default-lights"],"enableTemporalRefinement":[4,"enable-temporal-refinement"],"experimentalRenderingOptions":[1,"experimental-rendering-options"],"featureLines":[16],"selectionHighlighting":[16],"featureHighlighting":[16],"featureMaps":[1,"feature-maps"],"resizeDebounce":[2,"resize-debounce"],"frame":[1040],"stream":[1040],"stencilBuffer":[1040],"viewport":[1040],"annotations":[1040],"dimensions":[32],"hostDimensions":[32],"errorMessage":[32],"cursor":[32],"stateMap":[32],"dispatchFrameDrawn":[64],"registerInteractionHandler":[64],"registerTapKeyInteraction":[64],"getInteractionTarget_DEPRECATED":[64],"addCursor":[64],"getInteractionHandlers":[64],"getKeyInteractions":[64],"getBaseInteractionHandler":[64],"getJwt":[64],"load":[64],"unload":[64],"scene":[64],"isSceneReady":[64]},[[0,"tap","handleTapEvent"]]]]],["p-b2ea0bd7",[[1,"vertex-viewer-hit-result-indicator",{"viewer":[16],"position":[1040],"normal":[1040]}]]],["p-996d9d66",[[1,"vertex-viewer-measurement-details",{"measurementModel":[16],"measurementOverlays":[16],"measurementOutcome":[1040],"distanceUnits":[1,"distance-units"],"angleUnits":[1,"angle-units"],"fractionalDigits":[2,"fractional-digits"],"distanceFormatter":[16],"angleFormatter":[16],"areaFormatter":[16],"resultTypes":[16],"overlay":[32],"distanceMeasurementUnits":[32],"angleMeasurementUnits":[32],"areaMeasurementUnits":[32]}]]],["p-edcff588",[[1,"vertex-viewer-transform-widget",{"viewer":[16],"position":[1040],"rotation":[1040],"controller":[1040],"xRotationDisabled":[1028,"x-rotation-disabled"],"yRotationDisabled":[1028,"y-rotation-disabled"],"zRotationDisabled":[1028,"z-rotation-disabled"],"xTranslationDisabled":[1028,"x-translation-disabled"],"yTranslationDisabled":[1028,"y-translation-disabled"],"zTranslationDisabled":[1028,"z-translation-disabled"],"showInputs":[4,"show-inputs"],"distanceUnit":[1,"distance-unit"],"angleUnit":[1,"angle-unit"],"decimalPlaces":[2,"decimal-places"],"EXPERIMENTAL_undoKeybindings":[4,"e-x-p-e-r-i-m-e-n-t-a-l_undo-keybindings"],"hovered":[1040],"inputPosition":[32],"inputValue":[32],"isEndingTransform":[32],"inputShouldFocus":[32],"EXPERIMENTAL_undo":[64]}]]],["p-d438d446",[[0,"vertex-viewer-pin-group",{"pin":[16],"matrix":[1040],"projectionViewMatrix":[16],"elementBounds":[1040],"pinModel":[16],"pinController":[16],"selected":[4],"occluded":[1540],"detached":[1540],"invalidateStateCounter":[32]},[[0,"occlusionStateChanged","handleOcclusionStateChanged"],[0,"detachedStateChanged","handleDetachedStateChanged"]]]]],["p-203f6d5b",[[6,"vertex-viewer-dom-group",{"position":[1040],"positionJson":[1,"position"],"rotation":[1040],"rotationJson":[1,"rotation"],"quaternion":[1040],"quaternionJson":[1,"quaternion"],"scale":[1040],"scaleJson":[1,"scale"],"matrix":[1040]}]]],["p-bbffb5bc",[[1,"vertex-viewer-teleport-tool",{"viewer":[16],"mode":[1025],"animationsDisabled":[4,"animations-disabled"],"animationMs":[2,"animation-ms"],"controller":[1040],"model":[1040]}]]],["p-42e8b894",[[1,"vertex-viewer-spinner",{"size":[1]}]]],["p-098d1c23",[[1,"vertex-scene-tree-search",{"debounce":[2],"disabled":[4],"placeholder":[1],"controller":[16],"value":[1025],"focused":[32],"isSearching":[32],"setFocus":[64],"clear":[64]}],[1,"vertex-scene-tree-table-layout",{"tree":[16],"controller":[16],"rows":[16],"totalRows":[2,"total-rows"],"rowHeight":[1026,"row-height"],"overScanCount":[2,"over-scan-count"],"rowData":[16],"layoutOffset":[1026,"layout-offset"],"scrollOffset":[1026,"scroll-offset"],"layoutHeight":[1026,"layout-height"],"layoutWidth":[1026,"layout-width"],"viewportStartIndex":[1026,"viewport-start-index"],"viewportEndIndex":[1026,"viewport-end-index"],"columnGridLayout":[32],"columnGridFixedLayout":[32],"isComputingCellHeight":[32],"lastDividerPointerPosition":[32],"resizingColumnIndex":[32],"isScrolling":[32],"scrollTimer":[32],"stateMap":[32],"scrollToPosition":[64]}],[1,"vertex-scene-tree-toolbar"]]],["p-ac727de0",[[1,"vertex-viewer-layer",{"stretchOff":[516,"stretch-off"]}]]],["p-79a15f12",[[1,"vertex-viewer-toolbar",{"placement":[1],"direction":[1]}],[1,"vertex-viewer-button"],[1,"vertex-viewer-toolbar-group",{"direction":[1]}]]],["p-bcb95808",[[0,"vertex-viewer-pin-label",{"pin":[16],"elementBounds":[16],"value":[1025],"pinController":[16],"focused":[32],"computedScreenPosition":[32],"textareaRows":[32],"contentElBounds":[32],"setFocus":[64],"submit":[64]}],[0,"vertex-viewer-pin-label-line",{"pinPoint":[16],"labelPoint":[16],"pin":[16]}]]],["p-b9dff82b",[[1,"vertex-viewer-measurement-overlays",{"measurementOverlays":[16],"camera":[1040],"viewer":[16],"overlays":[32]}],[1,"vertex-viewer-measurement-line",{"start":[16],"end":[16],"capLength":[2,"cap-length"],"pointerEvents":[1,"pointer-events"]}]]],["p-b47a271c",[[6,"vertex-viewer-dom-renderer",{"drawMode":[1,"draw-mode"],"propagateEventsToViewer":[4,"propagate-events-to-viewer"],"viewer":[16],"camera":[1040],"depthBuffer":[1040],"viewport":[32],"invalidateFrameCounter":[32],"interactionDisposables":[32]},[[0,"propertyChange","handlePropertyChange"]]],[1,"vertex-viewer-dom-element",{"position":[1040],"positionJson":[1,"position"],"rotation":[1040],"rotationJson":[1,"rotation"],"quaternion":[1040],"quaternionJson":[1,"quaternion"],"scale":[1040],"scaleJson":[1,"scale"],"matrix":[1040],"occlusionOff":[4,"occlusion-off"],"occluded":[516],"detachedOff":[4,"detached-off"],"detached":[516],"billboardOff":[4,"billboard-off"],"interactionsOff":[516,"interactions-off"]}]]],["p-03cc9627",[[1,"vertex-viewer-markup-arrow",{"start":[1040],"startJson":[1,"start"],"end":[1040],"endJson":[1,"end"],"startLineAnchorStyle":[1025,"start-line-anchor-style"],"endLineAnchorStyle":[1025,"end-line-anchor-style"],"mode":[513],"viewer":[16],"elementBounds":[32],"dispose":[64]}],[1,"vertex-viewer-markup-circle",{"bounds":[1040],"boundsJson":[1,"bounds"],"mode":[513],"viewer":[16],"elementBounds":[32],"dispose":[64]}],[1,"vertex-viewer-markup-freeform",{"points":[1040],"pointsJson":[1,"points"],"bounds":[1040],"boundsJson":[1,"bounds"],"mode":[513],"viewer":[16],"elementBounds":[32],"screenPoints":[32],"dispose":[64]}]]],["p-ea8be7db",[[1,"vertex-viewer-icon",{"name":[1],"size":[1]}]]]]'),e)}));
4
+ import{d as e,N as t,w as n,p as a,b as r}from"./p-e541044a.js";import{g as i}from"./p-446bdb50.js";import"./p-88c19f38.js";const o=e=>`__sc_import_${e.replace(/\s|-/g,"_")}`;const s=()=>{const r=Array.from(e.querySelectorAll("script")).find((e=>new RegExp(`/${t}(\\.esm)?\\.js($|\\?|#)`).test(e.src)||e.getAttribute("data-stencil-namespace")===t));const i="";const o={};if(i!==""){o.resourcesUrl=new URL(".",i).href}else{o.resourcesUrl=new URL(".",new URL(r.getAttribute("data-resources-url")||r.src,n.location.href)).href;{l(o.resourcesUrl,r)}if(!n.customElements){return __sc_import_viewer("./p-093f9bdb.js").then((()=>o))}}return a(o)};const l=(a,r)=>{const i=o(t);try{n[i]=new Function("w",`return import(w);//${Math.random()}`)}catch(t){const o=new Map;n[i]=t=>{const s=new URL(t,a).href;let l=o.get(s);if(!l){const t=e.createElement("script");t.type="module";t.crossOrigin=r.crossOrigin;t.src=URL.createObjectURL(new Blob([`import * as m from '${s}'; window.${i}.m = m;`],{type:"application/javascript"}));l=new Promise((e=>{t.onload=()=>{e(n[i].m);t.remove()}}));o.set(s,l);e.head.appendChild(t)}return l}}};s().then((e=>{i();return r(JSON.parse('[["p-b4bd626d",[[1,"vertex-viewer-pin-tool",{"pinController":[1040],"pinModel":[16],"viewer":[16],"tool":[1025],"mode":[1025],"primaryColor":[1025,"primary-color"],"accentColor":[1025,"accent-color"],"pins":[32],"selectedPinId":[32],"elementBounds":[32],"projectionViewMatrix":[32]}]]],["p-65a8ee89",[[1,"vertex-scene-tree",{"overScanCount":[2,"over-scan-count"],"viewerSelector":[1,"viewer-selector"],"viewer":[1040],"rowData":[16],"config":[1],"configEnv":[1,"config-env"],"controller":[1040],"searchOptions":[1040],"metadataSearchExactMatch":[1028,"metadata-search-exact-match"],"metadataSearchKeys":[1040],"metadataKeys":[16],"rows":[32],"totalRows":[32],"showLoader":[32],"showEmptyResults":[32],"stateMap":[32],"errorDetails":[32],"attemptingRetry":[32],"invalidateRows":[64],"scrollToIndex":[64],"scrollToItem":[64],"expandAll":[64],"collapseAll":[64],"expandItem":[64],"collapseItem":[64],"toggleExpandItem":[64],"toggleItemVisibility":[64],"hideItem":[64],"showItem":[64],"selectItem":[64],"deselectItem":[64],"getRowAtIndex":[64],"getRowForEvent":[64],"getRowAtClientY":[64],"filterItems":[64],"selectFilteredItems":[64],"fetchMetadataKeys":[64]},[[0,"search","handleSearch"],[0,"cellLoaded","handleCellLoaded"]]]]],["p-56ca4f9b",[[1,"vertex-viewer-default-toolbar",{"viewer":[16],"placement":[1],"direction":[1],"animationsDisabled":[4,"animations-disabled"],"animationMs":[2,"animation-ms"]}]]],["p-6301bb69",[[1,"vertex-viewer-markup",{"arrowTemplateId":[1,"arrow-template-id"],"circleTemplateId":[1,"circle-template-id"],"freeformTemplateId":[1,"freeform-template-id"],"tool":[1],"disabled":[4],"viewer":[16],"selectedMarkupId":[1025,"selected-markup-id"],"selectNew":[4,"select-new"],"startLineAnchorStyle":[1025,"start-line-anchor-style"],"endLineAnchorStyle":[1025,"end-line-anchor-style"],"toSelectMarkupId":[32],"pointerDownPosition":[32],"addMarkup":[64],"removeMarkup":[64],"getMarkupElements":[64],"getMarkupElement":[64]},[[0,"markupEnd","handleMarkupEnd"],[0,"interactionEnd","handleMarkupUpdated"],[1,"pointerdown","handleMarkupPointerDown"]]]]],["p-db619362",[[1,"vertex-viewer-markup-tool",{"arrowTemplateId":[1,"arrow-template-id"],"circleTemplateId":[1,"circle-template-id"],"freeformTemplateId":[1,"freeform-template-id"],"tool":[1],"disabled":[4],"viewer":[16],"startLineAnchorStyle":[1025,"start-line-anchor-style"],"endLineAnchorStyle":[1025,"end-line-anchor-style"],"stateMap":[32],"reset":[64]}]]],["p-061f8089",[[1,"vertex-viewer-view-cube",{"xPositiveLabel":[1,"x-positive-label"],"xNegativeLabel":[1,"x-negative-label"],"yPositiveLabel":[1,"y-positive-label"],"yNegativeLabel":[1,"y-negative-label"],"zPositiveLabel":[1,"z-positive-label"],"zNegativeLabel":[1,"z-negative-label"],"standardViewsOff":[4,"standard-views-off"],"viewAll":[4,"view-all"],"animationDuration":[2,"animation-duration"],"triadOff":[4,"triad-off"],"worldOrientation":[1040],"camera":[1040],"viewer":[16],"boxLength":[32],"triadPosition":[32]}]]],["p-5d13d9c6",[[1,"vertex-viewer-measurement-distance",{"start":[1040],"startJson":[1,"start-json"],"end":[1040],"endJson":[1,"end-json"],"distance":[1026],"showAxisReferenceLines":[4,"show-axis-reference-lines"],"snapDistance":[2,"snap-distance"],"units":[1],"fractionalDigits":[2,"fractional-digits"],"labelFormatter":[16],"anchorLabelOffset":[2,"anchor-label-offset"],"lineCapLength":[2,"line-cap-length"],"mode":[513],"interactingAnchor":[1537,"interacting-anchor"],"invalid":[1540],"camera":[16],"hitProvider":[16],"indicatorPt":[1040],"viewer":[16],"measurementModel":[16],"viewport":[32],"elementBounds":[32],"interactionCount":[32],"internalCamera":[32],"invalidateStateCounter":[32],"stateMap":[32],"measurementUnits":[32],"computeElementMetrics":[64]}]]],["p-f2d29b93",[[1,"vertex-viewer-measurement-precise",{"measurementModel":[16],"measurementOverlays":[16],"measurementController":[1040],"measurableEntityTypes":[16],"viewer":[16],"configEnv":[1,"config-env"],"config":[1]}]]],["p-519f8718",[[1,"vertex-viewer-annotation-callout",{"data":[16],"iconSize":[1,"icon-size"]}]]],["p-42d9df54",[[1,"vertex-viewer-box-query-tool",{"viewer":[16],"controller":[1040],"model":[1040],"operationType":[1,"operation-type"],"mode":[1],"details":[32]}]]],["p-c4016928",[[1,"vertex-viewer-walk-mode-tool",{"viewer":[16],"controller":[1040],"model":[1040],"teleportMode":[1,"teleport-mode"],"enabled":[4]}]]],["p-e0e10e4f",[[1,"vertex-scene-tree-table-cell",{"node":[16],"tree":[16],"value":[1],"placeholder":[1],"hovered":[1028],"isScrolling":[4,"is-scrolling"],"expandToggle":[4,"expand-toggle"],"visibilityToggle":[4,"visibility-toggle"],"selectionHandler":[16],"visibilityHandler":[16],"expansionHandler":[16],"hoverController":[16]}]]],["p-109f49a3",[[1,"vertex-scene-tree-table-column",{"initialWidth":[2,"initial-width"],"minWidth":[2,"min-width"],"maxWidth":[2,"max-width"]}]]],["p-ca00f349",[[1,"vertex-scene-tree-table-header"]]],["p-bbeeb724",[[1,"vertex-scene-tree-table-resize-divider",{"dragging":[32]}]]],["p-29a85362",[[1,"vertex-scene-tree-toolbar-group"]]],["p-8a56c008",[[1,"vertex-viewer",{"src":[1],"clientId":[1,"client-id"],"deviceId":[1025,"device-id"],"config":[1],"configEnv":[1,"config-env"],"resolvedConfig":[1040],"cameraControls":[4,"camera-controls"],"cameraType":[1537,"camera-type"],"keyboardControls":[4,"keyboard-controls"],"rotateAroundTapPoint":[4,"rotate-around-tap-point"],"token":[1025],"depthBuffers":[1,"depth-buffers"],"phantom":[16],"noDefaultLights":[4,"no-default-lights"],"enableTemporalRefinement":[4,"enable-temporal-refinement"],"experimentalRenderingOptions":[1,"experimental-rendering-options"],"featureLines":[16],"selectionHighlighting":[16],"featureHighlighting":[16],"featureMaps":[1,"feature-maps"],"resizeDebounce":[2,"resize-debounce"],"frame":[1040],"stream":[1040],"stencilBuffer":[1040],"viewport":[1040],"annotations":[1040],"dimensions":[32],"hostDimensions":[32],"errorMessage":[32],"cursor":[32],"stateMap":[32],"dispatchFrameDrawn":[64],"registerInteractionHandler":[64],"registerTapKeyInteraction":[64],"getInteractionTarget_DEPRECATED":[64],"addCursor":[64],"getInteractionHandlers":[64],"getKeyInteractions":[64],"getBaseInteractionHandler":[64],"getJwt":[64],"load":[64],"unload":[64],"scene":[64],"isSceneReady":[64]},[[0,"tap","handleTapEvent"]]]]],["p-b2ea0bd7",[[1,"vertex-viewer-hit-result-indicator",{"viewer":[16],"position":[1040],"normal":[1040]}]]],["p-996d9d66",[[1,"vertex-viewer-measurement-details",{"measurementModel":[16],"measurementOverlays":[16],"measurementOutcome":[1040],"distanceUnits":[1,"distance-units"],"angleUnits":[1,"angle-units"],"fractionalDigits":[2,"fractional-digits"],"distanceFormatter":[16],"angleFormatter":[16],"areaFormatter":[16],"resultTypes":[16],"overlay":[32],"distanceMeasurementUnits":[32],"angleMeasurementUnits":[32],"areaMeasurementUnits":[32]}]]],["p-edcff588",[[1,"vertex-viewer-transform-widget",{"viewer":[16],"position":[1040],"rotation":[1040],"controller":[1040],"xRotationDisabled":[1028,"x-rotation-disabled"],"yRotationDisabled":[1028,"y-rotation-disabled"],"zRotationDisabled":[1028,"z-rotation-disabled"],"xTranslationDisabled":[1028,"x-translation-disabled"],"yTranslationDisabled":[1028,"y-translation-disabled"],"zTranslationDisabled":[1028,"z-translation-disabled"],"showInputs":[4,"show-inputs"],"distanceUnit":[1,"distance-unit"],"angleUnit":[1,"angle-unit"],"decimalPlaces":[2,"decimal-places"],"EXPERIMENTAL_undoKeybindings":[4,"e-x-p-e-r-i-m-e-n-t-a-l_undo-keybindings"],"hovered":[1040],"inputPosition":[32],"inputValue":[32],"isEndingTransform":[32],"inputShouldFocus":[32],"EXPERIMENTAL_undo":[64]}]]],["p-d438d446",[[0,"vertex-viewer-pin-group",{"pin":[16],"matrix":[1040],"projectionViewMatrix":[16],"elementBounds":[1040],"pinModel":[16],"pinController":[16],"selected":[4],"occluded":[1540],"detached":[1540],"invalidateStateCounter":[32]},[[0,"occlusionStateChanged","handleOcclusionStateChanged"],[0,"detachedStateChanged","handleDetachedStateChanged"]]]]],["p-203f6d5b",[[6,"vertex-viewer-dom-group",{"position":[1040],"positionJson":[1,"position"],"rotation":[1040],"rotationJson":[1,"rotation"],"quaternion":[1040],"quaternionJson":[1,"quaternion"],"scale":[1040],"scaleJson":[1,"scale"],"matrix":[1040]}]]],["p-bbffb5bc",[[1,"vertex-viewer-teleport-tool",{"viewer":[16],"mode":[1025],"animationsDisabled":[4,"animations-disabled"],"animationMs":[2,"animation-ms"],"controller":[1040],"model":[1040]}]]],["p-42e8b894",[[1,"vertex-viewer-spinner",{"size":[1]}]]],["p-098d1c23",[[1,"vertex-scene-tree-search",{"debounce":[2],"disabled":[4],"placeholder":[1],"controller":[16],"value":[1025],"focused":[32],"isSearching":[32],"setFocus":[64],"clear":[64]}],[1,"vertex-scene-tree-table-layout",{"tree":[16],"controller":[16],"rows":[16],"totalRows":[2,"total-rows"],"rowHeight":[1026,"row-height"],"overScanCount":[2,"over-scan-count"],"rowData":[16],"layoutOffset":[1026,"layout-offset"],"scrollOffset":[1026,"scroll-offset"],"layoutHeight":[1026,"layout-height"],"layoutWidth":[1026,"layout-width"],"viewportStartIndex":[1026,"viewport-start-index"],"viewportEndIndex":[1026,"viewport-end-index"],"columnGridLayout":[32],"columnGridFixedLayout":[32],"isComputingCellHeight":[32],"lastDividerPointerPosition":[32],"resizingColumnIndex":[32],"isScrolling":[32],"scrollTimer":[32],"stateMap":[32],"scrollToPosition":[64]}],[1,"vertex-scene-tree-toolbar"]]],["p-ac727de0",[[1,"vertex-viewer-layer",{"stretchOff":[516,"stretch-off"]}]]],["p-79a15f12",[[1,"vertex-viewer-toolbar",{"placement":[1],"direction":[1]}],[1,"vertex-viewer-button"],[1,"vertex-viewer-toolbar-group",{"direction":[1]}]]],["p-bcb95808",[[0,"vertex-viewer-pin-label",{"pin":[16],"elementBounds":[16],"value":[1025],"pinController":[16],"focused":[32],"computedScreenPosition":[32],"textareaRows":[32],"contentElBounds":[32],"setFocus":[64],"submit":[64]}],[0,"vertex-viewer-pin-label-line",{"pinPoint":[16],"labelPoint":[16],"pin":[16]}]]],["p-b9dff82b",[[1,"vertex-viewer-measurement-overlays",{"measurementOverlays":[16],"camera":[1040],"viewer":[16],"overlays":[32]}],[1,"vertex-viewer-measurement-line",{"start":[16],"end":[16],"capLength":[2,"cap-length"],"pointerEvents":[1,"pointer-events"]}]]],["p-b47a271c",[[6,"vertex-viewer-dom-renderer",{"drawMode":[1,"draw-mode"],"propagateEventsToViewer":[4,"propagate-events-to-viewer"],"viewer":[16],"camera":[1040],"depthBuffer":[1040],"viewport":[32],"invalidateFrameCounter":[32],"interactionDisposables":[32]},[[0,"propertyChange","handlePropertyChange"]]],[1,"vertex-viewer-dom-element",{"position":[1040],"positionJson":[1,"position"],"rotation":[1040],"rotationJson":[1,"rotation"],"quaternion":[1040],"quaternionJson":[1,"quaternion"],"scale":[1040],"scaleJson":[1,"scale"],"matrix":[1040],"occlusionOff":[4,"occlusion-off"],"occluded":[516],"detachedOff":[4,"detached-off"],"detached":[516],"billboardOff":[4,"billboard-off"],"interactionsOff":[516,"interactions-off"]}]]],["p-03cc9627",[[1,"vertex-viewer-markup-arrow",{"start":[1040],"startJson":[1,"start"],"end":[1040],"endJson":[1,"end"],"startLineAnchorStyle":[1025,"start-line-anchor-style"],"endLineAnchorStyle":[1025,"end-line-anchor-style"],"mode":[513],"viewer":[16],"elementBounds":[32],"dispose":[64]}],[1,"vertex-viewer-markup-circle",{"bounds":[1040],"boundsJson":[1,"bounds"],"mode":[513],"viewer":[16],"elementBounds":[32],"dispose":[64]}],[1,"vertex-viewer-markup-freeform",{"points":[1040],"pointsJson":[1,"points"],"bounds":[1040],"boundsJson":[1,"bounds"],"mode":[513],"viewer":[16],"elementBounds":[32],"screenPoints":[32],"dispose":[64]}]]],["p-ea8be7db",[[1,"vertex-viewer-icon",{"name":[1],"size":[1]}]]]]'),e)}));
5
5
  //# sourceMappingURL=viewer.esm.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vertexvis/viewer",
3
- "version": "0.22.0-canary.3",
3
+ "version": "0.22.0-testing.0",
4
4
  "description": "The Vertex SDK for viewing models.",
5
5
  "license": "MIT",
6
6
  "author": "Vertex Developers <support@vertexvis.com> (https://developer.vertexvis.com)",
@@ -50,12 +50,12 @@
50
50
  "@stencil/core": "^2.16.1",
51
51
  "@types/classnames": "^2.3.1",
52
52
  "@vertexvis/frame-streaming-protos": "^0.13.2",
53
- "@vertexvis/geometry": "0.22.0-canary.3",
54
- "@vertexvis/html-templates": "0.22.0-canary.3",
53
+ "@vertexvis/geometry": "0.22.0-testing.0",
54
+ "@vertexvis/html-templates": "0.22.0-testing.0",
55
55
  "@vertexvis/scene-tree-protos": "^0.1.21",
56
56
  "@vertexvis/scene-view-protos": "^0.3.2",
57
- "@vertexvis/stream-api": "0.22.0-canary.3",
58
- "@vertexvis/utils": "0.22.0-canary.3",
57
+ "@vertexvis/stream-api": "0.22.0-testing.0",
58
+ "@vertexvis/utils": "0.22.0-testing.0",
59
59
  "@vertexvis/web-workers": "^0.1.0",
60
60
  "camel-case": "^4.1.2",
61
61
  "classnames": "^2.3.1",
@@ -83,7 +83,7 @@
83
83
  "@vertexvis/eslint-config-vertexvis-typescript": "^0.5.0",
84
84
  "@vertexvis/rollup-plugin-web-workers": "^0.1.0",
85
85
  "@vertexvis/typescript-config-vertexvis": "1.1.0",
86
- "@vertexwebsdk/build": "0.22.0-canary.3",
86
+ "@vertexwebsdk/build": "0.22.0-testing.0",
87
87
  "abortcontroller-polyfill": "^1.7.3",
88
88
  "chance": "^1.1.8",
89
89
  "eslint": "^8.17.0",
@@ -98,5 +98,5 @@
98
98
  "typedoc": "^0.22.17",
99
99
  "typescript": "^4.5.4"
100
100
  },
101
- "gitHead": "e5e22aadef368ae88f89754eb8b06fbbaa2718ee"
101
+ "gitHead": "7418373ebf2825baa22c30713a8b817ef5da35a7"
102
102
  }