@vertexvis/viewer 1.0.1-canary.12 → 1.0.1-canary.13
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/cjs/loader.cjs.js +1 -1
- package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js +16 -8
- package/dist/cjs/vertex-viewer-measurement-details.cjs.entry.js.map +1 -1
- package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js +1 -1
- package/dist/cjs/vertex-viewer-measurement-distance.cjs.entry.js.map +1 -1
- package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js +2 -2
- package/dist/cjs/vertex-viewer-measurement-precise.cjs.entry.js.map +1 -1
- package/dist/cjs/viewer.cjs.js +1 -1
- package/dist/collection/components/viewer-measurement-details/viewer-measurement-details.js +22 -7
- package/dist/collection/components/viewer-measurement-details/viewer-measurement-details.js.map +1 -1
- package/dist/collection/components/viewer-measurement-distance/viewer-measurement-distance.js +4 -1
- package/dist/collection/components/viewer-measurement-distance/viewer-measurement-distance.js.map +1 -1
- package/dist/collection/components/viewer-measurement-precise/viewer-measurement-precise.js +5 -2
- package/dist/collection/components/viewer-measurement-precise/viewer-measurement-precise.js.map +1 -1
- package/dist/components/vertex-viewer-measurement-details.js +1 -1
- package/dist/components/vertex-viewer-measurement-details.js.map +1 -1
- package/dist/components/vertex-viewer-measurement-distance.js +1 -1
- package/dist/components/vertex-viewer-measurement-distance.js.map +1 -1
- package/dist/components/vertex-viewer-measurement-precise.js +1 -1
- package/dist/components/vertex-viewer-measurement-precise.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/loader.mjs +1 -1
- package/dist/esm/vertex-viewer-measurement-details.entry.js +16 -8
- package/dist/esm/vertex-viewer-measurement-details.entry.js.map +1 -1
- package/dist/esm/vertex-viewer-measurement-distance.entry.js +1 -1
- package/dist/esm/vertex-viewer-measurement-distance.entry.js.map +1 -1
- package/dist/esm/vertex-viewer-measurement-precise.entry.js +2 -2
- package/dist/esm/vertex-viewer-measurement-precise.entry.js.map +1 -1
- package/dist/esm/viewer.js +1 -1
- package/dist/types/components.d.ts +2 -0
- package/dist/viewer/{p-74da3255.entry.js → p-12c39e9d.entry.js} +2 -2
- package/dist/viewer/{p-74da3255.entry.js.map → p-12c39e9d.entry.js.map} +1 -1
- package/dist/viewer/{p-3f8afc3f.entry.js → p-7b7cfd67.entry.js} +2 -2
- package/dist/viewer/{p-3f8afc3f.entry.js.map → p-7b7cfd67.entry.js.map} +1 -1
- package/dist/viewer/p-c69b4324.entry.js +5 -0
- package/dist/viewer/p-c69b4324.entry.js.map +1 -0
- package/dist/viewer/viewer.esm.js +1 -1
- package/package.json +7 -7
- package/dist/viewer/p-55adc37b.entry.js +0 -5
- package/dist/viewer/p-55adc37b.entry.js.map +0 -1
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -8,7 +8,7 @@ var index = require('./index-1H7bCrlx.js');
|
|
|
8
8
|
const defineCustomElements = async (win, options) => {
|
|
9
9
|
if (typeof window === 'undefined') return undefined;
|
|
10
10
|
await index.globalScripts();
|
|
11
|
-
return index.bootstrapLazy(JSON.parse("[[\"vertex-scene-tree.cjs\",[[257,\"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],\"operationAnimationDuration\":[2,\"operation-animation-duration\"],\"rows\":[32],\"totalRows\":[32],\"showLoader\":[32],\"showEmptyResults\":[32],\"stateMap\":[32],\"errorDetails\":[32],\"hasPartialFilterResults\":[32],\"refreshingResults\":[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],\"isolateItem\":[64],\"getRowAtIndex\":[64],\"getRowForItemId\":[64],\"getRowForEvent\":[64],\"getRowAtClientY\":[64],\"filterItems\":[64],\"selectFilteredItems\":[64],\"fetchMetadataKeys\":[64]},[[0,\"search\",\"handleSearch\"],[0,\"cellLoaded\",\"handleCellLoaded\"]],{\"viewer\":[{\"handleViewerChanged\":0}],\"controller\":[{\"handleControllerChanged\":0}],\"metadataKeys\":[{\"handleMetadataKeysChanged\":0}]}]]],[\"vertex-viewer-pin-tool.cjs\",[[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]},null,{\"mode\":[{\"watchModeChange\":0}],\"tool\":[{\"watchTypeChange\":0}],\"accentColor\":[{\"watchAccentColorChange\":0}],\"primaryColor\":[{\"watchPrimaryColorChange\":0}],\"pins\":[{\"watchPinsChange\":0}],\"viewer\":[{\"handleViewerChanged\":0}]}]]],[\"vertex-viewer-default-toolbar.cjs\",[[1,\"vertex-viewer-default-toolbar\",{\"viewer\":[16],\"placement\":[1],\"direction\":[1],\"animationsDisabled\":[4,\"animations-disabled\"],\"animationMs\":[2,\"animation-ms\"]}]]],[\"vertex-viewer-markup.cjs\",[[257,\"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\"],\"originatingViewport\":[16],\"centeringBehavior\":[1,\"centering-behavior\"],\"offset\":[16],\"scale\":[2],\"toSelectMarkupId\":[32],\"pointerDownPosition\":[32],\"addMarkup\":[64],\"removeMarkup\":[64],\"getMarkupElements\":[64],\"getMarkupElement\":[64]},[[0,\"markupEnd\",\"handleMarkupEnd\"],[0,\"interactionEnd\",\"handleMarkupUpdated\"],[1,\"pointerdown\",\"handleMarkupPointerDown\"]],{\"selectedMarkupId\":[{\"handleSelectedMarkupIdChanged\":0}],\"arrowTemplateId\":[{\"handlePropertyChanged\":0}],\"circleTemplateId\":[{\"handlePropertyChanged\":0}],\"freeformTemplateId\":[{\"handlePropertyChanged\":0}],\"tool\":[{\"handlePropertyChanged\":0}],\"viewer\":[{\"handleViewerChanged\":0}],\"originatingViewport\":[{\"handleViewerChanged\":0}],\"centeringBehavior\":[{\"handleViewerChanged\":0}],\"offset\":[{\"handleViewerChanged\":0}],\"scale\":[{\"handleViewerChanged\":0}],\"disabled\":[{\"handleDisabledChanged\":0}],\"startLineAnchorStyle\":[{\"handleStartLineAnchorStyleChanged\":0}],\"endLineAnchorStyle\":[{\"handleEndLineAnchorStyleChanged\":0}]}]]],[\"vertex-viewer-markup-tool.cjs\",[[257,\"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\"],\"originatingViewport\":[16],\"centeringBehavior\":[1,\"centering-behavior\"],\"offset\":[16],\"scale\":[2],\"stateMap\":[32],\"reset\":[64]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"arrowTemplateId\":[{\"handlePropertyChanged\":0}],\"circleTemplateId\":[{\"handlePropertyChanged\":0}],\"disabled\":[{\"handlePropertyChanged\":0}],\"endLineAnchorStyle\":[{\"handlePropertyChanged\":0}],\"freeformTemplateId\":[{\"handlePropertyChanged\":0}],\"startLineAnchorStyle\":[{\"handlePropertyChanged\":0}],\"tool\":[{\"handlePropertyChanged\":0}],\"scale\":[{\"handleScalingConfigurationChanged\":0}],\"offset\":[{\"handleScalingConfigurationChanged\":0}],\"originatingViewport\":[{\"handleScalingConfigurationChanged\":0}],\"centeringBehavior\":[{\"handleScalingConfigurationChanged\":0}]}]]],[\"vertex-viewer-view-cube.cjs\",[[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]},null,{\"viewer\":[{\"handleViewerChanged\":0}]}]]],[\"vertex-viewer-measurement-distance.cjs\",[[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]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"units\":[{\"handleUnitsChanged\":0}],\"camera\":[{\"handleCameraChanged\":0}],\"mode\":[{\"handleModeChanged\":0}],\"start\":[{\"handleStartChanged\":0}],\"end\":[{\"handleEndChanged\":0}],\"invalid\":[{\"handleInvalidChanged\":0}]}]]],[\"vertex-viewer-measurement-precise.cjs\",[[1,\"vertex-viewer-measurement-precise\",{\"measurementModel\":[16],\"measurementOverlays\":[16],\"measurementController\":[1040],\"measurableEntityTypes\":[16],\"viewer\":[16],\"configEnv\":[1,\"config-env\"],\"config\":[1]},null,{\"measurableEntityTypes\":[{\"handleMeasurableEntityTypesChanged\":0}],\"measurementController\":[{\"handleMeasurementControllerChanged\":0}],\"measurementModel\":[{\"handleMeasurementModelChanged\":0}],\"viewer\":[{\"handleViewerChanged\":0}]}]]],[\"vertex-scene-tree-table-cell.cjs\",[[257,\"vertex-scene-tree-table-cell\",{\"node\":[16],\"tree\":[16],\"value\":[1],\"placeholder\":[1],\"alwaysShowIcons\":[4,\"always-show-icons\"],\"hovered\":[1028],\"isScrolling\":[4,\"is-scrolling\"],\"expandToggle\":[4,\"expand-toggle\"],\"endItemIndicator\":[4,\"end-item-indicator\"],\"visibilityToggle\":[4,\"visibility-toggle\"],\"isolateButton\":[4,\"isolate-button\"],\"selectionHandler\":[16],\"visibilityHandler\":[16],\"expansionHandler\":[16],\"isolateHandler\":[16],\"hoverController\":[16]}]]],[\"vertex-viewer-annotation-callout.cjs\",[[1,\"vertex-viewer-annotation-callout\",{\"data\":[16],\"iconSize\":[1,\"icon-size\"]}]]],[\"vertex-viewer-box-query-tool.cjs\",[[257,\"vertex-viewer-box-query-tool\",{\"viewer\":[16],\"controller\":[1040],\"model\":[1040],\"operationType\":[1,\"operation-type\"],\"mode\":[1],\"details\":[32]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"operationType\":[{\"handleDefaultOperationChange\":0}],\"mode\":[{\"handleModeChange\":0}],\"controller\":[{\"handleControllerChange\":0}]}]]],[\"vertex-viewer-walk-mode-tool.cjs\",[[257,\"vertex-viewer-walk-mode-tool\",{\"viewer\":[16],\"controller\":[1040],\"model\":[1040],\"teleportMode\":[1,\"teleport-mode\"],\"enabled\":[4]},null,{\"enabled\":[{\"handleEnabledChanged\":0}],\"viewer\":[{\"handleViewerChanged\":0}],\"teleportMode\":[{\"handleTeleportModeChanged\":0}],\"controller\":[{\"handleControllerChanged\":0}],\"model\":[{\"handleModelChanged\":0}]}]]],[\"vertex-scene-tree-table-column.cjs\",[[257,\"vertex-scene-tree-table-column\",{\"initialWidth\":[2,\"initial-width\"],\"minWidth\":[2,\"min-width\"],\"maxWidth\":[2,\"max-width\"]}]]],[\"vertex-scene-tree-table-header.cjs\",[[257,\"vertex-scene-tree-table-header\"]]],[\"vertex-scene-tree-table-resize-divider.cjs\",[[257,\"vertex-scene-tree-table-resize-divider\",{\"hovering\":[32],\"dragging\":[32]}]]],[\"vertex-scene-tree-toolbar-group.cjs\",[[257,\"vertex-scene-tree-toolbar-group\"]]],[\"vertex-viewer.cjs\",[[257,\"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],\"sceneComparison\":[16],\"crossSectioning\":[16],\"featureMaps\":[1,\"feature-maps\"],\"resizeDebounce\":[2,\"resize-debounce\"],\"frame\":[1040],\"stream\":[1040],\"stencilBuffer\":[1040],\"viewport\":[1040],\"annotations\":[1040],\"modelViews\":[1040],\"pmi\":[1040],\"sceneItems\":[1040],\"canvases\":[1040],\"experimentalSkipVisibilityCheck\":[4,\"experimental-skip-visibility-check\"],\"dimensions\":[32],\"hostDimensions\":[32],\"errorMessage\":[32],\"cursor\":[32],\"stateMap\":[32],\"dispatchFrameDrawn\":[64],\"registerInteractionHandler\":[64],\"registerBasicInteractionHandler\":[64],\"registerTapKeyInteraction\":[64],\"getInteractionTarget_DEPRECATED\":[64],\"addCursor\":[64],\"getInteractionHandlers\":[64],\"getKeyInteractions\":[64],\"getBaseInteractionHandler\":[64],\"getJwt\":[64],\"load\":[64],\"unload\":[64],\"reload\":[64],\"scene\":[64],\"isSceneReady\":[64]},[[0,\"tap\",\"handleTapEvent\"]],{\"src\":[{\"handleSrcChanged\":0}],\"cameraControls\":[{\"handleCameraControlsChanged\":0}],\"keyboardControls\":[{\"handleKeyboardControlsChanged\":0}],\"rotateAroundTapPoint\":[{\"handleRotateAboutTapPointChanged\":0}],\"cameraType\":[{\"handleCameraTypeChanged\":0}],\"crossSectioning\":[{\"handleStreamAttributesChanged\":0}],\"depthBuffers\":[{\"handleStreamAttributesChanged\":0}],\"experimentalRenderingOptions\":[{\"handleStreamAttributesChanged\":0}],\"featureHighlighting\":[{\"handleStreamAttributesChanged\":0}],\"featureLines\":[{\"handleStreamAttributesChanged\":0}],\"featureMaps\":[{\"handleStreamAttributesChanged\":0}],\"noDefaultLights\":[{\"handleStreamAttributesChanged\":0}],\"phantom\":[{\"handleStreamAttributesChanged\":0}],\"sceneComparison\":[{\"handleStreamAttributesChanged\":0}],\"selectionHighlighting\":[{\"handleStreamAttributesChanged\":0}],\"enableTemporalRefinement\":[{\"handleEnableTemporalRefinementChanged\":0}],\"config\":[{\"handleConfigChanged\":0}],\"configEnv\":[{\"handleConfigEnvChanged\":0}]}]]],[\"vertex-viewer-hit-result-indicator.cjs\",[[1,\"vertex-viewer-hit-result-indicator\",{\"viewer\":[16],\"position\":[1040],\"normal\":[1040]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"position\":[{\"handlePositionChanged\":0}],\"normal\":[{\"handleNormalChanged\":0}]}]]],[\"vertex-viewer-measurement-details.cjs\",[[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]},null,{\"distanceUnits\":[{\"handleDistanceUnitsChanged\":0}],\"angleUnits\":[{\"handleAngleUnitsChanged\":0}],\"measurementModel\":[{\"handleMeasurementModelChanged\":0}],\"resultTypes\":[{\"handleResultTypesChanged\":0}]}]]],[\"vertex-viewer-transform-widget.cjs\",[[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\"],\"xyTranslationDisabled\":[1028,\"xy-translation-disabled\"],\"xzTranslationDisabled\":[1028,\"xz-translation-disabled\"],\"yzTranslationDisabled\":[1028,\"yz-translation-disabled\"],\"showInputs\":[4,\"show-inputs\"],\"distanceUnit\":[1,\"distance-unit\"],\"angleUnit\":[1,\"angle-unit\"],\"decimalPlaces\":[2,\"decimal-places\"],\"rotationSnapDegrees\":[2,\"rotation-snap-degrees\"],\"rotationSnapKey\":[1,\"rotation-snap-key\"],\"translationHandleScalar\":[2,\"translation-handle-scalar\"],\"rotationHandleScalar\":[2,\"rotation-handle-scalar\"],\"interactionThrottle\":[2,\"interaction-throttle\"],\"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],\"EXPERIMENTAL_undo\":[64]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"xTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"yTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"zTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"xyTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"xzTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"yzTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"xRotationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"yRotationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"zRotationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"translationHandleScalar\":[{\"handleTransformHandleScalarChanged\":0}],\"rotationHandleScalar\":[{\"handleTransformHandleScalarChanged\":0}],\"rotation\":[{\"handleRotationChanged\":0}],\"position\":[{\"handlePositionChanged\":0}],\"distanceUnit\":[{\"handleInputFormattingChanged\":0}],\"angleUnit\":[{\"handleInputFormattingChanged\":0}],\"decimalPlaces\":[{\"handleInputFormattingChanged\":0}]}]]],[\"vertex-viewer-pin-group.cjs\",[[0,\"vertex-viewer-pin-group\",{\"pin\":[16],\"matrix\":[1040],\"projectionViewMatrix\":[16],\"elementBounds\":[1040],\"pinModel\":[16],\"pinController\":[1040],\"selected\":[4],\"occluded\":[1540],\"detached\":[1540],\"invalidateStateCounter\":[32]},[[0,\"occlusionStateChanged\",\"handleOcclusionStateChanged\"],[0,\"detachedStateChanged\",\"handleDetachedStateChanged\"]]]]],[\"vertex-viewer-dom-group.cjs\",[[262,\"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]},null,{\"position\":[{\"handlePositionChange\":0}],\"positionJson\":[{\"handlePositionJsonChanged\":0}],\"rotation\":[{\"handleRotationChanged\":0}],\"rotationJson\":[{\"handleRotationJsonChanged\":0}],\"quaternion\":[{\"handleQuaternionChange\":0}],\"quaternionJson\":[{\"handleQuaternionJsonChanged\":0}],\"scale\":[{\"handleScaleChange\":0}],\"scaleJson\":[{\"handleScaleJsonChanged\":0}],\"matrix\":[{\"handleMatrixChanged\":0}]}]]],[\"vertex-viewer-teleport-tool.cjs\",[[1,\"vertex-viewer-teleport-tool\",{\"viewer\":[16],\"mode\":[1025],\"animationsDisabled\":[4,\"animations-disabled\"],\"animationMs\":[2,\"animation-ms\"],\"controller\":[1040],\"model\":[1040]},null,{\"mode\":[{\"handleModeChange\":0}],\"viewer\":[{\"handleViewerChanged\":0}],\"animationMs\":[{\"handleAnimationMsChanged\":0}],\"animationsDisabled\":[{\"handleAnimationsDisabledChanged\":0}],\"controller\":[{\"handleControllerChanged\":0}],\"model\":[{\"handleModelChanged\":0}]}]]],[\"vertex-viewer-spinner.cjs\",[[1,\"vertex-viewer-spinner\",{\"size\":[1]}]]],[\"vertex-viewer-layer.cjs\",[[257,\"vertex-viewer-layer\",{\"stretchOff\":[516,\"stretch-off\"]}]]],[\"vertex-viewer-button_3.cjs\",[[257,\"vertex-viewer-toolbar\",{\"placement\":[1],\"direction\":[1]}],[257,\"vertex-viewer-button\"],[257,\"vertex-viewer-toolbar-group\",{\"direction\":[1]}]]],[\"vertex-scene-tree-notification-banner_4.cjs\",[[257,\"vertex-scene-tree-search\",{\"debounce\":[2],\"disabled\":[4],\"placeholder\":[1],\"controller\":[16],\"value\":[1025],\"focused\":[32],\"isSearching\":[32],\"setFocus\":[64],\"clear\":[64]},null,{\"controller\":[{\"controllerChanged\":0}]}],[1,\"vertex-scene-tree-notification-banner\",{\"message\":[1],\"actionLabel\":[1,\"action-label\"]}],[257,\"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],\"attemptComputeCellHeight\":[64]},null,{\"rows\":[{\"handleViewportRowsPropsChanged\":0}],\"totalRows\":[{\"handleViewportRowsPropsChanged\":0}],\"rowHeight\":[{\"handleViewportRowsPropsChanged\":0}]}],[257,\"vertex-scene-tree-toolbar\"]]],[\"vertex-viewer-pin-label_2.cjs\",[[0,\"vertex-viewer-pin-label\",{\"pin\":[16],\"elementBounds\":[16],\"value\":[1025],\"pinController\":[1040],\"focused\":[32],\"computedScreenPosition\":[32],\"textareaRows\":[32],\"contentElBounds\":[32],\"setFocus\":[64],\"submit\":[64]},null,{\"focused\":[{\"watchFocusChange\":0}],\"pin\":[{\"watchPinChange\":0}],\"elementBounds\":[{\"watchElementBoundsChange\":0}]}],[0,\"vertex-viewer-pin-label-line\",{\"pinPoint\":[16],\"labelPoint\":[16],\"pin\":[16]}]]],[\"vertex-viewer-measurement-line_2.cjs\",[[1,\"vertex-viewer-measurement-overlays\",{\"measurementOverlays\":[16],\"camera\":[1040],\"viewer\":[16],\"overlays\":[32]},null,{\"measurementOverlays\":[{\"handleMeasurementOverlaysChanged\":0}],\"viewer\":[{\"handleViewerChanged\":0}]}],[1,\"vertex-viewer-measurement-line\",{\"start\":[16],\"end\":[16],\"capLength\":[2,\"cap-length\"],\"pointerEvents\":[1,\"pointer-events\"]}]]],[\"vertex-viewer-dom-element_2.cjs\",[[262,\"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\"]],{\"viewer\":[{\"handleViewerChange\":0}]}],[257,\"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\"]},null,{\"position\":[{\"handlePositionChange\":1}],\"positionJson\":[{\"handlePositionJsonChanged\":1}],\"rotation\":[{\"handleRotationChanged\":1}],\"rotationJson\":[{\"handleRotationJsonChanged\":1}],\"quaternion\":[{\"handleQuaternionChange\":1}],\"quaternionJson\":[{\"handleQuaternionJsonChanged\":1}],\"scale\":[{\"handleScaleChange\":1}],\"scaleJson\":[{\"handleScaleJsonChanged\":1}],\"matrix\":[{\"handleMatrixChanged\":0}],\"occluded\":[{\"handleOcclusionStateChanged\":0}],\"detached\":[{\"handleDetachedStateChanged\":0}]}]]],[\"vertex-viewer-markup-arrow_3.cjs\",[[1,\"vertex-viewer-markup-arrow\",{\"start\":[1040],\"startJson\":[1,\"start\"],\"end\":[1040],\"endJson\":[1,\"end\"],\"originatingViewport\":[16],\"centeringBehavior\":[1,\"centering-behavior\"],\"offset\":[16],\"scale\":[2],\"startLineAnchorStyle\":[1025,\"start-line-anchor-style\"],\"endLineAnchorStyle\":[1025,\"end-line-anchor-style\"],\"mode\":[513],\"viewer\":[16],\"elementBounds\":[32],\"dispose\":[64]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"start\":[{\"handleStartJsonChange\":0}],\"end\":[{\"handleEndJsonChange\":0}],\"mode\":[{\"handleModeChange\":0}],\"offset\":[{\"handleScalingConfigurationChange\":0}],\"originatingViewport\":[{\"handleScalingConfigurationChange\":0}],\"centeringBehavior\":[{\"handleScalingConfigurationChange\":0}],\"scale\":[{\"handleScalingConfigurationChange\":0},{\"handleScaleChange\":0}]}],[1,\"vertex-viewer-markup-circle\",{\"bounds\":[1040],\"boundsJson\":[1,\"bounds\"],\"mode\":[513],\"viewer\":[16],\"originatingViewport\":[16],\"centeringBehavior\":[1,\"centering-behavior\"],\"offset\":[16],\"scale\":[2],\"elementBounds\":[32],\"dispose\":[64]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"bounds\":[{\"handleBoundsJsonChange\":0}],\"mode\":[{\"handleModeChange\":0}],\"offset\":[{\"handleScalingConfigurationChange\":0}],\"originatingViewport\":[{\"handleScalingConfigurationChange\":0}],\"centeringBehavior\":[{\"handleScalingConfigurationChange\":0}],\"scale\":[{\"handleScalingConfigurationChange\":0},{\"handleScaleChange\":0}]}],[1,\"vertex-viewer-markup-freeform\",{\"points\":[1040],\"pointsJson\":[1,\"points\"],\"bounds\":[1040],\"boundsJson\":[1,\"bounds\"],\"mode\":[513],\"viewer\":[16],\"originatingViewport\":[16],\"centeringBehavior\":[1,\"centering-behavior\"],\"offset\":[16],\"scale\":[2],\"elementBounds\":[32],\"screenPoints\":[32],\"dispose\":[64]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"originatingViewport\":[{\"recomputePointsFromProps\":0},{\"handleScalingConfigurationChange\":0}],\"offset\":[{\"recomputePointsFromProps\":0},{\"handleScalingConfigurationChange\":0}],\"scale\":[{\"recomputePointsFromProps\":0},{\"handleScalingConfigurationChange\":0},{\"handleScaleChange\":0}],\"bounds\":[{\"recomputePointsFromProps\":0}],\"points\":[{\"recomputePointsFromProps\":0}],\"centeringBehavior\":[{\"handleScalingConfigurationChange\":0}],\"mode\":[{\"handleModeChange\":0}]}]]],[\"vertex-viewer-icon.cjs\",[[1,\"vertex-viewer-icon\",{\"name\":[1],\"size\":[1]}]]]]"), options);
|
|
11
|
+
return index.bootstrapLazy(JSON.parse("[[\"vertex-scene-tree.cjs\",[[257,\"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],\"operationAnimationDuration\":[2,\"operation-animation-duration\"],\"rows\":[32],\"totalRows\":[32],\"showLoader\":[32],\"showEmptyResults\":[32],\"stateMap\":[32],\"errorDetails\":[32],\"hasPartialFilterResults\":[32],\"refreshingResults\":[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],\"isolateItem\":[64],\"getRowAtIndex\":[64],\"getRowForItemId\":[64],\"getRowForEvent\":[64],\"getRowAtClientY\":[64],\"filterItems\":[64],\"selectFilteredItems\":[64],\"fetchMetadataKeys\":[64]},[[0,\"search\",\"handleSearch\"],[0,\"cellLoaded\",\"handleCellLoaded\"]],{\"viewer\":[{\"handleViewerChanged\":0}],\"controller\":[{\"handleControllerChanged\":0}],\"metadataKeys\":[{\"handleMetadataKeysChanged\":0}]}]]],[\"vertex-viewer-pin-tool.cjs\",[[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]},null,{\"mode\":[{\"watchModeChange\":0}],\"tool\":[{\"watchTypeChange\":0}],\"accentColor\":[{\"watchAccentColorChange\":0}],\"primaryColor\":[{\"watchPrimaryColorChange\":0}],\"pins\":[{\"watchPinsChange\":0}],\"viewer\":[{\"handleViewerChanged\":0}]}]]],[\"vertex-viewer-default-toolbar.cjs\",[[1,\"vertex-viewer-default-toolbar\",{\"viewer\":[16],\"placement\":[1],\"direction\":[1],\"animationsDisabled\":[4,\"animations-disabled\"],\"animationMs\":[2,\"animation-ms\"]}]]],[\"vertex-viewer-markup.cjs\",[[257,\"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\"],\"originatingViewport\":[16],\"centeringBehavior\":[1,\"centering-behavior\"],\"offset\":[16],\"scale\":[2],\"toSelectMarkupId\":[32],\"pointerDownPosition\":[32],\"addMarkup\":[64],\"removeMarkup\":[64],\"getMarkupElements\":[64],\"getMarkupElement\":[64]},[[0,\"markupEnd\",\"handleMarkupEnd\"],[0,\"interactionEnd\",\"handleMarkupUpdated\"],[1,\"pointerdown\",\"handleMarkupPointerDown\"]],{\"selectedMarkupId\":[{\"handleSelectedMarkupIdChanged\":0}],\"arrowTemplateId\":[{\"handlePropertyChanged\":0}],\"circleTemplateId\":[{\"handlePropertyChanged\":0}],\"freeformTemplateId\":[{\"handlePropertyChanged\":0}],\"tool\":[{\"handlePropertyChanged\":0}],\"viewer\":[{\"handleViewerChanged\":0}],\"originatingViewport\":[{\"handleViewerChanged\":0}],\"centeringBehavior\":[{\"handleViewerChanged\":0}],\"offset\":[{\"handleViewerChanged\":0}],\"scale\":[{\"handleViewerChanged\":0}],\"disabled\":[{\"handleDisabledChanged\":0}],\"startLineAnchorStyle\":[{\"handleStartLineAnchorStyleChanged\":0}],\"endLineAnchorStyle\":[{\"handleEndLineAnchorStyleChanged\":0}]}]]],[\"vertex-viewer-markup-tool.cjs\",[[257,\"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\"],\"originatingViewport\":[16],\"centeringBehavior\":[1,\"centering-behavior\"],\"offset\":[16],\"scale\":[2],\"stateMap\":[32],\"reset\":[64]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"arrowTemplateId\":[{\"handlePropertyChanged\":0}],\"circleTemplateId\":[{\"handlePropertyChanged\":0}],\"disabled\":[{\"handlePropertyChanged\":0}],\"endLineAnchorStyle\":[{\"handlePropertyChanged\":0}],\"freeformTemplateId\":[{\"handlePropertyChanged\":0}],\"startLineAnchorStyle\":[{\"handlePropertyChanged\":0}],\"tool\":[{\"handlePropertyChanged\":0}],\"scale\":[{\"handleScalingConfigurationChanged\":0}],\"offset\":[{\"handleScalingConfigurationChanged\":0}],\"originatingViewport\":[{\"handleScalingConfigurationChanged\":0}],\"centeringBehavior\":[{\"handleScalingConfigurationChanged\":0}]}]]],[\"vertex-viewer-view-cube.cjs\",[[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]},null,{\"viewer\":[{\"handleViewerChanged\":0}]}]]],[\"vertex-viewer-measurement-distance.cjs\",[[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]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"units\":[{\"handleUnitsChanged\":1}],\"camera\":[{\"handleCameraChanged\":0}],\"mode\":[{\"handleModeChanged\":0}],\"start\":[{\"handleStartChanged\":0}],\"end\":[{\"handleEndChanged\":0}],\"invalid\":[{\"handleInvalidChanged\":0}]}]]],[\"vertex-viewer-measurement-precise.cjs\",[[1,\"vertex-viewer-measurement-precise\",{\"measurementModel\":[16],\"measurementOverlays\":[16],\"measurementController\":[1040],\"measurableEntityTypes\":[16],\"viewer\":[16],\"configEnv\":[1,\"config-env\"],\"config\":[1]},null,{\"measurableEntityTypes\":[{\"handleMeasurableEntityTypesChanged\":0}],\"measurementController\":[{\"handleMeasurementControllerChanged\":0}],\"measurementModel\":[{\"handleMeasurementModelChanged\":1}],\"viewer\":[{\"handleViewerChanged\":0}]}]]],[\"vertex-scene-tree-table-cell.cjs\",[[257,\"vertex-scene-tree-table-cell\",{\"node\":[16],\"tree\":[16],\"value\":[1],\"placeholder\":[1],\"alwaysShowIcons\":[4,\"always-show-icons\"],\"hovered\":[1028],\"isScrolling\":[4,\"is-scrolling\"],\"expandToggle\":[4,\"expand-toggle\"],\"endItemIndicator\":[4,\"end-item-indicator\"],\"visibilityToggle\":[4,\"visibility-toggle\"],\"isolateButton\":[4,\"isolate-button\"],\"selectionHandler\":[16],\"visibilityHandler\":[16],\"expansionHandler\":[16],\"isolateHandler\":[16],\"hoverController\":[16]}]]],[\"vertex-viewer-annotation-callout.cjs\",[[1,\"vertex-viewer-annotation-callout\",{\"data\":[16],\"iconSize\":[1,\"icon-size\"]}]]],[\"vertex-viewer-box-query-tool.cjs\",[[257,\"vertex-viewer-box-query-tool\",{\"viewer\":[16],\"controller\":[1040],\"model\":[1040],\"operationType\":[1,\"operation-type\"],\"mode\":[1],\"details\":[32]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"operationType\":[{\"handleDefaultOperationChange\":0}],\"mode\":[{\"handleModeChange\":0}],\"controller\":[{\"handleControllerChange\":0}]}]]],[\"vertex-viewer-walk-mode-tool.cjs\",[[257,\"vertex-viewer-walk-mode-tool\",{\"viewer\":[16],\"controller\":[1040],\"model\":[1040],\"teleportMode\":[1,\"teleport-mode\"],\"enabled\":[4]},null,{\"enabled\":[{\"handleEnabledChanged\":0}],\"viewer\":[{\"handleViewerChanged\":0}],\"teleportMode\":[{\"handleTeleportModeChanged\":0}],\"controller\":[{\"handleControllerChanged\":0}],\"model\":[{\"handleModelChanged\":0}]}]]],[\"vertex-scene-tree-table-column.cjs\",[[257,\"vertex-scene-tree-table-column\",{\"initialWidth\":[2,\"initial-width\"],\"minWidth\":[2,\"min-width\"],\"maxWidth\":[2,\"max-width\"]}]]],[\"vertex-scene-tree-table-header.cjs\",[[257,\"vertex-scene-tree-table-header\"]]],[\"vertex-scene-tree-table-resize-divider.cjs\",[[257,\"vertex-scene-tree-table-resize-divider\",{\"hovering\":[32],\"dragging\":[32]}]]],[\"vertex-scene-tree-toolbar-group.cjs\",[[257,\"vertex-scene-tree-toolbar-group\"]]],[\"vertex-viewer.cjs\",[[257,\"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],\"sceneComparison\":[16],\"crossSectioning\":[16],\"featureMaps\":[1,\"feature-maps\"],\"resizeDebounce\":[2,\"resize-debounce\"],\"frame\":[1040],\"stream\":[1040],\"stencilBuffer\":[1040],\"viewport\":[1040],\"annotations\":[1040],\"modelViews\":[1040],\"pmi\":[1040],\"sceneItems\":[1040],\"canvases\":[1040],\"experimentalSkipVisibilityCheck\":[4,\"experimental-skip-visibility-check\"],\"dimensions\":[32],\"hostDimensions\":[32],\"errorMessage\":[32],\"cursor\":[32],\"stateMap\":[32],\"dispatchFrameDrawn\":[64],\"registerInteractionHandler\":[64],\"registerBasicInteractionHandler\":[64],\"registerTapKeyInteraction\":[64],\"getInteractionTarget_DEPRECATED\":[64],\"addCursor\":[64],\"getInteractionHandlers\":[64],\"getKeyInteractions\":[64],\"getBaseInteractionHandler\":[64],\"getJwt\":[64],\"load\":[64],\"unload\":[64],\"reload\":[64],\"scene\":[64],\"isSceneReady\":[64]},[[0,\"tap\",\"handleTapEvent\"]],{\"src\":[{\"handleSrcChanged\":0}],\"cameraControls\":[{\"handleCameraControlsChanged\":0}],\"keyboardControls\":[{\"handleKeyboardControlsChanged\":0}],\"rotateAroundTapPoint\":[{\"handleRotateAboutTapPointChanged\":0}],\"cameraType\":[{\"handleCameraTypeChanged\":0}],\"crossSectioning\":[{\"handleStreamAttributesChanged\":0}],\"depthBuffers\":[{\"handleStreamAttributesChanged\":0}],\"experimentalRenderingOptions\":[{\"handleStreamAttributesChanged\":0}],\"featureHighlighting\":[{\"handleStreamAttributesChanged\":0}],\"featureLines\":[{\"handleStreamAttributesChanged\":0}],\"featureMaps\":[{\"handleStreamAttributesChanged\":0}],\"noDefaultLights\":[{\"handleStreamAttributesChanged\":0}],\"phantom\":[{\"handleStreamAttributesChanged\":0}],\"sceneComparison\":[{\"handleStreamAttributesChanged\":0}],\"selectionHighlighting\":[{\"handleStreamAttributesChanged\":0}],\"enableTemporalRefinement\":[{\"handleEnableTemporalRefinementChanged\":0}],\"config\":[{\"handleConfigChanged\":0}],\"configEnv\":[{\"handleConfigEnvChanged\":0}]}]]],[\"vertex-viewer-hit-result-indicator.cjs\",[[1,\"vertex-viewer-hit-result-indicator\",{\"viewer\":[16],\"position\":[1040],\"normal\":[1040]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"position\":[{\"handlePositionChanged\":0}],\"normal\":[{\"handleNormalChanged\":0}]}]]],[\"vertex-viewer-measurement-details.cjs\",[[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]},null,{\"distanceUnits\":[{\"handleDistanceUnitsChanged\":1}],\"angleUnits\":[{\"handleAngleUnitsChanged\":1}],\"measurementModel\":[{\"handleMeasurementModelChanged\":1}],\"resultTypes\":[{\"handleResultTypesChanged\":0}]}]]],[\"vertex-viewer-transform-widget.cjs\",[[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\"],\"xyTranslationDisabled\":[1028,\"xy-translation-disabled\"],\"xzTranslationDisabled\":[1028,\"xz-translation-disabled\"],\"yzTranslationDisabled\":[1028,\"yz-translation-disabled\"],\"showInputs\":[4,\"show-inputs\"],\"distanceUnit\":[1,\"distance-unit\"],\"angleUnit\":[1,\"angle-unit\"],\"decimalPlaces\":[2,\"decimal-places\"],\"rotationSnapDegrees\":[2,\"rotation-snap-degrees\"],\"rotationSnapKey\":[1,\"rotation-snap-key\"],\"translationHandleScalar\":[2,\"translation-handle-scalar\"],\"rotationHandleScalar\":[2,\"rotation-handle-scalar\"],\"interactionThrottle\":[2,\"interaction-throttle\"],\"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],\"EXPERIMENTAL_undo\":[64]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"xTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"yTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"zTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"xyTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"xzTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"yzTranslationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"xRotationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"yRotationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"zRotationDisabled\":[{\"handleDisabledPropertyChanged\":0}],\"translationHandleScalar\":[{\"handleTransformHandleScalarChanged\":0}],\"rotationHandleScalar\":[{\"handleTransformHandleScalarChanged\":0}],\"rotation\":[{\"handleRotationChanged\":0}],\"position\":[{\"handlePositionChanged\":0}],\"distanceUnit\":[{\"handleInputFormattingChanged\":0}],\"angleUnit\":[{\"handleInputFormattingChanged\":0}],\"decimalPlaces\":[{\"handleInputFormattingChanged\":0}]}]]],[\"vertex-viewer-pin-group.cjs\",[[0,\"vertex-viewer-pin-group\",{\"pin\":[16],\"matrix\":[1040],\"projectionViewMatrix\":[16],\"elementBounds\":[1040],\"pinModel\":[16],\"pinController\":[1040],\"selected\":[4],\"occluded\":[1540],\"detached\":[1540],\"invalidateStateCounter\":[32]},[[0,\"occlusionStateChanged\",\"handleOcclusionStateChanged\"],[0,\"detachedStateChanged\",\"handleDetachedStateChanged\"]]]]],[\"vertex-viewer-dom-group.cjs\",[[262,\"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]},null,{\"position\":[{\"handlePositionChange\":0}],\"positionJson\":[{\"handlePositionJsonChanged\":0}],\"rotation\":[{\"handleRotationChanged\":0}],\"rotationJson\":[{\"handleRotationJsonChanged\":0}],\"quaternion\":[{\"handleQuaternionChange\":0}],\"quaternionJson\":[{\"handleQuaternionJsonChanged\":0}],\"scale\":[{\"handleScaleChange\":0}],\"scaleJson\":[{\"handleScaleJsonChanged\":0}],\"matrix\":[{\"handleMatrixChanged\":0}]}]]],[\"vertex-viewer-teleport-tool.cjs\",[[1,\"vertex-viewer-teleport-tool\",{\"viewer\":[16],\"mode\":[1025],\"animationsDisabled\":[4,\"animations-disabled\"],\"animationMs\":[2,\"animation-ms\"],\"controller\":[1040],\"model\":[1040]},null,{\"mode\":[{\"handleModeChange\":0}],\"viewer\":[{\"handleViewerChanged\":0}],\"animationMs\":[{\"handleAnimationMsChanged\":0}],\"animationsDisabled\":[{\"handleAnimationsDisabledChanged\":0}],\"controller\":[{\"handleControllerChanged\":0}],\"model\":[{\"handleModelChanged\":0}]}]]],[\"vertex-viewer-spinner.cjs\",[[1,\"vertex-viewer-spinner\",{\"size\":[1]}]]],[\"vertex-viewer-layer.cjs\",[[257,\"vertex-viewer-layer\",{\"stretchOff\":[516,\"stretch-off\"]}]]],[\"vertex-viewer-button_3.cjs\",[[257,\"vertex-viewer-toolbar\",{\"placement\":[1],\"direction\":[1]}],[257,\"vertex-viewer-button\"],[257,\"vertex-viewer-toolbar-group\",{\"direction\":[1]}]]],[\"vertex-scene-tree-notification-banner_4.cjs\",[[257,\"vertex-scene-tree-search\",{\"debounce\":[2],\"disabled\":[4],\"placeholder\":[1],\"controller\":[16],\"value\":[1025],\"focused\":[32],\"isSearching\":[32],\"setFocus\":[64],\"clear\":[64]},null,{\"controller\":[{\"controllerChanged\":0}]}],[1,\"vertex-scene-tree-notification-banner\",{\"message\":[1],\"actionLabel\":[1,\"action-label\"]}],[257,\"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],\"attemptComputeCellHeight\":[64]},null,{\"rows\":[{\"handleViewportRowsPropsChanged\":0}],\"totalRows\":[{\"handleViewportRowsPropsChanged\":0}],\"rowHeight\":[{\"handleViewportRowsPropsChanged\":0}]}],[257,\"vertex-scene-tree-toolbar\"]]],[\"vertex-viewer-pin-label_2.cjs\",[[0,\"vertex-viewer-pin-label\",{\"pin\":[16],\"elementBounds\":[16],\"value\":[1025],\"pinController\":[1040],\"focused\":[32],\"computedScreenPosition\":[32],\"textareaRows\":[32],\"contentElBounds\":[32],\"setFocus\":[64],\"submit\":[64]},null,{\"focused\":[{\"watchFocusChange\":0}],\"pin\":[{\"watchPinChange\":0}],\"elementBounds\":[{\"watchElementBoundsChange\":0}]}],[0,\"vertex-viewer-pin-label-line\",{\"pinPoint\":[16],\"labelPoint\":[16],\"pin\":[16]}]]],[\"vertex-viewer-measurement-line_2.cjs\",[[1,\"vertex-viewer-measurement-overlays\",{\"measurementOverlays\":[16],\"camera\":[1040],\"viewer\":[16],\"overlays\":[32]},null,{\"measurementOverlays\":[{\"handleMeasurementOverlaysChanged\":0}],\"viewer\":[{\"handleViewerChanged\":0}]}],[1,\"vertex-viewer-measurement-line\",{\"start\":[16],\"end\":[16],\"capLength\":[2,\"cap-length\"],\"pointerEvents\":[1,\"pointer-events\"]}]]],[\"vertex-viewer-dom-element_2.cjs\",[[262,\"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\"]],{\"viewer\":[{\"handleViewerChange\":0}]}],[257,\"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\"]},null,{\"position\":[{\"handlePositionChange\":1}],\"positionJson\":[{\"handlePositionJsonChanged\":1}],\"rotation\":[{\"handleRotationChanged\":1}],\"rotationJson\":[{\"handleRotationJsonChanged\":1}],\"quaternion\":[{\"handleQuaternionChange\":1}],\"quaternionJson\":[{\"handleQuaternionJsonChanged\":1}],\"scale\":[{\"handleScaleChange\":1}],\"scaleJson\":[{\"handleScaleJsonChanged\":1}],\"matrix\":[{\"handleMatrixChanged\":0}],\"occluded\":[{\"handleOcclusionStateChanged\":0}],\"detached\":[{\"handleDetachedStateChanged\":0}]}]]],[\"vertex-viewer-markup-arrow_3.cjs\",[[1,\"vertex-viewer-markup-arrow\",{\"start\":[1040],\"startJson\":[1,\"start\"],\"end\":[1040],\"endJson\":[1,\"end\"],\"originatingViewport\":[16],\"centeringBehavior\":[1,\"centering-behavior\"],\"offset\":[16],\"scale\":[2],\"startLineAnchorStyle\":[1025,\"start-line-anchor-style\"],\"endLineAnchorStyle\":[1025,\"end-line-anchor-style\"],\"mode\":[513],\"viewer\":[16],\"elementBounds\":[32],\"dispose\":[64]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"start\":[{\"handleStartJsonChange\":0}],\"end\":[{\"handleEndJsonChange\":0}],\"mode\":[{\"handleModeChange\":0}],\"offset\":[{\"handleScalingConfigurationChange\":0}],\"originatingViewport\":[{\"handleScalingConfigurationChange\":0}],\"centeringBehavior\":[{\"handleScalingConfigurationChange\":0}],\"scale\":[{\"handleScalingConfigurationChange\":0},{\"handleScaleChange\":0}]}],[1,\"vertex-viewer-markup-circle\",{\"bounds\":[1040],\"boundsJson\":[1,\"bounds\"],\"mode\":[513],\"viewer\":[16],\"originatingViewport\":[16],\"centeringBehavior\":[1,\"centering-behavior\"],\"offset\":[16],\"scale\":[2],\"elementBounds\":[32],\"dispose\":[64]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"bounds\":[{\"handleBoundsJsonChange\":0}],\"mode\":[{\"handleModeChange\":0}],\"offset\":[{\"handleScalingConfigurationChange\":0}],\"originatingViewport\":[{\"handleScalingConfigurationChange\":0}],\"centeringBehavior\":[{\"handleScalingConfigurationChange\":0}],\"scale\":[{\"handleScalingConfigurationChange\":0},{\"handleScaleChange\":0}]}],[1,\"vertex-viewer-markup-freeform\",{\"points\":[1040],\"pointsJson\":[1,\"points\"],\"bounds\":[1040],\"boundsJson\":[1,\"bounds\"],\"mode\":[513],\"viewer\":[16],\"originatingViewport\":[16],\"centeringBehavior\":[1,\"centering-behavior\"],\"offset\":[16],\"scale\":[2],\"elementBounds\":[32],\"screenPoints\":[32],\"dispose\":[64]},null,{\"viewer\":[{\"handleViewerChanged\":0}],\"originatingViewport\":[{\"recomputePointsFromProps\":0},{\"handleScalingConfigurationChange\":0}],\"offset\":[{\"recomputePointsFromProps\":0},{\"handleScalingConfigurationChange\":0}],\"scale\":[{\"recomputePointsFromProps\":0},{\"handleScalingConfigurationChange\":0},{\"handleScaleChange\":0}],\"bounds\":[{\"recomputePointsFromProps\":0}],\"points\":[{\"recomputePointsFromProps\":0}],\"centeringBehavior\":[{\"handleScalingConfigurationChange\":0}],\"mode\":[{\"handleModeChange\":0}]}]]],[\"vertex-viewer-icon.cjs\",[[1,\"vertex-viewer-icon\",{\"name\":[1],\"size\":[1]}]]]]"), options);
|
|
12
12
|
};
|
|
13
13
|
|
|
14
14
|
exports.setNonce = index.setNonce;
|
|
@@ -4,13 +4,17 @@
|
|
|
4
4
|
'use strict';
|
|
5
5
|
|
|
6
6
|
var index = require('./index-1H7bCrlx.js');
|
|
7
|
+
require('./geometry_pb-BxopjNEW.js');
|
|
8
|
+
require('./wrappers_pb-Dupo3Hcb.js');
|
|
9
|
+
require('./wrappers_pb-DCb8h8QZ.js');
|
|
10
|
+
require('./bundle-zMYlwGL2.js');
|
|
7
11
|
var streamAttributes = require('./streamAttributes-CGXdfiOc.js');
|
|
12
|
+
var model = require('./model-CNYtD2Ho.js');
|
|
8
13
|
require('./entities-BhIrCJqA.js');
|
|
9
14
|
var bundle = require('./bundle-BhTmftd-.js');
|
|
10
15
|
var index$1 = require('./index-CRUoPh1y.js');
|
|
11
|
-
require('./bundle-zMYlwGL2.js');
|
|
12
|
-
require('./_commonjsHelpers-CBbBosIU.js');
|
|
13
16
|
require('./bundle-96sYCpzz.js');
|
|
17
|
+
require('./_commonjsHelpers-CBbBosIU.js');
|
|
14
18
|
|
|
15
19
|
/**
|
|
16
20
|
* Source: ftp://ftp.unicode.org/Public/UCD/latest/ucd/SpecialCasing.txt
|
|
@@ -87,6 +91,12 @@ const viewerMeasurementDetailsCss = () => `:host{display:flex;flex-direction:col
|
|
|
87
91
|
const ViewerMeasurementDetails = class {
|
|
88
92
|
constructor(hostRef) {
|
|
89
93
|
index.registerInstance(this, hostRef);
|
|
94
|
+
/**
|
|
95
|
+
* The `MeasurementModel` that should be reflected in these details.
|
|
96
|
+
* If not specified, a new `MeasurementModel` will be created,
|
|
97
|
+
* which can then be used to update the display.
|
|
98
|
+
*/
|
|
99
|
+
this.measurementModel = new model.MeasurementModel();
|
|
90
100
|
/**
|
|
91
101
|
* The unit of distance-based measurement.
|
|
92
102
|
*/
|
|
@@ -117,9 +127,7 @@ const ViewerMeasurementDetails = class {
|
|
|
117
127
|
* @internal
|
|
118
128
|
*/
|
|
119
129
|
connectedCallback() {
|
|
120
|
-
|
|
121
|
-
this.onOutcomeChangedHandler = (_a = this.measurementModel) === null || _a === void 0 ? void 0 : _a.onOutcomeChanged(this.handleOutcomeChange);
|
|
122
|
-
this.updateStateFromModel();
|
|
130
|
+
this.handleMeasurementModelChanged();
|
|
123
131
|
}
|
|
124
132
|
/**
|
|
125
133
|
* @internal
|
|
@@ -207,13 +215,13 @@ const ViewerMeasurementDetails = class {
|
|
|
207
215
|
}
|
|
208
216
|
static get watchers() { return {
|
|
209
217
|
"distanceUnits": [{
|
|
210
|
-
"handleDistanceUnitsChanged":
|
|
218
|
+
"handleDistanceUnitsChanged": 1
|
|
211
219
|
}],
|
|
212
220
|
"angleUnits": [{
|
|
213
|
-
"handleAngleUnitsChanged":
|
|
221
|
+
"handleAngleUnitsChanged": 1
|
|
214
222
|
}],
|
|
215
223
|
"measurementModel": [{
|
|
216
|
-
"handleMeasurementModelChanged":
|
|
224
|
+
"handleMeasurementModelChanged": 1
|
|
217
225
|
}],
|
|
218
226
|
"resultTypes": [{
|
|
219
227
|
"handleResultTypesChanged": 0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"vertex-viewer-measurement-details.cjs.entry.js","mappings":"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","names":["__assign","h","classNames","Vector3","Fragment","DistanceUnits","AngleUnits","AreaUnits","Host"],"sources":["../../node_modules/lower-case/dist.es2015/index.js","../../node_modules/no-case/dist.es2015/index.js","../../node_modules/dot-case/dist.es2015/index.js","../../node_modules/param-case/dist.es2015/index.js","src/components/viewer-measurement-details/viewer-measurement-details-entry.tsx","src/components/viewer-measurement-details/viewer-measurement-details-results.tsx","src/components/viewer-measurement-details/viewer-measurement-details.css?tag=vertex-viewer-measurement-details&encapsulation=shadow","src/components/viewer-measurement-details/viewer-measurement-details.tsx"],"sourcesContent":["/**\n * Source: ftp://ftp.unicode.org/Public/UCD/latest/ucd/SpecialCasing.txt\n */\nvar SUPPORTED_LOCALE = {\n tr: {\n regexp: /\\u0130|\\u0049|\\u0049\\u0307/g,\n map: {\n İ: \"\\u0069\",\n I: \"\\u0131\",\n İ: \"\\u0069\",\n },\n },\n az: {\n regexp: /\\u0130/g,\n map: {\n İ: \"\\u0069\",\n I: \"\\u0131\",\n İ: \"\\u0069\",\n },\n },\n lt: {\n regexp: /\\u0049|\\u004A|\\u012E|\\u00CC|\\u00CD|\\u0128/g,\n map: {\n I: \"\\u0069\\u0307\",\n J: \"\\u006A\\u0307\",\n Į: \"\\u012F\\u0307\",\n Ì: \"\\u0069\\u0307\\u0300\",\n Í: \"\\u0069\\u0307\\u0301\",\n Ĩ: \"\\u0069\\u0307\\u0303\",\n },\n },\n};\n/**\n * Localized lower case.\n */\nexport function localeLowerCase(str, locale) {\n var lang = SUPPORTED_LOCALE[locale.toLowerCase()];\n if (lang)\n return lowerCase(str.replace(lang.regexp, function (m) { return lang.map[m]; }));\n return lowerCase(str);\n}\n/**\n * Lower case as a function.\n */\nexport function lowerCase(str) {\n return str.toLowerCase();\n}\n//# sourceMappingURL=index.js.map","import { lowerCase } from \"lower-case\";\n// Support camel case (\"camelCase\" -> \"camel Case\" and \"CAMELCase\" -> \"CAMEL Case\").\nvar DEFAULT_SPLIT_REGEXP = [/([a-z0-9])([A-Z])/g, /([A-Z])([A-Z][a-z])/g];\n// Remove all non-word characters.\nvar DEFAULT_STRIP_REGEXP = /[^A-Z0-9]+/gi;\n/**\n * Normalize the string into something other libraries can manipulate easier.\n */\nexport function noCase(input, options) {\n if (options === void 0) { options = {}; }\n var _a = options.splitRegexp, splitRegexp = _a === void 0 ? DEFAULT_SPLIT_REGEXP : _a, _b = options.stripRegexp, stripRegexp = _b === void 0 ? DEFAULT_STRIP_REGEXP : _b, _c = options.transform, transform = _c === void 0 ? lowerCase : _c, _d = options.delimiter, delimiter = _d === void 0 ? \" \" : _d;\n var result = replace(replace(input, splitRegexp, \"$1\\0$2\"), stripRegexp, \"\\0\");\n var start = 0;\n var end = result.length;\n // Trim the delimiter from around the output string.\n while (result.charAt(start) === \"\\0\")\n start++;\n while (result.charAt(end - 1) === \"\\0\")\n end--;\n // Transform each token independently.\n return result.slice(start, end).split(\"\\0\").map(transform).join(delimiter);\n}\n/**\n * Replace `re` in the input string with the replacement value.\n */\nfunction replace(input, re, value) {\n if (re instanceof RegExp)\n return input.replace(re, value);\n return re.reduce(function (input, re) { return input.replace(re, value); }, input);\n}\n//# sourceMappingURL=index.js.map","import { __assign } from \"tslib\";\nimport { noCase } from \"no-case\";\nexport function dotCase(input, options) {\n if (options === void 0) { options = {}; }\n return noCase(input, __assign({ delimiter: \".\" }, options));\n}\n//# sourceMappingURL=index.js.map","import { __assign } from \"tslib\";\nimport { dotCase } from \"dot-case\";\nexport function paramCase(input, options) {\n if (options === void 0) { options = {}; }\n return dotCase(input, __assign({ delimiter: \"-\" }, options));\n}\n//# sourceMappingURL=index.js.map","// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { FunctionalComponent, h } from '@stencil/core';\nimport classNames from 'classnames';\nimport { paramCase } from 'param-case';\n\ninterface MeasurementDetailsEntryProps {\n label: string;\n onMouseEnter?: () => void;\n onMouseLeave?: () => void;\n}\n\nexport const MeasurementDetailsEntry: FunctionalComponent<\n MeasurementDetailsEntryProps\n> = ({ label, ...props }, children) => {\n return (\n <div {...props} class=\"measurement-details-entry\">\n <div\n class={classNames('measurement-details-entry-label', paramCase(label))}\n >\n {label}:\n </div>\n {children}\n </div>\n );\n};\n","// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { Fragment, FunctionalComponent, h } from '@stencil/core';\nimport { Vector3 } from '@vertexvis/geometry';\n\nimport { Formatter } from '../../lib/formatter';\nimport {\n MeasurementOverlay,\n MeasurementOverlayManager,\n MeasurementResult,\n MinimumDistanceMeasurementResult,\n PlanarAngleMeasurementResult,\n PlanarDistanceMeasurementResult,\n SurfaceAreaMeasurementResult,\n} from '../../lib/measurement';\nimport { MeasurementDetailsEntry } from './viewer-measurement-details-entry';\n\ninterface MeasurementResultEntryProps<R extends MeasurementResult> {\n result: R;\n overlays?: MeasurementOverlayManager;\n formatter: Formatter<number>;\n onShowOverlay: (overlay: MeasurementOverlay | undefined) => void;\n onHideOverlay: () => void;\n}\n\nexport const MinimumDistanceResultEntry: FunctionalComponent<\n MeasurementResultEntryProps<MinimumDistanceMeasurementResult>\n> = ({ result, formatter, overlays, onShowOverlay, onHideOverlay }) => {\n const v = Vector3.subtract(result.point1, result.point2);\n\n return (\n <Fragment>\n <MeasurementDetailsEntry\n label=\"Dist\"\n onMouseEnter={() => onShowOverlay(overlays?.addLineFromResult(result))}\n onMouseLeave={onHideOverlay}\n >\n {formatter(result.distance)}\n </MeasurementDetailsEntry>\n <MeasurementDetailsEntry\n label=\"X\"\n onMouseEnter={() =>\n onShowOverlay(overlays?.addDistanceVectorFromResult(result))\n }\n onMouseLeave={onHideOverlay}\n >\n {formatter(v.x)}\n </MeasurementDetailsEntry>\n <MeasurementDetailsEntry\n label=\"Y\"\n onMouseEnter={() =>\n onShowOverlay(overlays?.addDistanceVectorFromResult(result))\n }\n onMouseLeave={onHideOverlay}\n >\n {formatter(v.y)}\n </MeasurementDetailsEntry>\n <MeasurementDetailsEntry\n label=\"Z\"\n onMouseEnter={() =>\n onShowOverlay(overlays?.addDistanceVectorFromResult(result))\n }\n onMouseLeave={onHideOverlay}\n >\n {formatter(v.z)}\n </MeasurementDetailsEntry>\n </Fragment>\n );\n};\n\nexport const PlanarAngleResultEntry: FunctionalComponent<\n MeasurementResultEntryProps<PlanarAngleMeasurementResult>\n> = ({ result, formatter }) => {\n return (\n <MeasurementDetailsEntry label=\"Angle\">\n {formatter(result.angle)}\n </MeasurementDetailsEntry>\n );\n};\n\nexport const PlanarDistanceResultEntry: FunctionalComponent<\n MeasurementResultEntryProps<PlanarDistanceMeasurementResult>\n> = ({ result, formatter }) => {\n return (\n <MeasurementDetailsEntry label=\"Parallel Dist\">\n {formatter(result.distance)}\n </MeasurementDetailsEntry>\n );\n};\n\nexport const SurfaceAreaResultEntry: FunctionalComponent<\n MeasurementResultEntryProps<SurfaceAreaMeasurementResult>\n> = ({ result, formatter }) => {\n return (\n <MeasurementDetailsEntry label=\"Area\">\n {formatter(result.area)}\n </MeasurementDetailsEntry>\n );\n};\n",":host {\n display: flex;\n flex-direction: column;\n\n /**\n * @prop --viewer-measurement-details-x-color:\n * The color of the `X` label in measurements.\n * Defaults to red.\n */\n --viewer-measurement-details-x-color: red;\n\n /**\n * @prop --viewer-measurement-details-y-color:\n * The color of the `X` label in measurements.\n * Defaults to var(--green-500).\n */\n --viewer-measurement-details-y-color: var(--green-500);\n\n /**\n * @prop --viewer-measurement-details-z-color:\n * The color of the `X` label in measurements.\n * Defaults to blue.\n */\n --viewer-measurement-details-z-color: blue;\n}\n\n.measurement-details-entry {\n display: flex;\n align-items: center;\n}\n\n.measurement-details-entry-label {\n user-select: none;\n padding-right: 0.25rem;\n}\n\n.measurement-details-entry-label.x {\n color: var(--viewer-measurement-details-x-color);\n}\n\n.measurement-details-entry-label.y {\n color: var(--viewer-measurement-details-y-color);\n}\n\n.measurement-details-entry-label.z {\n color: var(--viewer-measurement-details-z-color);\n}\n","import { Component, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { Disposable } from '@vertexvis/utils';\n\nimport { Formatter } from '../../lib/formatter';\nimport {\n MeasurementModel,\n MeasurementOutcome,\n MeasurementOverlay,\n MeasurementOverlayManager,\n MeasurementResult,\n} from '../../lib/measurement';\nimport {\n AngleUnits,\n AngleUnitType,\n AreaUnits,\n DistanceUnits,\n DistanceUnitType,\n Unit,\n} from '../../lib/types';\nimport {\n MinimumDistanceResultEntry,\n PlanarAngleResultEntry,\n PlanarDistanceResultEntry,\n SurfaceAreaResultEntry,\n} from './viewer-measurement-details-results';\n\n@Component({\n tag: 'vertex-viewer-measurement-details',\n styleUrl: 'viewer-measurement-details.css',\n shadow: true,\n})\nexport class ViewerMeasurementDetails {\n /**\n * The `MeasurementModel` that should be reflected in these details.\n * If not specified, a new `MeasurementModel` will be created,\n * which can then be used to update the display.\n */\n @Prop()\n public measurementModel?: MeasurementModel;\n\n /**\n * The manager that the component will use to present measurement overlays.\n */\n @Prop()\n public measurementOverlays?: MeasurementOverlayManager;\n\n /**\n * The outcome to display. This property is automatically updated if a\n * measurement model is provided.\n */\n @Prop({ mutable: true })\n public measurementOutcome?: MeasurementOutcome;\n\n /**\n * The unit of distance-based measurement.\n */\n @Prop()\n public distanceUnits: DistanceUnitType = 'millimeters';\n\n /**\n * The unit of angle-based measurement.\n */\n @Prop()\n public angleUnits: AngleUnitType = 'degrees';\n\n /**\n * The number of fraction digits to display.\n */\n @Prop()\n public fractionalDigits = 2;\n\n /**\n * An optional formatter that can be used to format the display of a distance.\n * The formatting function is passed a calculated real-world distance and is\n * expected to return a string.\n */\n @Prop()\n public distanceFormatter?: Formatter<number>;\n\n /**\n * An optional formatter that can be used to format the display of an angle.\n * The formatting function is passed a calculated angle in degrees and is\n * expected to return a string.\n */\n @Prop()\n public angleFormatter?: Formatter<number>;\n\n /**\n * An optional formatter that can be used to format the display of an area.\n * The formatting function is passed a calculated area and is\n * expected to return a string.\n */\n @Prop()\n public areaFormatter?: Formatter<number>;\n\n /**\n * A set of result types to display. If `undefined`, then all results will be\n * displayed.\n */\n @Prop()\n public resultTypes?: MeasurementResult['type'][];\n\n @State()\n private overlay?: MeasurementOverlay;\n\n @State()\n private distanceMeasurementUnits = new DistanceUnits(this.distanceUnits);\n\n @State()\n private angleMeasurementUnits = new AngleUnits(this.angleUnits);\n\n @State()\n private areaMeasurementUnits = new AreaUnits(this.distanceUnits);\n\n private onOutcomeChangedHandler?: Disposable;\n\n /**\n * @internal\n */\n protected connectedCallback(): void {\n this.onOutcomeChangedHandler = this.measurementModel?.onOutcomeChanged(\n this.handleOutcomeChange\n );\n this.updateStateFromModel();\n }\n\n /**\n * @internal\n */\n protected disconnectedCallback(): void {\n this.onOutcomeChangedHandler?.dispose();\n }\n\n /**\n * @internal\n */\n @Watch('distanceUnits')\n protected handleDistanceUnitsChanged(): void {\n this.distanceMeasurementUnits = new DistanceUnits(this.distanceUnits);\n this.areaMeasurementUnits = new AreaUnits(this.distanceUnits);\n }\n\n /**\n * @internal\n */\n @Watch('angleUnits')\n protected handleAngleUnitsChanged(): void {\n this.angleMeasurementUnits = new AngleUnits(this.angleUnits);\n }\n\n /**\n * @internal\n */\n @Watch('measurementModel')\n protected handleMeasurementModelChanged(): void {\n this.onOutcomeChangedHandler?.dispose();\n this.onOutcomeChangedHandler = this.measurementModel?.onOutcomeChanged(\n this.handleOutcomeChange\n );\n\n this.updateStateFromModel();\n }\n\n /**\n * @internal\n */\n @Watch('resultTypes')\n protected handleResultTypesChanged(): void {\n this.updateStateFromModel();\n }\n\n /**\n * @internal\n */\n protected render(): h.JSX.IntrinsicElements {\n const isFilteredResultType = (result: MeasurementResult): boolean => {\n return this.resultTypes?.includes(result.type) ?? true;\n };\n\n const results = (this.measurementOutcome?.results ?? []).filter(\n isFilteredResultType\n );\n\n return (\n <Host>\n {this.renderResult('planar-angle', results, (result) => (\n <PlanarAngleResultEntry\n result={result}\n overlays={this.measurementOverlays}\n formatter={this.makeAngleFormatter()}\n onShowOverlay={this.handleShowOverlay}\n onHideOverlay={this.handleHideOverlay}\n />\n ))}\n\n {this.renderResult('planar-distance', results, (result) => (\n <PlanarDistanceResultEntry\n result={result}\n overlays={this.measurementOverlays}\n formatter={this.makeDistanceFormatter()}\n onShowOverlay={this.handleShowOverlay}\n onHideOverlay={this.handleHideOverlay}\n />\n ))}\n\n {this.renderResult('surface-area', results, (result) => (\n <SurfaceAreaResultEntry\n result={result}\n overlays={this.measurementOverlays}\n formatter={this.makeAreaFormatter()}\n onShowOverlay={this.handleShowOverlay}\n onHideOverlay={this.handleHideOverlay}\n />\n ))}\n\n {this.renderResult('minimum-distance', results, (result) => (\n <MinimumDistanceResultEntry\n result={result}\n overlays={this.measurementOverlays}\n formatter={this.makeDistanceFormatter()}\n onShowOverlay={this.handleShowOverlay}\n onHideOverlay={this.handleHideOverlay}\n />\n ))}\n </Host>\n );\n }\n\n private handleShowOverlay = (\n overlay: MeasurementOverlay | undefined\n ): void => {\n this.overlay = overlay;\n };\n\n private handleHideOverlay = (): void => {\n this.overlay?.dispose();\n };\n\n private handleOutcomeChange = (): void => {\n this.updateStateFromModel();\n };\n\n private updateStateFromModel(): void {\n this.measurementOutcome = this.measurementModel?.getOutcome();\n }\n\n private renderResult<T extends MeasurementResult['type']>(\n type: T,\n results: MeasurementResult[],\n render: (\n result: Extract<MeasurementResult, { type: T }>\n ) => h.JSX.IntrinsicElements | undefined\n ): h.JSX.IntrinsicElements | undefined {\n const result = this.getResultForType(type, results);\n return result != null ? render(result) : undefined;\n }\n\n private getResultForType<T extends MeasurementResult['type']>(\n type: T,\n results: MeasurementResult[]\n ): Extract<MeasurementResult, { type: T }> | undefined {\n return results.find((result) => result.type === type) as Extract<\n MeasurementResult,\n { type: T }\n >;\n }\n\n private makeDistanceFormatter(): Formatter<number> {\n return this.makeFormatter(\n (value) => this.distanceMeasurementUnits.convertWorldValueToReal(value),\n this.distanceMeasurementUnits.unit,\n this.distanceFormatter\n );\n }\n\n private makeAngleFormatter(): Formatter<number> {\n return this.makeFormatter(\n (value) => this.angleMeasurementUnits.convertTo(value),\n this.angleMeasurementUnits.unit,\n this.angleFormatter\n );\n }\n\n private makeAreaFormatter(): Formatter<number> {\n return this.makeFormatter(\n (value) => this.areaMeasurementUnits.convertWorldValueToReal(value),\n this.areaMeasurementUnits.unit,\n this.areaFormatter\n );\n }\n\n private makeFormatter(\n convert: (value: number) => number,\n units: Unit,\n customFormatter: Formatter<number> | undefined\n ): Formatter<number> {\n return (value) => {\n const v = convert(value);\n\n if (customFormatter != null) {\n return customFormatter(v);\n } else {\n return this.formatValue(v, units);\n }\n };\n }\n\n private formatValue(value: number, unit: Unit): string {\n const val = value.toFixed(this.fractionalDigits);\n const isApprox = this.measurementOutcome?.isApproximate ?? false;\n return `${isApprox ? '~' + val : val} ${unit.abbreviatedName}`;\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"vertex-viewer-measurement-details.cjs.entry.js","mappings":"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","names":["__assign","h","classNames","Vector3","Fragment","MeasurementModel","DistanceUnits","AngleUnits","AreaUnits","Host"],"sources":["../../node_modules/lower-case/dist.es2015/index.js","../../node_modules/no-case/dist.es2015/index.js","../../node_modules/dot-case/dist.es2015/index.js","../../node_modules/param-case/dist.es2015/index.js","src/components/viewer-measurement-details/viewer-measurement-details-entry.tsx","src/components/viewer-measurement-details/viewer-measurement-details-results.tsx","src/components/viewer-measurement-details/viewer-measurement-details.css?tag=vertex-viewer-measurement-details&encapsulation=shadow","src/components/viewer-measurement-details/viewer-measurement-details.tsx"],"sourcesContent":["/**\n * Source: ftp://ftp.unicode.org/Public/UCD/latest/ucd/SpecialCasing.txt\n */\nvar SUPPORTED_LOCALE = {\n tr: {\n regexp: /\\u0130|\\u0049|\\u0049\\u0307/g,\n map: {\n İ: \"\\u0069\",\n I: \"\\u0131\",\n İ: \"\\u0069\",\n },\n },\n az: {\n regexp: /\\u0130/g,\n map: {\n İ: \"\\u0069\",\n I: \"\\u0131\",\n İ: \"\\u0069\",\n },\n },\n lt: {\n regexp: /\\u0049|\\u004A|\\u012E|\\u00CC|\\u00CD|\\u0128/g,\n map: {\n I: \"\\u0069\\u0307\",\n J: \"\\u006A\\u0307\",\n Į: \"\\u012F\\u0307\",\n Ì: \"\\u0069\\u0307\\u0300\",\n Í: \"\\u0069\\u0307\\u0301\",\n Ĩ: \"\\u0069\\u0307\\u0303\",\n },\n },\n};\n/**\n * Localized lower case.\n */\nexport function localeLowerCase(str, locale) {\n var lang = SUPPORTED_LOCALE[locale.toLowerCase()];\n if (lang)\n return lowerCase(str.replace(lang.regexp, function (m) { return lang.map[m]; }));\n return lowerCase(str);\n}\n/**\n * Lower case as a function.\n */\nexport function lowerCase(str) {\n return str.toLowerCase();\n}\n//# sourceMappingURL=index.js.map","import { lowerCase } from \"lower-case\";\n// Support camel case (\"camelCase\" -> \"camel Case\" and \"CAMELCase\" -> \"CAMEL Case\").\nvar DEFAULT_SPLIT_REGEXP = [/([a-z0-9])([A-Z])/g, /([A-Z])([A-Z][a-z])/g];\n// Remove all non-word characters.\nvar DEFAULT_STRIP_REGEXP = /[^A-Z0-9]+/gi;\n/**\n * Normalize the string into something other libraries can manipulate easier.\n */\nexport function noCase(input, options) {\n if (options === void 0) { options = {}; }\n var _a = options.splitRegexp, splitRegexp = _a === void 0 ? DEFAULT_SPLIT_REGEXP : _a, _b = options.stripRegexp, stripRegexp = _b === void 0 ? DEFAULT_STRIP_REGEXP : _b, _c = options.transform, transform = _c === void 0 ? lowerCase : _c, _d = options.delimiter, delimiter = _d === void 0 ? \" \" : _d;\n var result = replace(replace(input, splitRegexp, \"$1\\0$2\"), stripRegexp, \"\\0\");\n var start = 0;\n var end = result.length;\n // Trim the delimiter from around the output string.\n while (result.charAt(start) === \"\\0\")\n start++;\n while (result.charAt(end - 1) === \"\\0\")\n end--;\n // Transform each token independently.\n return result.slice(start, end).split(\"\\0\").map(transform).join(delimiter);\n}\n/**\n * Replace `re` in the input string with the replacement value.\n */\nfunction replace(input, re, value) {\n if (re instanceof RegExp)\n return input.replace(re, value);\n return re.reduce(function (input, re) { return input.replace(re, value); }, input);\n}\n//# sourceMappingURL=index.js.map","import { __assign } from \"tslib\";\nimport { noCase } from \"no-case\";\nexport function dotCase(input, options) {\n if (options === void 0) { options = {}; }\n return noCase(input, __assign({ delimiter: \".\" }, options));\n}\n//# sourceMappingURL=index.js.map","import { __assign } from \"tslib\";\nimport { dotCase } from \"dot-case\";\nexport function paramCase(input, options) {\n if (options === void 0) { options = {}; }\n return dotCase(input, __assign({ delimiter: \"-\" }, options));\n}\n//# sourceMappingURL=index.js.map","// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { FunctionalComponent, h } from '@stencil/core';\nimport classNames from 'classnames';\nimport { paramCase } from 'param-case';\n\ninterface MeasurementDetailsEntryProps {\n label: string;\n onMouseEnter?: () => void;\n onMouseLeave?: () => void;\n}\n\nexport const MeasurementDetailsEntry: FunctionalComponent<\n MeasurementDetailsEntryProps\n> = ({ label, ...props }, children) => {\n return (\n <div {...props} class=\"measurement-details-entry\">\n <div\n class={classNames('measurement-details-entry-label', paramCase(label))}\n >\n {label}:\n </div>\n {children}\n </div>\n );\n};\n","// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport { Fragment, FunctionalComponent, h } from '@stencil/core';\nimport { Vector3 } from '@vertexvis/geometry';\n\nimport { Formatter } from '../../lib/formatter';\nimport {\n MeasurementOverlay,\n MeasurementOverlayManager,\n MeasurementResult,\n MinimumDistanceMeasurementResult,\n PlanarAngleMeasurementResult,\n PlanarDistanceMeasurementResult,\n SurfaceAreaMeasurementResult,\n} from '../../lib/measurement';\nimport { MeasurementDetailsEntry } from './viewer-measurement-details-entry';\n\ninterface MeasurementResultEntryProps<R extends MeasurementResult> {\n result: R;\n overlays?: MeasurementOverlayManager;\n formatter: Formatter<number>;\n onShowOverlay: (overlay: MeasurementOverlay | undefined) => void;\n onHideOverlay: () => void;\n}\n\nexport const MinimumDistanceResultEntry: FunctionalComponent<\n MeasurementResultEntryProps<MinimumDistanceMeasurementResult>\n> = ({ result, formatter, overlays, onShowOverlay, onHideOverlay }) => {\n const v = Vector3.subtract(result.point1, result.point2);\n\n return (\n <Fragment>\n <MeasurementDetailsEntry\n label=\"Dist\"\n onMouseEnter={() => onShowOverlay(overlays?.addLineFromResult(result))}\n onMouseLeave={onHideOverlay}\n >\n {formatter(result.distance)}\n </MeasurementDetailsEntry>\n <MeasurementDetailsEntry\n label=\"X\"\n onMouseEnter={() =>\n onShowOverlay(overlays?.addDistanceVectorFromResult(result))\n }\n onMouseLeave={onHideOverlay}\n >\n {formatter(v.x)}\n </MeasurementDetailsEntry>\n <MeasurementDetailsEntry\n label=\"Y\"\n onMouseEnter={() =>\n onShowOverlay(overlays?.addDistanceVectorFromResult(result))\n }\n onMouseLeave={onHideOverlay}\n >\n {formatter(v.y)}\n </MeasurementDetailsEntry>\n <MeasurementDetailsEntry\n label=\"Z\"\n onMouseEnter={() =>\n onShowOverlay(overlays?.addDistanceVectorFromResult(result))\n }\n onMouseLeave={onHideOverlay}\n >\n {formatter(v.z)}\n </MeasurementDetailsEntry>\n </Fragment>\n );\n};\n\nexport const PlanarAngleResultEntry: FunctionalComponent<\n MeasurementResultEntryProps<PlanarAngleMeasurementResult>\n> = ({ result, formatter }) => {\n return (\n <MeasurementDetailsEntry label=\"Angle\">\n {formatter(result.angle)}\n </MeasurementDetailsEntry>\n );\n};\n\nexport const PlanarDistanceResultEntry: FunctionalComponent<\n MeasurementResultEntryProps<PlanarDistanceMeasurementResult>\n> = ({ result, formatter }) => {\n return (\n <MeasurementDetailsEntry label=\"Parallel Dist\">\n {formatter(result.distance)}\n </MeasurementDetailsEntry>\n );\n};\n\nexport const SurfaceAreaResultEntry: FunctionalComponent<\n MeasurementResultEntryProps<SurfaceAreaMeasurementResult>\n> = ({ result, formatter }) => {\n return (\n <MeasurementDetailsEntry label=\"Area\">\n {formatter(result.area)}\n </MeasurementDetailsEntry>\n );\n};\n",":host {\n display: flex;\n flex-direction: column;\n\n /**\n * @prop --viewer-measurement-details-x-color:\n * The color of the `X` label in measurements.\n * Defaults to red.\n */\n --viewer-measurement-details-x-color: red;\n\n /**\n * @prop --viewer-measurement-details-y-color:\n * The color of the `X` label in measurements.\n * Defaults to var(--green-500).\n */\n --viewer-measurement-details-y-color: var(--green-500);\n\n /**\n * @prop --viewer-measurement-details-z-color:\n * The color of the `X` label in measurements.\n * Defaults to blue.\n */\n --viewer-measurement-details-z-color: blue;\n}\n\n.measurement-details-entry {\n display: flex;\n align-items: center;\n}\n\n.measurement-details-entry-label {\n user-select: none;\n padding-right: 0.25rem;\n}\n\n.measurement-details-entry-label.x {\n color: var(--viewer-measurement-details-x-color);\n}\n\n.measurement-details-entry-label.y {\n color: var(--viewer-measurement-details-y-color);\n}\n\n.measurement-details-entry-label.z {\n color: var(--viewer-measurement-details-z-color);\n}\n","import { Component, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { Disposable } from '@vertexvis/utils';\n\nimport { Formatter } from '../../lib/formatter';\nimport {\n MeasurementModel,\n MeasurementOutcome,\n MeasurementOverlay,\n MeasurementOverlayManager,\n MeasurementResult,\n} from '../../lib/measurement';\nimport {\n AngleUnits,\n AngleUnitType,\n AreaUnits,\n DistanceUnits,\n DistanceUnitType,\n Unit,\n} from '../../lib/types';\nimport {\n MinimumDistanceResultEntry,\n PlanarAngleResultEntry,\n PlanarDistanceResultEntry,\n SurfaceAreaResultEntry,\n} from './viewer-measurement-details-results';\n\n@Component({\n tag: 'vertex-viewer-measurement-details',\n styleUrl: 'viewer-measurement-details.css',\n shadow: true,\n})\nexport class ViewerMeasurementDetails {\n /**\n * The `MeasurementModel` that should be reflected in these details.\n * If not specified, a new `MeasurementModel` will be created,\n * which can then be used to update the display.\n */\n @Prop()\n public measurementModel?: MeasurementModel = new MeasurementModel();\n\n /**\n * The manager that the component will use to present measurement overlays.\n */\n @Prop()\n public measurementOverlays?: MeasurementOverlayManager;\n\n /**\n * The outcome to display. This property is automatically updated if a\n * measurement model is provided.\n */\n @Prop({ mutable: true })\n public measurementOutcome?: MeasurementOutcome;\n\n /**\n * The unit of distance-based measurement.\n */\n @Prop()\n public distanceUnits: DistanceUnitType = 'millimeters';\n\n /**\n * The unit of angle-based measurement.\n */\n @Prop()\n public angleUnits: AngleUnitType = 'degrees';\n\n /**\n * The number of fraction digits to display.\n */\n @Prop()\n public fractionalDigits = 2;\n\n /**\n * An optional formatter that can be used to format the display of a distance.\n * The formatting function is passed a calculated real-world distance and is\n * expected to return a string.\n */\n @Prop()\n public distanceFormatter?: Formatter<number>;\n\n /**\n * An optional formatter that can be used to format the display of an angle.\n * The formatting function is passed a calculated angle in degrees and is\n * expected to return a string.\n */\n @Prop()\n public angleFormatter?: Formatter<number>;\n\n /**\n * An optional formatter that can be used to format the display of an area.\n * The formatting function is passed a calculated area and is\n * expected to return a string.\n */\n @Prop()\n public areaFormatter?: Formatter<number>;\n\n /**\n * A set of result types to display. If `undefined`, then all results will be\n * displayed.\n */\n @Prop()\n public resultTypes?: MeasurementResult['type'][];\n\n @State()\n private overlay?: MeasurementOverlay;\n\n @State()\n private distanceMeasurementUnits = new DistanceUnits(this.distanceUnits);\n\n @State()\n private angleMeasurementUnits = new AngleUnits(this.angleUnits);\n\n @State()\n private areaMeasurementUnits = new AreaUnits(this.distanceUnits);\n\n private onOutcomeChangedHandler?: Disposable;\n\n /**\n * @internal\n */\n protected connectedCallback(): void {\n this.handleMeasurementModelChanged();\n }\n\n /**\n * @internal\n */\n protected disconnectedCallback(): void {\n this.onOutcomeChangedHandler?.dispose();\n }\n\n /**\n * @internal\n */\n @Watch('distanceUnits', { immediate: true })\n protected handleDistanceUnitsChanged(): void {\n this.distanceMeasurementUnits = new DistanceUnits(this.distanceUnits);\n this.areaMeasurementUnits = new AreaUnits(this.distanceUnits);\n }\n\n /**\n * @internal\n */\n @Watch('angleUnits', { immediate: true })\n protected handleAngleUnitsChanged(): void {\n this.angleMeasurementUnits = new AngleUnits(this.angleUnits);\n }\n\n /**\n * @internal\n */\n @Watch('measurementModel', { immediate: true })\n protected handleMeasurementModelChanged(): void {\n this.onOutcomeChangedHandler?.dispose();\n this.onOutcomeChangedHandler = this.measurementModel?.onOutcomeChanged(\n this.handleOutcomeChange\n );\n\n this.updateStateFromModel();\n }\n\n /**\n * @internal\n */\n @Watch('resultTypes')\n protected handleResultTypesChanged(): void {\n this.updateStateFromModel();\n }\n\n /**\n * @internal\n */\n protected render(): h.JSX.IntrinsicElements {\n const isFilteredResultType = (result: MeasurementResult): boolean => {\n return this.resultTypes?.includes(result.type) ?? true;\n };\n\n const results = (this.measurementOutcome?.results ?? []).filter(\n isFilteredResultType\n );\n\n return (\n <Host>\n {this.renderResult('planar-angle', results, (result) => (\n <PlanarAngleResultEntry\n result={result}\n overlays={this.measurementOverlays}\n formatter={this.makeAngleFormatter()}\n onShowOverlay={this.handleShowOverlay}\n onHideOverlay={this.handleHideOverlay}\n />\n ))}\n\n {this.renderResult('planar-distance', results, (result) => (\n <PlanarDistanceResultEntry\n result={result}\n overlays={this.measurementOverlays}\n formatter={this.makeDistanceFormatter()}\n onShowOverlay={this.handleShowOverlay}\n onHideOverlay={this.handleHideOverlay}\n />\n ))}\n\n {this.renderResult('surface-area', results, (result) => (\n <SurfaceAreaResultEntry\n result={result}\n overlays={this.measurementOverlays}\n formatter={this.makeAreaFormatter()}\n onShowOverlay={this.handleShowOverlay}\n onHideOverlay={this.handleHideOverlay}\n />\n ))}\n\n {this.renderResult('minimum-distance', results, (result) => (\n <MinimumDistanceResultEntry\n result={result}\n overlays={this.measurementOverlays}\n formatter={this.makeDistanceFormatter()}\n onShowOverlay={this.handleShowOverlay}\n onHideOverlay={this.handleHideOverlay}\n />\n ))}\n </Host>\n );\n }\n\n private handleShowOverlay = (\n overlay: MeasurementOverlay | undefined\n ): void => {\n this.overlay = overlay;\n };\n\n private handleHideOverlay = (): void => {\n this.overlay?.dispose();\n };\n\n private handleOutcomeChange = (): void => {\n this.updateStateFromModel();\n };\n\n private updateStateFromModel(): void {\n this.measurementOutcome = this.measurementModel?.getOutcome();\n }\n\n private renderResult<T extends MeasurementResult['type']>(\n type: T,\n results: MeasurementResult[],\n render: (\n result: Extract<MeasurementResult, { type: T }>\n ) => h.JSX.IntrinsicElements | undefined\n ): h.JSX.IntrinsicElements | undefined {\n const result = this.getResultForType(type, results);\n return result != null ? render(result) : undefined;\n }\n\n private getResultForType<T extends MeasurementResult['type']>(\n type: T,\n results: MeasurementResult[]\n ): Extract<MeasurementResult, { type: T }> | undefined {\n return results.find((result) => result.type === type) as Extract<\n MeasurementResult,\n { type: T }\n >;\n }\n\n private makeDistanceFormatter(): Formatter<number> {\n return this.makeFormatter(\n (value) => this.distanceMeasurementUnits.convertWorldValueToReal(value),\n this.distanceMeasurementUnits.unit,\n this.distanceFormatter\n );\n }\n\n private makeAngleFormatter(): Formatter<number> {\n return this.makeFormatter(\n (value) => this.angleMeasurementUnits.convertTo(value),\n this.angleMeasurementUnits.unit,\n this.angleFormatter\n );\n }\n\n private makeAreaFormatter(): Formatter<number> {\n return this.makeFormatter(\n (value) => this.areaMeasurementUnits.convertWorldValueToReal(value),\n this.areaMeasurementUnits.unit,\n this.areaFormatter\n );\n }\n\n private makeFormatter(\n convert: (value: number) => number,\n units: Unit,\n customFormatter: Formatter<number> | undefined\n ): Formatter<number> {\n return (value) => {\n const v = convert(value);\n\n if (customFormatter != null) {\n return customFormatter(v);\n } else {\n return this.formatValue(v, units);\n }\n };\n }\n\n private formatValue(value: number, unit: Unit): string {\n const val = value.toFixed(this.fractionalDigits);\n const isApprox = this.measurementOutcome?.isApproximate ?? false;\n return `${isApprox ? '~' + val : val} ${unit.abbreviatedName}`;\n }\n}\n"],"version":3}
|