@geoscene/core 4.34.10 → 4.34.12
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/LICENSE.md +18 -18
- package/README.md +25 -25
- package/WebLinkChart.js +1 -1
- package/assets/geoscene/core/workers/chunks/0f735b0dec173142f3b6.js +1 -1
- package/assets/geoscene/core/workers/chunks/3a457e718a901a45902e.js +1 -1
- package/assets/geoscene/core/workers/chunks/49571d6875de1f2e7e25.js +32 -32
- package/assets/geoscene/core/workers/chunks/7565b382f6b3d2cb46a3.js +1 -1
- package/assets/geoscene/core/workers/chunks/9ff8ee6ed6b98c03ae7e.js +1 -1
- package/assets/geoscene/core/workers/chunks/aa78b69219d9a0ef1c54.js +1 -1
- package/assets/geoscene/core/workers/chunks/ce16489cf7eb0d78c741.js +1 -1
- package/assets/geoscene/core/workers/chunks/d6e0528eacee7ea4c1ce.js +1 -1
- package/assets/geoscene/core/workers/chunks/f651c05604eab83aef5f.js +1 -1
- package/assets/geoscene/css/main.scss +1 -1
- package/assets/geoscene/css/view.scss +1 -1
- package/assets/geoscene/themes/base/_colorVariables.scss +1 -1
- package/assets/geoscene/themes/base/_core.scss +1 -1
- package/assets/geoscene/themes/base/_functions.scss +23 -23
- package/assets/geoscene/themes/base/_layout.scss +11 -11
- package/assets/geoscene/themes/base/_sizes.scss +130 -130
- package/assets/geoscene/themes/base/_type.scss +25 -25
- package/assets/geoscene/themes/base/colors/css/brand_colors.css +76 -76
- package/assets/geoscene/themes/base/colors/css/calcite_core_colors.css +169 -169
- package/assets/geoscene/themes/base/colors/css/calcite_core_colors_dark.css +169 -169
- package/assets/geoscene/themes/base/colors/css/calcite_gray_colors.css +43 -43
- package/assets/geoscene/themes/base/colors/css/calcite_gray_colors_dark.css +43 -43
- package/assets/geoscene/themes/base/colors/css/calcite_highlight_colors.css +43 -43
- package/assets/geoscene/themes/base/colors/css/calcite_highlight_colors_dark.css +43 -43
- package/assets/geoscene/themes/base/colors/css/calcite_vibrant_colors.css +67 -67
- package/assets/geoscene/themes/base/colors/css/calcite_vibrant_colors_dark.css +67 -67
- package/assets/geoscene/themes/base/colors/css/complete.css +610 -610
- package/assets/geoscene/themes/base/colors/css/scss/calcite_core_colors_dark.scss +285 -285
- package/assets/geoscene/themes/base/colors/css/scss/calcite_gray_colors_dark.scss +91 -91
- package/assets/geoscene/themes/base/colors/css/scss/calcite_highlight_colors_dark.scss +64 -64
- package/assets/geoscene/themes/base/colors/css/scss/calcite_vibrant_colors_dark.scss +124 -124
- package/assets/geoscene/themes/base/colors/css/scss/complete.scss +11 -11
- package/assets/geoscene/themes/base/colors/patterns_json/calcite_core_colors_dark.css +673 -673
- package/assets/geoscene/themes/base/colors/patterns_json/calcite_gray_colors_dark.css +169 -169
- package/assets/geoscene/themes/base/colors/patterns_json/calcite_highlight_colors_dark.css +169 -169
- package/assets/geoscene/themes/base/colors/patterns_json/calcite_vibrant_colors_dark.css +265 -265
- package/assets/geoscene/themes/base/colors/patterns_json/scss/calcite_core_colors_dark.scss +964 -964
- package/assets/geoscene/themes/base/colors/patterns_json/scss/calcite_gray_colors_dark.scss +263 -263
- package/assets/geoscene/themes/base/colors/patterns_json/scss/calcite_highlight_colors_dark.scss +234 -234
- package/assets/geoscene/themes/base/colors/patterns_json/scss/calcite_vibrant_colors_dark.scss +347 -347
- package/assets/geoscene/themes/base/colors/patterns_json/scss/complete.scss +11 -11
- package/assets/geoscene/themes/base/fonts/cdn.scss +2 -2
- package/assets/geoscene/themes/base/icons/fonts/CalciteWebCoreIcons.svg +196 -196
- package/assets/geoscene/themes/base/widgets/_AreaMeasurement2D.scss +7 -7
- package/assets/geoscene/themes/base/widgets/_AreaMeasurement3D.scss +7 -7
- package/assets/geoscene/themes/base/widgets/_DirectLineMeasurement3D.scss +7 -7
- package/assets/geoscene/themes/base/widgets/_DistanceMeasurement2D.scss +7 -7
- package/assets/geoscene/themes/base/widgets/_Measurement.scss +7 -7
- package/assets/geoscene/themes/light/view.scss +9 -9
- package/assets/geoscene/views/3d/analysis/images/heading-rotate.ts.svg +10 -10
- package/assets/geoscene/views/3d/analysis/images/tilt-rotate.ts.svg +11 -11
- package/assets/geoscene/views/3d/webgl-engine/lib/intersectorUtils.svg +117 -117
- package/assets/geoscene/views/magnifier/mask.ts.svg +5 -5
- package/assets/geoscene/views/magnifier/overlay.ts.svg +36 -36
- package/copyright.txt +1654 -1654
- package/geometry/operators/graphicBufferOperator.d.ts +4 -4
- package/identity/IdentityModal.js +1 -1
- package/layers/support/rasterDatasets/ImageServerRaster.js +1 -1
- package/package.json +30 -30
- package/portal/schemas/definitions.js +1 -1
- package/support/actions/actionUtils.js +1 -1
- package/views/interactive/tooltip/components/DrawHeaderActions.js +1 -1
- package/views/interactive/tooltip/components/TooltipEditableField.js +1 -1
- package/views/interactive/tooltip/content/TooltipContent.js +1 -1
- package/widgets/Attachments.js +1 -1
- package/widgets/BasemapGallery.js +1 -1
- package/widgets/BasemapLayerList.js +1 -1
- package/widgets/BasemapToggle/BasemapToggleViewModel.js +1 -1
- package/widgets/BasemapToggle.js +1 -1
- package/widgets/BatchAttributeForm.js +1 -1
- package/widgets/Bookmarks.js +1 -1
- package/widgets/BuildingExplorer/BuildingDisciplinesTree/BuildingDisciplinesNode.js +1 -1
- package/widgets/BuildingExplorer/BuildingDisciplinesTree/BuildingDisciplinesTree.js +1 -1
- package/widgets/BuildingExplorer/BuildingLevelPicker/BuildingLevelPicker.js +1 -1
- package/widgets/BuildingExplorer/BuildingLevelPicker/Label.js +1 -1
- package/widgets/BuildingExplorer/BuildingPhasePicker/BuildingPhasePicker.js +1 -1
- package/widgets/BuildingExplorer.js +1 -1
- package/widgets/CatalogLayerList.js +1 -1
- package/widgets/Compass.js +1 -1
- package/widgets/CoordinateConversion.js +1 -1
- package/widgets/Daylight.js +1 -1
- package/widgets/DirectionalPad.js +1 -1
- package/widgets/Directions.js +1 -1
- package/widgets/Editor/components/FeatureList.js +1 -1
- package/widgets/Editor/components/FooterActions.js +1 -1
- package/widgets/Editor/components/MergeFeaturesList.js +1 -1
- package/widgets/Editor/components/Notices.js +1 -1
- package/widgets/Editor/components/PanelContent.js +1 -1
- package/widgets/Editor/components/PendingFeatureList.js +1 -1
- package/widgets/Editor/components/Prompt.js +1 -1
- package/widgets/Editor/components/Settings.js +1 -1
- package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
- package/widgets/Editor/components/UploadDetails.js +1 -1
- package/widgets/Editor.js +1 -1
- package/widgets/ElevationProfile/components/LegendItem.js +1 -1
- package/widgets/ElevationProfile/components/SettingsButton.js +1 -1
- package/widgets/ElevationProfile/components/Statistics.js +1 -1
- package/widgets/ElevationProfile.js +1 -1
- package/widgets/Expand.js +1 -1
- package/widgets/Feature/FeatureExpression.js +1 -1
- package/widgets/Feature/FeatureMedia.js +1 -1
- package/widgets/Feature/FeatureRelationship.js +1 -1
- package/widgets/Feature/FeatureUtilityNetworkAssociationList.js +1 -1
- package/widgets/Feature/FeatureUtilityNetworkAssociations.js +1 -1
- package/widgets/Feature.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/FeatureFormUtilityNetworkAssociationList.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationItemList.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationSettings.js +1 -1
- package/widgets/FeatureForm.js +1 -1
- package/widgets/FeatureTable/support/tableUtils.js +1 -1
- package/widgets/FeatureTable.js +1 -1
- package/widgets/FeatureTemplates.js +1 -1
- package/widgets/Features/FeaturesDrillIn.js +1 -1
- package/widgets/Features.js +1 -1
- package/widgets/FloorFilter.js +1 -1
- package/widgets/Fullscreen.js +1 -1
- package/widgets/Home.js +1 -1
- package/widgets/LayerList/LayerListItem.js +1 -1
- package/widgets/LayerList.js +1 -1
- package/widgets/Legend/styles/card/CardView.js +1 -1
- package/widgets/LineOfSight.js +1 -1
- package/widgets/Locate.js +1 -1
- package/widgets/NavigationToggle.js +1 -1
- package/widgets/OrientedImageryViewer/components/Alert.js +1 -1
- package/widgets/OrientedImageryViewer/components/ImageLocationWidget.js +1 -1
- package/widgets/OrientedImageryViewer/components/ImageMeasurementWidget.js +1 -1
- package/widgets/OrientedImageryViewer/components/ImageOverlays.js +1 -1
- package/widgets/OrientedImageryViewer/components/ImageViewer.js +1 -1
- package/widgets/OrientedImageryViewer/components/NavigationActions.js +1 -1
- package/widgets/OrientedImageryViewer/components/NavigationSettings.js +1 -1
- package/widgets/OrientedImageryViewer/components/NavigationUI360.js +1 -1
- package/widgets/OrientedImageryViewer/components/SequentialNavigationUI.js +1 -1
- package/widgets/OrientedImageryViewer/components/SketchTools.js +1 -1
- package/widgets/OrientedImageryViewer/components/VideoEnhancementTools.js +1 -1
- package/widgets/OrientedImageryViewer.js +1 -1
- package/widgets/PanoramicVideoViewer.js +1 -1
- package/widgets/PanoramicViewer.js +1 -1
- package/widgets/Print.js +1 -1
- package/widgets/ScaleRangeSlider.js +1 -1
- package/widgets/Search/SearchResultRenderer.js +1 -1
- package/widgets/Search.js +1 -1
- package/widgets/ShadowCast/components/DiscreteConfigurator.js +1 -1
- package/widgets/ShadowCast/components/DurationConfigurator.js +1 -1
- package/widgets/ShadowCast/components/ThresholdConfigurator.js +1 -1
- package/widgets/ShadowCast.js +1 -1
- package/widgets/Sketch/support/ResponsiveToolbar/OverflowGroup.js +1 -1
- package/widgets/Sketch/support/ResponsiveToolbar/ResponsiveToolbar.js +1 -1
- package/widgets/Sketch/support/ResponsiveToolbar/SplitButton.js +1 -1
- package/widgets/Sketch.js +1 -1
- package/widgets/Slice.js +1 -1
- package/widgets/TableList.js +1 -1
- package/widgets/TimeSlider.js +1 -1
- package/widgets/TimeZoneLabel.js +1 -1
- package/widgets/Track.js +1 -1
- package/widgets/UtilityNetworkAssociations/UtilityNetworkAssociationsLineSymbolPicker.js +1 -1
- package/widgets/UtilityNetworkAssociations.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeature.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeaturesDrillIn.js +1 -1
- package/widgets/UtilityNetworkTrace.js +1 -1
- package/widgets/UtilityNetworkValidateTopology.js +1 -1
- package/widgets/ValuePicker/ValuePickerCombobox.js +1 -1
- package/widgets/ValuePicker/ValuePickerSlider.js +1 -1
- package/widgets/ValuePicker.js +1 -1
- package/widgets/VideoPlayer/components/MetadataSection.js +1 -1
- package/widgets/VideoPlayer/components/PlayerActionsGroup.js +1 -1
- package/widgets/VideoPlayer/components/PlayerControlsGroup.js +1 -1
- package/widgets/VideoPlayer/components/SettingsButton.js +1 -1
- package/widgets/VideoPlayer.js +1 -1
- package/widgets/Weather/LabeledSlider.js +1 -1
- package/widgets/Weather.js +1 -1
- package/widgets/Zoom.js +1 -1
- package/widgets/support/ColorPicker.js +1 -1
- package/widgets/support/FilterBuilder.js +1 -1
- package/widgets/support/FilterCondition.js +1 -1
- package/widgets/support/GridControls.js +1 -1
- package/widgets/support/LabeledSwitch.js +1 -1
- package/widgets/support/MeasurementWidgetContent.js +1 -1
- package/widgets/support/SelectionList.js +1 -1
- package/widgets/support/SelectionToolbar.js +1 -1
- package/widgets/support/SketchTooltipControls.js +1 -1
- package/widgets/support/SnappingControls.js +1 -1
- package/widgets/support/TimezonePicker.js +1 -1
- package/widgets/support/UnitSelect.js +1 -1
- package/widgets/support/UtilityNetworkAssociations/UtilityNetworkAssociationList.js +1 -1
- package/widgets/support/componentsUtils.js +1 -1
package/widgets/VideoPlayer.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{deprecateWidget as i}from"../core/deprecate.js";import{clone as o}from"../core/lang.js";import t from"../core/Logger.js";import{watch as s,initial as r}from"../core/reactiveUtils.js";import{property as n}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import{subclass as a}from"../core/accessorSupport/decorators/subclass.js";import{formatDate as l}from"../intl/date.js";import d from"../views/VideoView.js";import c from"./Slider.js";import m from"./Widget.js";import{loadCalciteComponents as p}from"./support/componentsUtils.js";import{globalCss as v}from"./support/globalCss.js";import"./support/widgetUtils.js";import{messageBundle as u}from"./support/decorators/messageBundle.js";import{tsx as h}from"./support/jsxFactory.js";import"@arcgis/toolkit/dom";import{css as w}from"./VideoPlayer/css.js";import g from"./VideoPlayer/VideoPlayerViewModel.js";import{loadMetadataSectionComponents as y,MetadataSection as V}from"./VideoPlayer/components/MetadataSection.js";import{loadPlayerActionsGroupComponents as f,PlayerActionsGroup as b}from"./VideoPlayer/components/PlayerActionsGroup.js";import{loadPlayerControlsGroupComponents as M,PlayerControlsGroup as j}from"./VideoPlayer/components/PlayerControlsGroup.js";import{defaultSettings as _}from"./VideoPlayer/components/SettingsButton.js";let P=class extends m{constructor(e,s){super(e,s),this._settings=o(_),this._metadataVisible=!1,this._slider=new c({visibleElements:{labels:!1,rangeLabels:!1},min:0,max:100,values:[0],thumbsConstrained:!1}),this.videoView=new d({container:document.createElement("div"),constraints:{rotationEnabled:!1}}),this.viewModel=new g,i(t.getLogger(this),"Video Player","geoscene-video-player",{version:"4.33"})}initialize(){this.addHandles([s(()=>this.viewModel.layer,()=>{this.videoView.layer=this.viewModel.layer},r),s(()=>this.view?.map,()=>{this.videoView.map=this.view?.map},r),this._slider.on(["thumb-change","thumb-drag"],({value:e})=>{const i=e*this.viewModel.duration/100;this.viewModel.seekTo(i)})])}loadDependencies(){return Promise.all([f(),M(),y(),p({progress:()=>import("@
|
|
5
|
+
import{__decorate as e}from"tslib";import{deprecateWidget as i}from"../core/deprecate.js";import{clone as o}from"../core/lang.js";import t from"../core/Logger.js";import{watch as s,initial as r}from"../core/reactiveUtils.js";import{property as n}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import{subclass as a}from"../core/accessorSupport/decorators/subclass.js";import{formatDate as l}from"../intl/date.js";import d from"../views/VideoView.js";import c from"./Slider.js";import m from"./Widget.js";import{loadCalciteComponents as p}from"./support/componentsUtils.js";import{globalCss as v}from"./support/globalCss.js";import"./support/widgetUtils.js";import{messageBundle as u}from"./support/decorators/messageBundle.js";import{tsx as h}from"./support/jsxFactory.js";import"@arcgis/toolkit/dom";import{css as w}from"./VideoPlayer/css.js";import g from"./VideoPlayer/VideoPlayerViewModel.js";import{loadMetadataSectionComponents as y,MetadataSection as V}from"./VideoPlayer/components/MetadataSection.js";import{loadPlayerActionsGroupComponents as f,PlayerActionsGroup as b}from"./VideoPlayer/components/PlayerActionsGroup.js";import{loadPlayerControlsGroupComponents as M,PlayerControlsGroup as j}from"./VideoPlayer/components/PlayerControlsGroup.js";import{defaultSettings as _}from"./VideoPlayer/components/SettingsButton.js";let P=class extends m{constructor(e,s){super(e,s),this._settings=o(_),this._metadataVisible=!1,this._slider=new c({visibleElements:{labels:!1,rangeLabels:!1},min:0,max:100,values:[0],thumbsConstrained:!1}),this.videoView=new d({container:document.createElement("div"),constraints:{rotationEnabled:!1}}),this.viewModel=new g,i(t.getLogger(this),"Video Player","geoscene-video-player",{version:"4.33"})}initialize(){this.addHandles([s(()=>this.viewModel.layer,()=>{this.videoView.layer=this.viewModel.layer},r),s(()=>this.view?.map,()=>{this.videoView.map=this.view?.map},r),this._slider.on(["thumb-change","thumb-drag"],({value:e})=>{const i=e*this.viewModel.duration/100;this.viewModel.seekTo(i)})])}loadDependencies(){return Promise.all([f(),M(),y(),p({progress:()=>import("@geoscene/calcite-components/dist/components/calcite-progress"),panel:()=>import("@geoscene/calcite-components/dist/components/calcite-panel"),scrim:()=>import("@geoscene/calcite-components/dist/components/calcite-scrim"),icon:()=>import("@geoscene/calcite-components/dist/components/calcite-icon")})])}get icon(){return"video-web"}set icon(e){this._overrideIfSome("icon",e)}get layer(){return this.viewModel.layer}set layer(e){this.viewModel.layer=e}get rotationEnabled(){return this.videoView.constraints.rotationEnabled}set rotationEnabled(e){this.videoView.constraints.rotationEnabled=e,this.videoView.ui.components=e?[...this.videoView.ui.components,"compass"]:this.videoView.ui.components.filter(e=>"compass"!==e)}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}get zoomEnabled(){return this.videoView.navigation.mouseWheelZoomEnabled}set zoomEnabled(e){this.videoView.navigation.mouseWheelZoomEnabled=e,this.videoView.ui.components=e?[...this.videoView.ui.components,"zoom"]:this.videoView.ui.components.filter(e=>"zoom"!==e)}render(){return h("div",{class:this.classes(w.base,v.widget)},h("calcite-panel",{heading:this.layer?.title||"Video Player"},this._renderLoadingScrim(),this._renderBuffering(),this._renderVideoSection(),this._renderActionBar(),this._renderMetadataSection()))}_renderLoadingScrim(){const{state:e}=this.viewModel;return this.videoView.ready?null:h("calcite-scrim",{loading:"error"!==e},"error"===e?this.messages.errorLoadingLayer:null)}_renderBuffering(){const{currentTime:e,buffered:i,duration:o}=this.viewModel,t=i/(o||1),s=e/(o||1);return this.viewModel.ended||t>s?null:h("calcite-progress",{type:"indeterminate"})}_renderVideoSection(){const{buffered:e,currentTime:i,duration:o,layer:t}=this.viewModel,s=this.videoView.container,r=!!t?.isLive;if(!s)return null;s.className=w.videoView;const n=e/(o||1),a=i/(o||1);return this._slider.values=[100*a],h("section",{afterCreate:S,bind:s},r?null:h("div",{class:w.sliderProgressContainer},h("progress",{class:w.progress,max:"1",value:`${n}`}),h("div",{class:w.slider},this._slider.render())))}_renderActionBar(){const e=!!this.viewModel.layer?.isLive,i=e?w.playerToolbarTopPadding:void 0;return h("div",{class:this.classes(w.playerToolbar,i)},h("div",{class:w.playerActionsGroup},h(b,{messages:this.messages,viewModel:this.viewModel}),e?h("calcite-icon",{class:w.playerLiveIcon,icon:"beacon"}):null,h("div",{class:w.playerTimecode},E(this.viewModel.currentTime)," / ",E(this.viewModel.duration))),h(j,{messages:this.messages,settings:this._settings,toggleMetadata:()=>this._metadataVisible=!this._metadataVisible,viewModel:this.viewModel}))}_renderMetadataSection(){return this._metadataVisible?h(V,{messages:this.messages,viewModel:this.viewModel}):null}};function E(e){return isFinite(e)?l(1e3*Math.round(e),{minute:"2-digit",second:"2-digit"}):""}function S(e){const i=this;e.prepend(i)}e([n()],P.prototype,"_settings",void 0),e([n()],P.prototype,"icon",null),e([n()],P.prototype,"layer",null),e([n(),u("geoscene/widgets/VideoPlayer/t9n/VideoPlayer")],P.prototype,"messages",void 0),e([n()],P.prototype,"rotationEnabled",null),e([n()],P.prototype,"videoView",void 0),e([n({type:g})],P.prototype,"viewModel",void 0),e([n()],P.prototype,"view",null),e([n()],P.prototype,"zoomEnabled",null),P=e([a("geoscene.widgets.VideoPlayer")],P);const L=P;export{L as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as t}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as s}from"../support/componentsUtils.js";import"../support/widgetUtils.js";import{tsx as i}from"../support/jsxFactory.js";import"@arcgis/toolkit/dom";import{labeledSliderCss as a}from"./css.js";let c=class extends r{constructor(e){super(e),this._onChange=e=>{this.onChange(e.currentTarget.value)}}render(){const{label:e}=this;return i("div",{class:a.base},i("calcite-label",{scale:"s"},e,i("calcite-slider",{"aria-label":e,disabled:this.disabled,max:1,min:0,step:.01,value:this.value,onCalciteSliderChange:this._onChange,onCalciteSliderInput:this._onChange})))}loadDependencies(){return s({label:()=>import("@
|
|
5
|
+
import{__decorate as e}from"tslib";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as t}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as s}from"../support/componentsUtils.js";import"../support/widgetUtils.js";import{tsx as i}from"../support/jsxFactory.js";import"@arcgis/toolkit/dom";import{labeledSliderCss as a}from"./css.js";let c=class extends r{constructor(e){super(e),this._onChange=e=>{this.onChange(e.currentTarget.value)}}render(){const{label:e}=this;return i("div",{class:a.base},i("calcite-label",{scale:"s"},e,i("calcite-slider",{"aria-label":e,disabled:this.disabled,max:1,min:0,step:.01,value:this.value,onCalciteSliderChange:this._onChange,onCalciteSliderInput:this._onChange})))}loadDependencies(){return s({label:()=>import("@geoscene/calcite-components/dist/components/calcite-label"),slider:()=>import("@geoscene/calcite-components/dist/components/calcite-slider")})}};e([o()],c.prototype,"value",void 0),e([o()],c.prototype,"onChange",void 0),e([o()],c.prototype,"disabled",void 0),c=e([t("geoscene.widgets.Weather.LabeledSlider")],c);export{c as LabeledSlider};
|
package/widgets/Weather.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{deprecateWidget as o}from"../core/deprecate.js";import t from"../core/Logger.js";import{memoize as r}from"../core/memoize.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/RandomLCG.js";import{subclass as i}from"../core/accessorSupport/decorators/subclass.js";import{weatherTypesArray as n}from"../views/3d/environment/weather.js";import a from"./Widget.js";import{loadCalciteComponents as l}from"./support/componentsUtils.js";import{globalCss as c}from"./support/globalCss.js";import{Heading as d}from"./support/Heading.js";import{classes as p}from"./support/widgetUtils.js";import{messageBundle as u}from"./support/decorators/messageBundle.js";import{tsx as h,tsxFragment as g}from"./support/jsxFactory.js";import"@arcgis/toolkit/dom";import{css as m}from"./Weather/css.js";import{LabeledSlider as v}from"./Weather/LabeledSlider.js";import y from"./Weather/VisibleElements.js";import b from"./Weather/WeatherViewModel.js";const w={sunny:"brightness",cloudy:"partly-cloudy",rainy:"rain",snowy:"snow",foggy:"fog"};let C=class extends a{constructor(e){super(e),this.viewModel=new b({isDefaultViewModel:!0}),this.headingLevel=4,this.visibleElements=new y,this._renderWeatherTypeButton=e=>{const o=this.viewModel,t=this.messages[e].label,r="disabled"===o.state,s=!r&&o.current.type===e;return h("calcite-button",{appearance:s?"solid":"outline","aria-checked":s?"true":"false",disabled:r,iconStart:w[e],key:`${e}-type-button`,kind:s?"brand":"neutral",label:t,onclick:()=>{s||o.setWeatherByType(e)},scale:"l",title:t})},this._memoizedCallbacks=r(e=>({onCloudCoverChange:o=>{"cloudCover"in e&&(e.cloudCover=o)},onPrecipitationChange:o=>{"precipitation"in e&&(e.precipitation=o)},onFogStrengthChange:o=>{"fogStrength"in e&&(e.fogStrength=o)},onSnowCoverChange:e=>{this.viewModel.setSnowCoverEnabled(e.currentTarget.checked)}})),o(t.getLogger(this),"Weather","geoscene-weather",{version:"4.33"})}render(){const e="disabled"===this.viewModel.state;return h("div",{"aria-label":this.messages.widgetLabelAccessible,class:this.classes(m.base,c.widget,e&&c.widgetDisabled),role:"region"},this._renderContent())}loadDependencies(){return l({button:()=>import("@
|
|
5
|
+
import{__decorate as e}from"tslib";import{deprecateWidget as o}from"../core/deprecate.js";import t from"../core/Logger.js";import{memoize as r}from"../core/memoize.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/RandomLCG.js";import{subclass as i}from"../core/accessorSupport/decorators/subclass.js";import{weatherTypesArray as n}from"../views/3d/environment/weather.js";import a from"./Widget.js";import{loadCalciteComponents as l}from"./support/componentsUtils.js";import{globalCss as c}from"./support/globalCss.js";import{Heading as d}from"./support/Heading.js";import{classes as p}from"./support/widgetUtils.js";import{messageBundle as u}from"./support/decorators/messageBundle.js";import{tsx as h,tsxFragment as g}from"./support/jsxFactory.js";import"@arcgis/toolkit/dom";import{css as m}from"./Weather/css.js";import{LabeledSlider as v}from"./Weather/LabeledSlider.js";import y from"./Weather/VisibleElements.js";import b from"./Weather/WeatherViewModel.js";const w={sunny:"brightness",cloudy:"partly-cloudy",rainy:"rain",snowy:"snow",foggy:"fog"};let C=class extends a{constructor(e){super(e),this.viewModel=new b({isDefaultViewModel:!0}),this.headingLevel=4,this.visibleElements=new y,this._renderWeatherTypeButton=e=>{const o=this.viewModel,t=this.messages[e].label,r="disabled"===o.state,s=!r&&o.current.type===e;return h("calcite-button",{appearance:s?"solid":"outline","aria-checked":s?"true":"false",disabled:r,iconStart:w[e],key:`${e}-type-button`,kind:s?"brand":"neutral",label:t,onclick:()=>{s||o.setWeatherByType(e)},scale:"l",title:t})},this._memoizedCallbacks=r(e=>({onCloudCoverChange:o=>{"cloudCover"in e&&(e.cloudCover=o)},onPrecipitationChange:o=>{"precipitation"in e&&(e.precipitation=o)},onFogStrengthChange:o=>{"fogStrength"in e&&(e.fogStrength=o)},onSnowCoverChange:e=>{this.viewModel.setSnowCoverEnabled(e.currentTarget.checked)}})),o(t.getLogger(this),"Weather","geoscene-weather",{version:"4.33"})}render(){const e="disabled"===this.viewModel.state;return h("div",{"aria-label":this.messages.widgetLabelAccessible,class:this.classes(m.base,c.widget,e&&c.widgetDisabled),role:"region"},this._renderContent())}loadDependencies(){return l({button:()=>import("@geoscene/calcite-components/dist/components/calcite-button"),checkbox:()=>import("@geoscene/calcite-components/dist/components/calcite-checkbox"),icon:()=>import("@geoscene/calcite-components/dist/components/calcite-icon"),label:()=>import("@geoscene/calcite-components/dist/components/calcite-label")})}get view(){return this.viewModel?.view}set view(e){this.viewModel&&(this.viewModel.view=e)}get icon(){return"partly-cloudy"}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get _errorMessage(){const e=this.messages.error;switch(this.viewModel.error){case"local-scene":return e.localScene;case"no-atmosphere":return e.noAtmosphere;case"unsupported-view":return e.unsupported;default:return null}}get _warningMessage(){if("not-visible"===this.viewModel.error){return null!=this.view&&"3d"===this.view?.type&&this.view.environment.atmosphereEnabled?this.messages.error.notVisible:null}return null}_renderContent(){const{headingLevel:e,messages:o,viewModel:t,visibleElements:r}=this,s=this._warningMessage,i=t.current,a="error"===t.state;return h(g,null,r.header?h(d,{level:e},o.widgetLabel):null,a?h("div",{class:m.error,key:"error"},this._errorMessage):null,h("div",{class:p({[m.content]:!0,[m.hasError]:a}),key:"content"},h("div",{"aria-label":o.weatherType,class:m.selector,key:"type-selector",role:"radiogroup"},n.map(this._renderWeatherTypeButton)),Object.values(t.weatherByType).map(e=>h("div",{class:p({[m.options]:!0,[m.optionsHidden]:e.type!==i?.type}),key:"options-container"},this._renderOptions(e))),null!=s?this._renderWarning(s):null))}_renderOptions(e){const{viewModel:o,messages:t}=this,r="disabled"===o.state,s=this._memoizedCallbacks(e);switch(e.type){case"sunny":return h(v,{disabled:r,key:"sunny-cover",label:t.sunny.cloudCover,value:e.cloudCover,onChange:s.onCloudCoverChange});case"cloudy":return h(v,{disabled:r,key:"cloudy-cover",label:t.cloudy.cloudCover,value:e.cloudCover,onChange:s.onCloudCoverChange});case"rainy":return h(g,null,h(v,{disabled:r,key:"rainy-cover",label:t.rainy.cloudCover,value:e.cloudCover,onChange:s.onCloudCoverChange}),h(v,{disabled:r,key:"rainy-precipitation",label:t.rainy.precipitation,value:e.precipitation,onChange:s.onPrecipitationChange}));case"snowy":return h(g,null,h(v,{disabled:r,key:"snowy-cloud-cover",label:t.snowy.cloudCover,value:e.cloudCover,onChange:s.onCloudCoverChange}),h(v,{disabled:r,key:"snowy-precipitation",label:t.snowy.precipitation,value:e.precipitation,onChange:s.onPrecipitationChange}),h("calcite-label",{key:"snow-cover",layout:"inline",scale:"s",title:t.snowy.snowCoverTooltip},h("calcite-checkbox",{checked:"enabled"===e.snowCover,disabled:r,onCalciteCheckboxChange:s.onSnowCoverChange}),t.snowy.snowCover));case"foggy":return h(v,{disabled:r,key:"foggy-cover",label:t.foggy.fogStrength,value:e.fogStrength,onChange:s.onFogStrengthChange})}}_renderWarning(e){return h("div",{class:m.warning,key:"warning"},h("calcite-icon",{icon:"exclamation-mark-triangle",scale:"s"}),e)}};e([s()],C.prototype,"viewModel",void 0),e([s()],C.prototype,"view",null),e([s()],C.prototype,"headingLevel",void 0),e([s({type:y,nonNullable:!0})],C.prototype,"visibleElements",void 0),e([s()],C.prototype,"icon",null),e([s()],C.prototype,"label",null),e([s(),u("geoscene/widgets/Weather/t9n/Weather")],C.prototype,"messages",void 0),e([s()],C.prototype,"_errorMessage",null),e([s()],C.prototype,"_warningMessage",null),C=e([i("geoscene.widgets.Weather")],C);const f=C;export{f as default};
|
package/widgets/Zoom.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as o}from"tslib";import{property as t}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as e}from"../core/accessorSupport/decorators/subclass.js";import s from"./Widget.js";import{loadCalciteComponents as i}from"./support/componentsUtils.js";import{globalCss as r}from"./support/globalCss.js";import"./support/widgetUtils.js";import{messageBundle as l}from"./support/decorators/messageBundle.js";import{tsx as a}from"./support/jsxFactory.js";import"@arcgis/toolkit/dom";import n from"./Zoom/ZoomViewModel.js";const m={base:"geoscene-zoom",horizontalLayout:"geoscene-zoom--horizontal"};let p=class extends s{constructor(o,t){super(o,t),this.messages=null,this.viewModel=new n,this.zoomIn=()=>this.viewModel.zoomIn(),this.zoomOut=()=>this.viewModel.zoomOut()}loadDependencies(){return i({button:()=>import("@
|
|
5
|
+
import{__decorate as o}from"tslib";import{property as t}from"../core/accessorSupport/decorators/property.js";import"../core/has.js";import"../core/Logger.js";import"../core/RandomLCG.js";import{subclass as e}from"../core/accessorSupport/decorators/subclass.js";import s from"./Widget.js";import{loadCalciteComponents as i}from"./support/componentsUtils.js";import{globalCss as r}from"./support/globalCss.js";import"./support/widgetUtils.js";import{messageBundle as l}from"./support/decorators/messageBundle.js";import{tsx as a}from"./support/jsxFactory.js";import"@arcgis/toolkit/dom";import n from"./Zoom/ZoomViewModel.js";const m={base:"geoscene-zoom",horizontalLayout:"geoscene-zoom--horizontal"};let p=class extends s{constructor(o,t){super(o,t),this.messages=null,this.viewModel=new n,this.zoomIn=()=>this.viewModel.zoomIn(),this.zoomOut=()=>this.viewModel.zoomOut()}loadDependencies(){return i({button:()=>import("@geoscene/calcite-components/dist/components/calcite-button")})}get icon(){return"magnifying-glass-plus"}set icon(o){this._overrideIfSome("icon",o)}get label(){return this.messages?.widgetLabel??""}set label(o){this._overrideIfSome("label",o)}set layout(o){"horizontal"!==o&&(o="vertical"),this._set("layout",o)}set view(o){this.viewModel.view=o}get view(){return this.viewModel.view}render(){const o={[m.horizontalLayout]:"horizontal"===this.layout},{canZoomIn:t,canZoomOut:e}=this.viewModel,{zoomIn:s,zoomOut:i}=this.messages;return a("div",{class:this.classes(m.base,r.widget,o)},a("calcite-button",{class:r.widgetButton,disabled:!t,iconStart:"plus",kind:"neutral",label:s,onclick:this.zoomIn,title:s}),a("calcite-button",{class:r.widgetButton,disabled:!e,iconStart:"minus",kind:"neutral",label:i,onclick:this.zoomOut,title:i}))}};o([t()],p.prototype,"icon",null),o([t()],p.prototype,"label",null),o([t({value:"vertical"})],p.prototype,"layout",null),o([t(),l("geoscene/widgets/Zoom/t9n/Zoom")],p.prototype,"messages",void 0),o([t()],p.prototype,"view",null),o([t({type:n})],p.prototype,"viewModel",void 0),p=o([e("geoscene.widgets.Zoom")],p);const c=p;export{c as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as o}from"tslib";import e from"../../Color.js";import{watch as t,syncAndInitial as r}from"../../core/reactiveUtils.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import n from"../Widget.js";import{loadCalciteComponents as a}from"./componentsUtils.js";import"./widgetUtils.js";import{messageBundle as p}from"./decorators/messageBundle.js";import{tsx as c}from"./jsxFactory.js";import"@arcgis/toolkit/dom";const l="geoscene-color-picker",m={base:l,backgroundPattern:`${l}__bg-pattern`,toggleButton:`${l}__toggle-button`,popover:`${l}__popover`};let d=class extends n{constructor(o,t){super(o,t),this.value=new e,this.alphaEnabled=!0,this._containerElement=null,this._button=null,this._open=!1,this._onColorInput=o=>{const t=o.currentTarget.value,r="string"==typeof t?new e(t):new e;this.value=r,this.onChange?.(r)}}initialize(){this.addHandles(t(()=>({container:this._containerElement,value:this.value}),({container:o,value:e})=>{o?.style.setProperty("--geoscene-color-picker-value",e.toCss(!0))},r))}loadDependencies(){return a({button:()=>import("@
|
|
5
|
+
import{__decorate as o}from"tslib";import e from"../../Color.js";import{watch as t,syncAndInitial as r}from"../../core/reactiveUtils.js";import{property as s}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import n from"../Widget.js";import{loadCalciteComponents as a}from"./componentsUtils.js";import"./widgetUtils.js";import{messageBundle as p}from"./decorators/messageBundle.js";import{tsx as c}from"./jsxFactory.js";import"@arcgis/toolkit/dom";const l="geoscene-color-picker",m={base:l,backgroundPattern:`${l}__bg-pattern`,toggleButton:`${l}__toggle-button`,popover:`${l}__popover`};let d=class extends n{constructor(o,t){super(o,t),this.value=new e,this.alphaEnabled=!0,this._containerElement=null,this._button=null,this._open=!1,this._onColorInput=o=>{const t=o.currentTarget.value,r="string"==typeof t?new e(t):new e;this.value=r,this.onChange?.(r)}}initialize(){this.addHandles(t(()=>({container:this._containerElement,value:this.value}),({container:o,value:e})=>{o?.style.setProperty("--geoscene-color-picker-value",e.toCss(!0))},r))}loadDependencies(){return a({button:()=>import("@geoscene/calcite-components/dist/components/calcite-button"),"color-picker":()=>import("@geoscene/calcite-components/dist/components/calcite-color-picker"),popover:()=>import("@geoscene/calcite-components/dist/components/calcite-popover")})}render(){const o=this._messages,e=this._open?o.close:o.open;return c("div",{afterCreate:o=>this._containerElement=o,class:this.classes(m.base,this.class)},c("div",{class:m.backgroundPattern,key:"background-pattern"}),c("calcite-button",{afterCreate:o=>this._button=o,appearance:"transparent",class:m.toggleButton,key:"popover-trigger",kind:"neutral",label:e,scale:"s",tabIndex:0,title:e}),c("calcite-popover",{autoClose:!0,class:m.popover,key:"popover",label:o.label,overlayPositioning:"fixed",referenceElement:this._button,onCalcitePopoverClose:()=>this._open=!1,onCalcitePopoverOpen:()=>this._open=!0},c("calcite-color-picker",{alphaChannel:this.alphaEnabled,channelsDisabled:!0,key:"color-picker",onclick:o=>{o.stopPropagation()},savedDisabled:!0,value:this.value.toCss(!0),onCalciteColorPickerInput:this._onColorInput})))}};o([s()],d.prototype,"class",void 0),o([s()],d.prototype,"value",void 0),o([s()],d.prototype,"alphaEnabled",void 0),o([s()],d.prototype,"onChange",void 0),o([s()],d.prototype,"_containerElement",void 0),o([s()],d.prototype,"_button",void 0),o([s()],d.prototype,"_open",void 0),o([s(),p("geoscene/widgets/support/t9n/ColorPicker")],d.prototype,"_messages",void 0),d=o([i("geoscene.widgets.support.ColorPicker")],d);export{d as ColorPicker};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{property as t}from"../../core/accessorSupport/decorators/property.js";import{cast as o}from"../../core/accessorSupport/decorators/cast.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as s}from"./componentsUtils.js";import"./widgetUtils.js";import{messageBundle as n}from"./decorators/messageBundle.js";import{tsx as l}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import c from"./FilterBuilder/FilterBuilderViewModel.js";const a={fab:!0,menu:!0},d="geoscene-filter-builder",p={base:d,conditionContainer:`${d}__condition-container`,operatorSelect:`${d}__operator-select`};let m=class extends r{constructor(e,t){super(e,t),this.messages=null,this.messagesCommon=null,this.viewModel=new c,this.visibleElements={...a}}loadDependencies(){return s({action:()=>import("@
|
|
5
|
+
import{__decorate as e}from"tslib";import{property as t}from"../../core/accessorSupport/decorators/property.js";import{cast as o}from"../../core/accessorSupport/decorators/cast.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as s}from"./componentsUtils.js";import"./widgetUtils.js";import{messageBundle as n}from"./decorators/messageBundle.js";import{tsx as l}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import c from"./FilterBuilder/FilterBuilderViewModel.js";const a={fab:!0,menu:!0},d="geoscene-filter-builder",p={base:d,conditionContainer:`${d}__condition-container`,operatorSelect:`${d}__operator-select`};let m=class extends r{constructor(e,t){super(e,t),this.messages=null,this.messagesCommon=null,this.viewModel=new c,this.visibleElements={...a}}loadDependencies(){return s({action:()=>import("@geoscene/calcite-components/dist/components/calcite-action"),"action-menu":()=>import("@geoscene/calcite-components/dist/components/calcite-action-menu"),block:()=>import("@geoscene/calcite-components/dist/components/calcite-block"),fab:()=>import("@geoscene/calcite-components/dist/components/calcite-fab"),option:()=>import("@geoscene/calcite-components/dist/components/calcite-option"),select:()=>import("@geoscene/calcite-components/dist/components/calcite-select")})}get conditionOperator(){return this.viewModel.conditionOperator}set conditionOperator(e){this.viewModel.conditionOperator=e}get count(){return this.viewModel.count}get layer(){return this.viewModel.layer}set layer(e){this.viewModel.layer=e}get operators(){return this.viewModel.operators}set operators(e){this.viewModel.operators=e}get state(){return this.viewModel.state}castVisibleElements(e){return{...a,...e}}get whereClause(){return this.viewModel.whereClause}get whereClauses(){return this.viewModel.whereClauses}render(){return l("div",{class:p.base},this._renderOperatorSelect(),this._renderConditions(),this._renderFAB())}reset(){this.viewModel.reset()}_renderOperatorSelect(){if(this.count<2)return;const{conditionOperator:e,messages:t}=this,o="AND"===e;return l("div",{class:p.operatorSelect},l("calcite-select",{label:t.condition,width:"full",onCalciteSelectChange:({currentTarget:e})=>{this.conditionOperator=e.value}},l("calcite-option",{label:t.allAreTrue,selected:o,value:"AND"}),l("calcite-option",{label:t.anyAreTrue,selected:!o,value:"OR"})))}_renderConditions(){return this.viewModel.conditionWidgets.toArray().map((e,t)=>this._renderConditionContainer(e,t))}_renderConditionContainer(e,t){return l("calcite-block",{class:p.conditionContainer,expanded:!0,heading:this.messages.condition},e.render(),this._renderConditionrMenu(t))}_renderFAB(){if(!this.visibleElements.fab)return;const e="loading"===this.state;return l("calcite-fab",{appearance:"outline-fill",disabled:e,icon:"plus",kind:"neutral",loading:e,onclick:()=>this.viewModel.addCondition(),text:this.messages.addNew,textEnabled:!0})}_renderConditionrMenu(e){if(!this.visibleElements.menu)return;const{messages:t}=this;return l("calcite-action-menu",{label:t.moreOptions,overlayPositioning:"fixed",placement:"bottom-end",slot:"control"},l("calcite-action",{onclick:()=>this.viewModel.removeCondition(e),text:t.delete,textEnabled:!0}),l("calcite-action",{onclick:()=>this.viewModel.duplicateCondition(e),text:t.duplicate,textEnabled:!0}))}};e([t()],m.prototype,"conditionOperator",null),e([t()],m.prototype,"count",null),e([t()],m.prototype,"layer",null),e([t(),n("geoscene/widgets/support/FilterBuilder/t9n/FilterBuilder")],m.prototype,"messages",void 0),e([t(),n("geoscene/t9n/common")],m.prototype,"messagesCommon",void 0),e([t()],m.prototype,"operators",null),e([t()],m.prototype,"state",null),e([t()],m.prototype,"viewModel",void 0),e([t()],m.prototype,"visibleElements",void 0),e([o("visibleElements")],m.prototype,"castVisibleElements",null),e([t()],m.prototype,"whereClause",null),e([t()],m.prototype,"whereClauses",null),m=e([i("geoscene.widgets.support.FilterBuilder")],m);export{m as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{property as t}from"../../core/accessorSupport/decorators/property.js";import{cast as i}from"../../core/accessorSupport/decorators/cast.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as r}from"../../core/accessorSupport/decorators/subclass.js";import{getEffectiveFieldAlias as l}from"../../editing/fieldUtils.js";import o from"../Widget.js";import{loadCalciteComponents as s}from"./componentsUtils.js";import"./widgetUtils.js";import{messageBundle as a}from"./decorators/messageBundle.js";import{tsx as n}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import d from"./FilterCondition/FilterConditionViewModel.js";const p={},u="geoscene-filter-condition",c={base:u,valueInputContainer:`${u}__value-input-container`};let m=class extends o{constructor(e,t){super(e,t),this.messages=null,this.messagesCommon=null,this.viewModel=new d,this.visibleElements={...p}}loadDependencies(){return s({input:()=>import("@
|
|
5
|
+
import{__decorate as e}from"tslib";import{property as t}from"../../core/accessorSupport/decorators/property.js";import{cast as i}from"../../core/accessorSupport/decorators/cast.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as r}from"../../core/accessorSupport/decorators/subclass.js";import{getEffectiveFieldAlias as l}from"../../editing/fieldUtils.js";import o from"../Widget.js";import{loadCalciteComponents as s}from"./componentsUtils.js";import"./widgetUtils.js";import{messageBundle as a}from"./decorators/messageBundle.js";import{tsx as n}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import d from"./FilterCondition/FilterConditionViewModel.js";const p={},u="geoscene-filter-condition",c={base:u,valueInputContainer:`${u}__value-input-container`};let m=class extends o{constructor(e,t){super(e,t),this.messages=null,this.messagesCommon=null,this.viewModel=new d,this.visibleElements={...p}}loadDependencies(){return s({input:()=>import("@geoscene/calcite-components/dist/components/calcite-input"),option:()=>import("@geoscene/calcite-components/dist/components/calcite-option"),select:()=>import("@geoscene/calcite-components/dist/components/calcite-select")})}get _defaultFieldName(){const{fields:e,fieldName:t}=this;return t||(e?.length?e[0].name:void 0)}get _valueInputType(){const{viewModel:e}=this;return e.isNumericField||e.isObjectIDField?"number":"text"}get _visibleOperators(){const{field:e,operators:t,viewModel:i}=this;return e?i.isStringField||i.isGlobalIDField?t.string:i.isNumericField?t.number:i.isObjectIDField?t.id:[]:[]}get _isValueInputHidden(){const{operator:e}=this;return!!e&&["isBlank","isNotBlank","isEmpty","isNotEmpty"].includes(e)}get domain(){return this.viewModel.domain}get field(){return this.viewModel.field}get fields(){return this.viewModel.fields}get fieldLabel(){return this.viewModel.fieldLabel}get fieldName(){return this.viewModel.fieldName}set fieldName(e){this.viewModel.fieldName=e}get layer(){return this.viewModel.layer}set layer(e){this.viewModel.layer=e}get normalizedFieldName(){return this.viewModel.normalizedFieldName}get operator(){return this.viewModel.operator}set operator(e){this.viewModel.operator=e}get operators(){return this.viewModel.operators}set operators(e){this.viewModel.operators=e}get state(){return this.viewModel.state}get value(){return this.viewModel.value}set value(e){this.viewModel.value=e}get valueAsString(){return this.viewModel.valueAsString}castVisibleElements(e){return{...p,...e}}get whereClause(){return this.viewModel.whereClause}render(){return n("div",{class:c.base},this._renderFieldSelection(),this._renderOperatorSelection(),this._renderValueInput())}_renderFieldSelection(){const{layer:e,normalizedFieldName:t}=this;return n("div",null,n("calcite-select",{afterCreate:()=>{this.fieldName||(this.fieldName=this._defaultFieldName)},bind:this,label:this.messages.chooseField,width:"full",onCalciteSelectChange:({currentTarget:e})=>{this.value=null,this.fieldName=e.value}},this.fields.map(i=>{const r=l(i,e);return this._renderOption(i.name,r,t)})))}_renderOperatorSelection(){const{_visibleOperators:e,messages:t,operator:i}=this;if(e.length)return n("div",null,n("calcite-select",{afterUpdate:e=>{const t=e.value;this._visibleOperators.includes(t)||(this.operator=this._visibleOperators[0])},bind:this,label:t.operator,required:!0,width:"full",onCalciteSelectChange:e=>{this.operator=e.currentTarget.value}},e.map(e=>this._renderOption(e,t.operators[e],i))))}_renderOption(e,t,i){return n("calcite-option",{key:e,label:t??e,selected:e===i,value:e})}_renderValueInput(){const{valueAsString:e,domain:t,messages:i,operator:r}=this;if(!this._isValueInputHidden){if("coded-value"===t?.type&&t.codedValues.length&&("is"===r||"isNot"===r)){const r=t.codedValues[0].code;return n("div",{key:"value-select"},n("calcite-select",{afterCreate:()=>this._afterSelectCreateOrUpdate(r),afterUpdate:()=>this._afterSelectCreateOrUpdate(r),bind:this,label:i.value,required:!0,width:"full",onCalciteSelectChange:({currentTarget:e})=>{this._onValueChange(e.value)}},t.codedValues.map(({code:t,name:i})=>this._renderOption(`${t}`,i,e))))}return n("div",{class:c.valueInputContainer,key:"value-input"},n("calcite-input",{label:i.value,type:this._valueInputType,value:e,onCalciteInputInput:({currentTarget:e})=>{this._onValueChange(e.value)}}))}}_afterSelectCreateOrUpdate(e){null==this.value&&(this.value=e)}_onValueChange(e){const{viewModel:t}=this;e&&""!==e?t.isStringField||t.isGlobalIDField?this.value=e.toString():(t.isNumericField||t.isObjectIDField)&&(this.value=parseFloat(e)):this.value=null}};e([t()],m.prototype,"_defaultFieldName",null),e([t()],m.prototype,"_valueInputType",null),e([t()],m.prototype,"_visibleOperators",null),e([t()],m.prototype,"_isValueInputHidden",null),e([t()],m.prototype,"domain",null),e([t()],m.prototype,"field",null),e([t()],m.prototype,"fields",null),e([t()],m.prototype,"fieldLabel",null),e([t()],m.prototype,"fieldName",null),e([t()],m.prototype,"layer",null),e([t(),a("geoscene/widgets/support/FilterCondition/t9n/FilterCondition")],m.prototype,"messages",void 0),e([t(),a("geoscene/t9n/common")],m.prototype,"messagesCommon",void 0),e([t()],m.prototype,"normalizedFieldName",null),e([t()],m.prototype,"operator",null),e([t()],m.prototype,"operators",null),e([t()],m.prototype,"state",null),e([t()],m.prototype,"value",null),e([t()],m.prototype,"valueAsString",null),e([t()],m.prototype,"viewModel",void 0),e([t()],m.prototype,"visibleElements",void 0),e([i("visibleElements")],m.prototype,"castVisibleElements",null),e([t()],m.prototype,"whereClause",null),m=e([r("geoscene.widgets.support.FilterCondition")],m);export{m as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import t from"../../Color.js";import"../../intl.js";import{deprecateWidget as i}from"../../core/deprecate.js";import n from"../../core/Logger.js";import{watch as s,initial as o}from"../../core/reactiveUtils.js";import{formatDecimal as l}from"../../core/unitFormatUtils.js";import{property as r}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as a}from"../../core/accessorSupport/decorators/subclass.js";import c from"../Widget.js";import{loadCalciteComponents as d}from"./componentsUtils.js";import{globalCss as p}from"./globalCss.js";import{loadLabeledSwitchComponents as m,LabeledSwitch as g}from"./LabeledSwitch.js";import{classes as u}from"./widgetUtils.js";import{messageBundle as h}from"./decorators/messageBundle.js";import{tsx as b}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import v from"./GridControls/GridControlsViewModel.js";import{userInputToGridRotation as w,gridRotationToDegrees as _}from"./GridControls/gridUtils.js";import C from"./GridControls/VisibleElements.js";import{substitute as f}from"../../intl/substitute.js";const y="geoscene-grid-controls",M={base:y,borderedSwitch:`${y}__switch--bordered`,container:`${y}__container`,numericInputsContainer:`${y}__numeric-inputs__container`,tilegroup:`${y}__tilegroup`,tile:`${y}__tile`,tileDisabled:`${y}__tile--disabled`,tileContent:`${y}__tile__content`,suffixedInputContainer:`${y}__input-with-suffix__container`,inlineIcon:`${y}__inline-icon`},S={widgetIcon:"grid-unit",gridTheme:{light:"circle",dark:"circle-area",custom:"palette"},placementState:{interactive:"maximum-territory-distance",place:"move",rotate:"rotate"},warning:"exclamation-mark-triangle"},I=t.fromArray([115,115,115]),T=t.fromArray([200,200,200]),j=["interactive","place","rotate"];let k=class extends c{constructor(e,t){super(e,t),this.customColor=null,this.messages=null,this.messagesUnits=null,this.viewModel=new v,this.visibleElements=new C,i(n.getLogger(this),"Grid Controls","geoscene-grid-controls",{version:"4.33"})}initialize(){this.addHandles([s(()=>this.viewModel.gridColor,e=>{!e||I.equals(e)||T.equals(e)||(this.customColor=e)},o)])}loadDependencies(){return Promise.all([d({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),"action-bar":()=>import("@esri/calcite-components/dist/components/calcite-action-bar"),label:()=>import("@esri/calcite-components/dist/components/calcite-label"),icon:()=>import("@esri/calcite-components/dist/components/calcite-icon"),popover:()=>import("@esri/calcite-components/dist/components/calcite-popover"),tooltip:()=>import("@esri/calcite-components/dist/components/calcite-tooltip"),"color-picker":()=>import("@esri/calcite-components/dist/components/calcite-color-picker"),"input-number":()=>import("@esri/calcite-components/dist/components/calcite-input-number")}),m()])}get icon(){return S.widgetIcon}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages.widgetLabel}set label(e){this._overrideIfSome("label",e)}get snappingManager(){return this.viewModel.snappingManager}set snappingManager(e){this.viewModel.snappingManager=e}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get theme(){const e=this.viewModel.gridColor;return e?I.equals(e)?"dark":T.equals(e)?"light":"custom":null}set theme(e){const{viewModel:t,customColor:i,view:n}=this;switch(e){case"light":t.gridColor=T;break;case"dark":t.gridColor=I;break;case"custom":t.gridColor=i??n?.effectiveTheme.accentColor??I}}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}render(){return b("div",{"aria-label":this.label,class:this.classes(M.base,p.widget,p.panel)},b("div",{class:M.container},this._renderContent()))}_renderContent(){const{visibleElements:e}=this;return[e.gridEnabledToggle?this._renderEnabledToggle():null,e.placementButtons?this._renderGridPlacementButtons():null,e.numericInputs?this._renderNumericInputs():null,e.lineIntervalInput?this._renderIntervalInput():null,e.gridSnapEnabledToggle&&this.viewModel.snappingOptions?this._renderSnappingToggle():null,e.dynamicScaleToggle?this._renderDynamicScaleToggle():null,e.rotateWithMapToggle?this._renderRotateToggle():null,e.colorSelection?this._renderColorSelection():null]}_renderGridPlacementButtons(){const{interactivePlacementState:e,placementDisabled:t,gridControlsEnabled:i}=this.viewModel,n=t||!i;return b("calcite-label",{key:"grid-placement-buttons",scale:"s"},this.messages.placementOptions,b("calcite-action-bar",{expandDisabled:!0,layout:"horizontal"},j.map(t=>this._renderPlacementModeButton(t,n,e))))}_renderPlacementModeButton(e,t,i){const n=this.messages.placementState[e],s=`__placement-action-${e}`;return b("div",null,b("calcite-action",{active:i===e,alignment:"center",disabled:t,icon:S.placementState[e],id:s,onclick:()=>this.viewModel.togglePlacementState(e),text:n}),b("calcite-tooltip",{overlayPositioning:"fixed",placement:"top",referenceElement:s},n))}_renderNumericInputs(){const{rotation:e,spacing:t,effectiveSpacingAfterDynamicScaling:i,numericSpacingInputShouldBeVisible:n,unit:s="meters"}=this.viewModel,o=this.messagesUnits.units[s].abbr,r=this.viewModel.gridControlsEnabled,a=null!=i&&i!==this.viewModel.spacing,c=`__spacing_input_scaled-${this.id}`;return b("div",{class:this.classes(M.numericInputsContainer)},[n?b("calcite-label",{key:"spacing-label",scale:"s"},b("span",null,this.messages.inputLabel.spacing,a?b("calcite-icon",{class:this.classes(M.inlineIcon),icon:S.warning,id:c,scale:"s",tabIndex:0}):void 0),b("div",{class:M.suffixedInputContainer},b("calcite-input-number",{disabled:!r,numberButtonType:"none",suffixText:o,value:`${t?.toFixed(2)}`,onCalciteInputNumberChange:({currentTarget:e})=>{const t=parseFloat(e.value);this.viewModel.spacing=t,t!==this.viewModel.spacing&&(e.value=`${this.viewModel.spacing}`)}}),a?b("calcite-tooltip",{overlayPositioning:"fixed",placement:"leading",referenceElement:c},f(this.messages.warnings.dynamicSpacing,{actualSpacingIncludingUnit:l(this.messagesUnits,i,s,2,"plural")})):void 0)):void 0,b("calcite-label",{key:"angle-label",scale:"s"},this.messages.inputLabel.angle,b("calcite-input-number",{disabled:!r,integer:!0,numberButtonType:"none",suffixText:this.messagesUnits.units.degrees.abbr,value:`${_(e)}`,onCalciteInputNumberChange:({currentTarget:e})=>this.viewModel.rotation=w(e.value)}))])}_renderIntervalInput(){const{majorLineInterval:e,gridControlsEnabled:t}=this.viewModel;return b("div",{class:this.classes(M.numericInputsContainer)},b("calcite-label",{scale:"s"},this.messages.inputLabel.interval,b("calcite-input-number",{disabled:!t,integer:!0,max:15,min:1,numberButtonType:"vertical",value:`${e}`,onCalciteInputNumberChange:({currentTarget:e})=>{const t=Number.parseInt(e.value,10);this.viewModel.majorLineInterval=t,t!==this.viewModel.majorLineInterval&&(e.value=`${this.viewModel.majorLineInterval}`)}})))}_renderSnappingToggle(){const{snappingOptions:e,gridControlsEnabled:t}=this.viewModel;return b(g,{checked:!!(e?.gridEnabled??!1),disabled:!(t&&!!e),key:"grid-snap-enabled-toggle",label:this.messages.switchLabel.snap,onChange:e=>this.viewModel.snappingOptions?.set("gridEnabled",e)})}_renderDynamicScaleToggle(){const{viewModel:e,messages:t}=this,i=this.visibleElements.outOfScaleWarning&&e.gridOutOfScale;return b(g,{checked:e.dynamicScaling,disabled:!e.gridControlsEnabled,hint:i?t.warnings.outOfScale:void 0,hintIcon:S.warning,hintKind:"warning",key:`grid-dynamic-scale-toggle-${this.id}`,label:t.switchLabel.scaling,onChange:t=>e.dynamicScaling=t})}_renderRotateToggle(){const{gridControlsEnabled:e,rotateWithMap:t}=this.viewModel;return b(g,{checked:t,disabled:!e,key:"grid-rotate-map-toggle",label:this.messages.switchLabel.rotateWithMap,onChange:e=>this.viewModel.rotateWithMap=e})}_renderEnabledToggle(){return b("div",{class:M.borderedSwitch},b(g,{checked:this.viewModel.displayEnabled,disabled:!!this.viewModel.interactivePlacementState,key:"grid-enabled-toggle",label:this.messages.switchLabel.display,onChange:e=>this.viewModel.trySetDisplayEnabled(e)}))}_renderColorSelection(){const{customColor:e}=this,i=`${this.id}--custom-grid-color-button`;return b("calcite-label",{scale:"s"},this.messages.inputLabel.theme,b("div",{class:M.tilegroup},[this._renderThemeTile({value:"dark"}),this._renderThemeTile({value:"light"}),this._renderThemeTile({value:"custom",id:i}),b("calcite-popover",{autoClose:!0,label:this.messages.gridLineColorPopoverLabel,overlayPositioning:"fixed",referenceElement:i},b("calcite-color-picker",{alphaChannel:!0,savedDisabled:!0,value:e?.toHex({digits:8})??"#000000ff",onCalciteColorPickerChange:e=>{const i=t.fromHex(e.currentTarget.value);i&&(this.customColor=i,this.theme="custom")}}))]))}_renderThemeTile(e){const{theme:t}=this,{value:i}=e,n=this.messages.gridTheme[i],s=`${this.id}--theme_tile_${i}`,o=`${s}__label`,l=S.gridTheme[i],r=this.viewModel.gridControlsEnabled;return b("div",{class:u({[M.tile]:!0,[M.tileDisabled]:!r}),id:e.id,role:"button"},b("input",{"aria-labelledby":o,checked:t===i,disabled:!r,id:s,name:`${this.id}--theme`,onchange:e=>{this.theme=i,e.target?.focus()},tabIndex:0,type:"radio"}),b("div",{class:M.tileContent},b("calcite-icon",{icon:l,scale:"l"}),b("calcite-label",{for:s,id:o},n)))}};e([r({type:t})],k.prototype,"customColor",void 0),e([r()],k.prototype,"icon",null),e([r()],k.prototype,"label",null),e([r(),h("geoscene/widgets/support/GridControls/t9n/GridControls")],k.prototype,"messages",void 0),e([r(),h("geoscene/core/t9n/Units")],k.prototype,"messagesUnits",void 0),e([r()],k.prototype,"snappingManager",null),e([r()],k.prototype,"snappingOptions",null),e([r()],k.prototype,"theme",null),e([r()],k.prototype,"view",null),e([r({type:v})],k.prototype,"viewModel",void 0),e([r({type:C,nonNullable:!0})],k.prototype,"visibleElements",void 0),k=e([a("geoscene.widgets.support.GridControls")],k);const x=k;export{x as default};
|
|
5
|
+
import{__decorate as e}from"tslib";import t from"../../Color.js";import"../../intl.js";import{deprecateWidget as i}from"../../core/deprecate.js";import n from"../../core/Logger.js";import{watch as s,initial as o}from"../../core/reactiveUtils.js";import{formatDecimal as l}from"../../core/unitFormatUtils.js";import{property as r}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as a}from"../../core/accessorSupport/decorators/subclass.js";import c from"../Widget.js";import{loadCalciteComponents as d}from"./componentsUtils.js";import{globalCss as p}from"./globalCss.js";import{loadLabeledSwitchComponents as m,LabeledSwitch as g}from"./LabeledSwitch.js";import{classes as u}from"./widgetUtils.js";import{messageBundle as h}from"./decorators/messageBundle.js";import{tsx as b}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import v from"./GridControls/GridControlsViewModel.js";import{userInputToGridRotation as w,gridRotationToDegrees as _}from"./GridControls/gridUtils.js";import C from"./GridControls/VisibleElements.js";import{substitute as f}from"../../intl/substitute.js";const y="geoscene-grid-controls",M={base:y,borderedSwitch:`${y}__switch--bordered`,container:`${y}__container`,numericInputsContainer:`${y}__numeric-inputs__container`,tilegroup:`${y}__tilegroup`,tile:`${y}__tile`,tileDisabled:`${y}__tile--disabled`,tileContent:`${y}__tile__content`,suffixedInputContainer:`${y}__input-with-suffix__container`,inlineIcon:`${y}__inline-icon`},S={widgetIcon:"grid-unit",gridTheme:{light:"circle",dark:"circle-area",custom:"palette"},placementState:{interactive:"maximum-territory-distance",place:"move",rotate:"rotate"},warning:"exclamation-mark-triangle"},I=t.fromArray([115,115,115]),T=t.fromArray([200,200,200]),j=["interactive","place","rotate"];let k=class extends c{constructor(e,t){super(e,t),this.customColor=null,this.messages=null,this.messagesUnits=null,this.viewModel=new v,this.visibleElements=new C,i(n.getLogger(this),"Grid Controls","geoscene-grid-controls",{version:"4.33"})}initialize(){this.addHandles([s(()=>this.viewModel.gridColor,e=>{!e||I.equals(e)||T.equals(e)||(this.customColor=e)},o)])}loadDependencies(){return Promise.all([d({action:()=>import("@geoscene/calcite-components/dist/components/calcite-action"),"action-bar":()=>import("@geoscene/calcite-components/dist/components/calcite-action-bar"),label:()=>import("@geoscene/calcite-components/dist/components/calcite-label"),icon:()=>import("@geoscene/calcite-components/dist/components/calcite-icon"),popover:()=>import("@geoscene/calcite-components/dist/components/calcite-popover"),tooltip:()=>import("@geoscene/calcite-components/dist/components/calcite-tooltip"),"color-picker":()=>import("@geoscene/calcite-components/dist/components/calcite-color-picker"),"input-number":()=>import("@geoscene/calcite-components/dist/components/calcite-input-number")}),m()])}get icon(){return S.widgetIcon}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages.widgetLabel}set label(e){this._overrideIfSome("label",e)}get snappingManager(){return this.viewModel.snappingManager}set snappingManager(e){this.viewModel.snappingManager=e}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get theme(){const e=this.viewModel.gridColor;return e?I.equals(e)?"dark":T.equals(e)?"light":"custom":null}set theme(e){const{viewModel:t,customColor:i,view:n}=this;switch(e){case"light":t.gridColor=T;break;case"dark":t.gridColor=I;break;case"custom":t.gridColor=i??n?.effectiveTheme.accentColor??I}}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}render(){return b("div",{"aria-label":this.label,class:this.classes(M.base,p.widget,p.panel)},b("div",{class:M.container},this._renderContent()))}_renderContent(){const{visibleElements:e}=this;return[e.gridEnabledToggle?this._renderEnabledToggle():null,e.placementButtons?this._renderGridPlacementButtons():null,e.numericInputs?this._renderNumericInputs():null,e.lineIntervalInput?this._renderIntervalInput():null,e.gridSnapEnabledToggle&&this.viewModel.snappingOptions?this._renderSnappingToggle():null,e.dynamicScaleToggle?this._renderDynamicScaleToggle():null,e.rotateWithMapToggle?this._renderRotateToggle():null,e.colorSelection?this._renderColorSelection():null]}_renderGridPlacementButtons(){const{interactivePlacementState:e,placementDisabled:t,gridControlsEnabled:i}=this.viewModel,n=t||!i;return b("calcite-label",{key:"grid-placement-buttons",scale:"s"},this.messages.placementOptions,b("calcite-action-bar",{expandDisabled:!0,layout:"horizontal"},j.map(t=>this._renderPlacementModeButton(t,n,e))))}_renderPlacementModeButton(e,t,i){const n=this.messages.placementState[e],s=`__placement-action-${e}`;return b("div",null,b("calcite-action",{active:i===e,alignment:"center",disabled:t,icon:S.placementState[e],id:s,onclick:()=>this.viewModel.togglePlacementState(e),text:n}),b("calcite-tooltip",{overlayPositioning:"fixed",placement:"top",referenceElement:s},n))}_renderNumericInputs(){const{rotation:e,spacing:t,effectiveSpacingAfterDynamicScaling:i,numericSpacingInputShouldBeVisible:n,unit:s="meters"}=this.viewModel,o=this.messagesUnits.units[s].abbr,r=this.viewModel.gridControlsEnabled,a=null!=i&&i!==this.viewModel.spacing,c=`__spacing_input_scaled-${this.id}`;return b("div",{class:this.classes(M.numericInputsContainer)},[n?b("calcite-label",{key:"spacing-label",scale:"s"},b("span",null,this.messages.inputLabel.spacing,a?b("calcite-icon",{class:this.classes(M.inlineIcon),icon:S.warning,id:c,scale:"s",tabIndex:0}):void 0),b("div",{class:M.suffixedInputContainer},b("calcite-input-number",{disabled:!r,numberButtonType:"none",suffixText:o,value:`${t?.toFixed(2)}`,onCalciteInputNumberChange:({currentTarget:e})=>{const t=parseFloat(e.value);this.viewModel.spacing=t,t!==this.viewModel.spacing&&(e.value=`${this.viewModel.spacing}`)}}),a?b("calcite-tooltip",{overlayPositioning:"fixed",placement:"leading",referenceElement:c},f(this.messages.warnings.dynamicSpacing,{actualSpacingIncludingUnit:l(this.messagesUnits,i,s,2,"plural")})):void 0)):void 0,b("calcite-label",{key:"angle-label",scale:"s"},this.messages.inputLabel.angle,b("calcite-input-number",{disabled:!r,integer:!0,numberButtonType:"none",suffixText:this.messagesUnits.units.degrees.abbr,value:`${_(e)}`,onCalciteInputNumberChange:({currentTarget:e})=>this.viewModel.rotation=w(e.value)}))])}_renderIntervalInput(){const{majorLineInterval:e,gridControlsEnabled:t}=this.viewModel;return b("div",{class:this.classes(M.numericInputsContainer)},b("calcite-label",{scale:"s"},this.messages.inputLabel.interval,b("calcite-input-number",{disabled:!t,integer:!0,max:15,min:1,numberButtonType:"vertical",value:`${e}`,onCalciteInputNumberChange:({currentTarget:e})=>{const t=Number.parseInt(e.value,10);this.viewModel.majorLineInterval=t,t!==this.viewModel.majorLineInterval&&(e.value=`${this.viewModel.majorLineInterval}`)}})))}_renderSnappingToggle(){const{snappingOptions:e,gridControlsEnabled:t}=this.viewModel;return b(g,{checked:!!(e?.gridEnabled??!1),disabled:!(t&&!!e),key:"grid-snap-enabled-toggle",label:this.messages.switchLabel.snap,onChange:e=>this.viewModel.snappingOptions?.set("gridEnabled",e)})}_renderDynamicScaleToggle(){const{viewModel:e,messages:t}=this,i=this.visibleElements.outOfScaleWarning&&e.gridOutOfScale;return b(g,{checked:e.dynamicScaling,disabled:!e.gridControlsEnabled,hint:i?t.warnings.outOfScale:void 0,hintIcon:S.warning,hintKind:"warning",key:`grid-dynamic-scale-toggle-${this.id}`,label:t.switchLabel.scaling,onChange:t=>e.dynamicScaling=t})}_renderRotateToggle(){const{gridControlsEnabled:e,rotateWithMap:t}=this.viewModel;return b(g,{checked:t,disabled:!e,key:"grid-rotate-map-toggle",label:this.messages.switchLabel.rotateWithMap,onChange:e=>this.viewModel.rotateWithMap=e})}_renderEnabledToggle(){return b("div",{class:M.borderedSwitch},b(g,{checked:this.viewModel.displayEnabled,disabled:!!this.viewModel.interactivePlacementState,key:"grid-enabled-toggle",label:this.messages.switchLabel.display,onChange:e=>this.viewModel.trySetDisplayEnabled(e)}))}_renderColorSelection(){const{customColor:e}=this,i=`${this.id}--custom-grid-color-button`;return b("calcite-label",{scale:"s"},this.messages.inputLabel.theme,b("div",{class:M.tilegroup},[this._renderThemeTile({value:"dark"}),this._renderThemeTile({value:"light"}),this._renderThemeTile({value:"custom",id:i}),b("calcite-popover",{autoClose:!0,label:this.messages.gridLineColorPopoverLabel,overlayPositioning:"fixed",referenceElement:i},b("calcite-color-picker",{alphaChannel:!0,savedDisabled:!0,value:e?.toHex({digits:8})??"#000000ff",onCalciteColorPickerChange:e=>{const i=t.fromHex(e.currentTarget.value);i&&(this.customColor=i,this.theme="custom")}}))]))}_renderThemeTile(e){const{theme:t}=this,{value:i}=e,n=this.messages.gridTheme[i],s=`${this.id}--theme_tile_${i}`,o=`${s}__label`,l=S.gridTheme[i],r=this.viewModel.gridControlsEnabled;return b("div",{class:u({[M.tile]:!0,[M.tileDisabled]:!r}),id:e.id,role:"button"},b("input",{"aria-labelledby":o,checked:t===i,disabled:!r,id:s,name:`${this.id}--theme`,onchange:e=>{this.theme=i,e.target?.focus()},tabIndex:0,type:"radio"}),b("div",{class:M.tileContent},b("calcite-icon",{icon:l,scale:"l"}),b("calcite-label",{for:s,id:o},n)))}};e([r({type:t})],k.prototype,"customColor",void 0),e([r()],k.prototype,"icon",null),e([r()],k.prototype,"label",null),e([r(),h("geoscene/widgets/support/GridControls/t9n/GridControls")],k.prototype,"messages",void 0),e([r(),h("geoscene/core/t9n/Units")],k.prototype,"messagesUnits",void 0),e([r()],k.prototype,"snappingManager",null),e([r()],k.prototype,"snappingOptions",null),e([r()],k.prototype,"theme",null),e([r()],k.prototype,"view",null),e([r({type:v})],k.prototype,"viewModel",void 0),e([r({type:C,nonNullable:!0})],k.prototype,"visibleElements",void 0),k=e([a("geoscene.widgets.support.GridControls")],k);const x=k;export{x as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{loadCalciteComponents as t}from"./componentsUtils.js";import"./widgetUtils.js";import{tsx as e}from"./jsxFactory.js";import"@arcgis/toolkit/dom";const i=()=>t({icon:()=>import("@
|
|
5
|
+
import{loadCalciteComponents as t}from"./componentsUtils.js";import"./widgetUtils.js";import{tsx as e}from"./jsxFactory.js";import"@arcgis/toolkit/dom";const i=()=>t({icon:()=>import("@geoscene/calcite-components/dist/components/calcite-icon"),label:()=>import("@geoscene/calcite-components/dist/components/calcite-label"),switch:()=>import("@geoscene/calcite-components/dist/components/calcite-switch"),tooltip:()=>import("@geoscene/calcite-components/dist/components/calcite-tooltip")}),o="geoscene-labeled-switch",n={label:`${o}__label`,labelContent:`${o}__label-content`,iconInfo:`${o}__icon_info`,iconWarning:`${o}__icon_warning`,tooltip:`${o}__tooltip`};function c({checked:t,disabled:i,hint:o,key:c,label:l,onChange:a,hintIcon:s,hintKind:r}){return e("calcite-label",{class:n.label,disabled:i,key:c,layout:"inline-space-between",scale:"s"},o?e("div",{class:n.labelContent,key:"label-content"},e("div",null,l),e("calcite-icon",{class:"warning"!==r?n.iconInfo:n.iconWarning,icon:s??"information",id:c,onclick:t=>t.stopPropagation(),onpointerdown:t=>{t.preventDefault(),t.stopPropagation();const e=t.target.nextElementSibling;e.open=!e.open},scale:"s",tabIndex:0}),e("calcite-tooltip",{class:n.tooltip,overlayPositioning:"fixed",referenceElement:c},o)):l,e("calcite-switch",{checked:t,disabled:i,scale:"s",onCalciteSwitchChange:t=>a(t.currentTarget.checked)}))}export{c as LabeledSwitch,i as loadLabeledSwitchComponents};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as n}from"./componentsUtils.js";import{UnitSelect as i}from"./UnitSelect.js";import"./widgetUtils.js";import{tsx as o}from"./jsxFactory.js";import"@arcgis/toolkit/dom";const a="geoscene-measurement-widget-content",m={base:a,actions:`${a}__actions`,error:`${a}__error`,hint:`${a}__hint`,hintText:`${a}__hint-text`,settings:`${a}__settings`,measurement:`${a}__measurement`,measurementItem:`${a}__measurement-item`,measurementItemDisabled:`${a}__measurement-item--disabled`,measurementItemTitle:`${a}__measurement-item__title`,measurementItemValue:`${a}__measurement-item__value`};let u=class extends r{constructor(e,t){super(e,t)}loadDependencies(){return n({button:()=>import("@
|
|
5
|
+
import{__decorate as e}from"tslib";import{property as t}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as n}from"./componentsUtils.js";import{UnitSelect as i}from"./UnitSelect.js";import"./widgetUtils.js";import{tsx as o}from"./jsxFactory.js";import"@arcgis/toolkit/dom";const a="geoscene-measurement-widget-content",m={base:a,actions:`${a}__actions`,error:`${a}__error`,hint:`${a}__hint`,hintText:`${a}__hint-text`,settings:`${a}__settings`,measurement:`${a}__measurement`,measurementItem:`${a}__measurement-item`,measurementItemDisabled:`${a}__measurement-item--disabled`,measurementItemTitle:`${a}__measurement-item__title`,measurementItemValue:`${a}__measurement-item__value`};let u=class extends r{constructor(e,t){super(e,t)}loadDependencies(){return n({button:()=>import("@geoscene/calcite-components/dist/components/calcite-button")})}render(){return o("div",{class:m.base},this._renderContent())}_renderContent(){const{supported:e,active:t,state:s}=this;switch(s){case"disabled":case"ready":return e?t?this._renderHint():this._renderActions():this._renderUnsupportedMessage();case"measuring":case"measured":return[this._renderSettings(),this._renderMeasurement(),this._renderActions()]}}_renderUnsupportedMessage(){return o("section",{class:m.error,key:"unsupported"},o("p",null,this.messages.unsupported))}_renderHint(){const{messages:e}=this;return o("section",{class:m.hint,key:"hint"},o("p",{class:m.hintText},e.hint))}_renderSettings(){return o("div",{class:m.settings,key:"settings"},o(i,{options:this.unitOptions,selectLabel:this.messages.unit,value:this.unit,onChange:this.onUnitChange}))}_renderMeasurement(){return o("section",{class:m.measurement,key:"measurement"},this.measurementItems.map(e=>this._renderMeasurementItem(e)))}_renderMeasurementItem({key:e,title:t,value:s}){return o("div",{class:this.classes(m.measurementItem,null==s&&m.measurementItemDisabled),key:e},o("span",{class:m.measurementItemTitle},t),o("span",{"aria-live":"polite",class:m.measurementItemValue},s??this.messages.notApplicable))}_renderActions(){const{messages:e}=this;return o("div",{class:m.actions},o("calcite-button",{class:this.newMeasurementButtonClass,disabled:"disabled"===this.state,onclick:this.onNewMeasurementClick},e.newMeasurement))}};e([t()],u.prototype,"active",void 0),e([t()],u.prototype,"measurementItems",void 0),e([t()],u.prototype,"messages",void 0),e([t()],u.prototype,"newMeasurementButtonClass",void 0),e([t()],u.prototype,"onNewMeasurementClick",void 0),e([t()],u.prototype,"onUnitChange",void 0),e([t()],u.prototype,"state",void 0),e([t()],u.prototype,"supported",void 0),e([t()],u.prototype,"unit",void 0),e([t()],u.prototype,"unitOptions",void 0),u=e([s("geoscene.widgets.support.MeasurementWidgetContent")],u);export{u as MeasurementWidgetContent};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import"../../intl.js";import{isSome as t}from"../../core/arrayUtils.js";import{on as i,watch as s}from"../../core/reactiveUtils.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import n from"../Widget.js";import{loadCalciteComponents as r}from"./componentsUtils.js";import{globalCss as a}from"./globalCss.js";import{storeNode as c}from"./widgetUtils.js";import{messageBundle as m}from"./decorators/messageBundle.js";import{tsx as d}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import{isGroupLayerItem as p,isLayerItem as h,isFeatureItem as u}from"./SelectionList/selectionListUtils.js";import v from"./SelectionList/SelectionListViewModel.js";import g from"./SelectionList/VisibleElements.js";import{substitute as y}from"../../intl/substitute.js";import{formatNumber as I}from"../../intl/number.js";const b="geoscene-selection-list",f=`${b}__list-item`,w={base:b,container:`${b}__container`,flowItem:`${b}__flow-item`,layerDropdown:`${b}__layer-dropdown`,listItemFeature:`${f}__feature`,listItemFeatureIcon:`${f}__feature-icon`,listItemIcon:`${f}__icon`,itemCount:`${b}__item-count`,notice:`${b}__notice`,panel:`${b}__panel`,totalCount:`${b}__total-count`};let _=class extends n{constructor(e,t){super(e,t),this._iconIntersectionObserver=new IntersectionObserver((e,t)=>{e.forEach(async e=>{if(e.isIntersecting){const i=e.target;if(this._hasIcon(i))return void t.unobserve(i);const s=this._getListItem(i);if(!s)return;this._setHasIcon(i,!0);const o=s.title?y(this.messagesLegend.previewTemplateAriaLabel,{label:s.title}):this.messagesCommon.preview,l=s.thumbnail??await s.fetchThumbnail({ariaLabel:o}).catch(()=>(this._setHasIcon(i,!1),null));if(null==l)return;i.appendChild(l)}})}),this._itemWithOpenMenu=null,this._list=null,this.displayMode="group",this.highlightOnHoverEnabled=!1,this.itemActionConfigs=null,this.menuScale="m",this.messages=null,this.messagesCommon=null,this.messagesLegend=null,this.onListItemSelect=null,this.scale="s",this.viewModel=new v,this.visibleElements=new g,this._afterItemCreate=e=>{this._iconIntersectionObserver?.observe(e)},this._afterItemRemoved=e=>{this._iconIntersectionObserver?.unobserve(e)},this.clear=this.clear.bind(this),this.collapseItems=this.collapseItems.bind(this),this.removeTemporaryHighlight=this.removeTemporaryHighlight.bind(this)}initialize(){this.addHandles([i(()=>this.effectiveSelectionManager,"selection-change",()=>this._closeItemMenu()),s(()=>this.highlightOnHoverEnabled,e=>{e||this.removeTemporaryHighlight()})])}destroy(){this._iconIntersectionObserver?.disconnect(),this._iconIntersectionObserver=null}loadDependencies(){return r({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),chip:()=>import("@esri/calcite-components/dist/components/calcite-chip"),combobox:()=>import("@esri/calcite-components/dist/components/calcite-combobox"),"combobox-item":()=>import("@esri/calcite-components/dist/components/calcite-combobox-item"),dropdown:()=>import("@esri/calcite-components/dist/components/calcite-dropdown"),"dropdown-group":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-group"),"dropdown-item":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-item"),flow:()=>import("@esri/calcite-components/dist/components/calcite-flow"),"flow-item":()=>import("@esri/calcite-components/dist/components/calcite-flow-item"),icon:()=>import("@esri/calcite-components/dist/components/calcite-icon"),input:()=>import("@esri/calcite-components/dist/components/calcite-input"),list:()=>import("@esri/calcite-components/dist/components/calcite-list"),"list-item":()=>import("@esri/calcite-components/dist/components/calcite-list-item"),notice:()=>import("@esri/calcite-components/dist/components/calcite-notice"),panel:()=>import("@esri/calcite-components/dist/components/calcite-panel")})}get _hasFilterText(){const{filterText:e}=this;return null!=e&&""!==e}get activeLayerItem(){return this.viewModel.activeLayerItem}get allLayerItems(){return this.viewModel.allLayerItems}get effectiveCount(){return this.viewModel.effectiveCount}get effectiveSelectionManager(){return this.viewModel.effectiveSelectionManager}get filterText(){return this.viewModel.filterText}set filterText(e){this.viewModel.filterText=e}get icon(){return"selection"}set icon(e){this._overrideIfSome("icon",e)}get isUpdating(){return this.viewModel.isUpdating}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get layer(){return this.viewModel.layer}set layer(e){this.viewModel.layer=e}get layerItems(){return this.viewModel.layerItems}get layerViewMap(){return this.viewModel.layerViewMap}get maxVisibleFeatureCountExceeded(){return this.viewModel.maxVisibleFeatureCountExceeded}get maxVisibleFeatureCountPerLayer(){return this.viewModel.maxVisibleFeatureCountPerLayer}set maxVisibleFeatureCountPerLayer(e){this.viewModel.maxVisibleFeatureCountPerLayer=e}get selectionManager(){return this.viewModel.selectionManager}set selectionManager(e){this.viewModel.selectionManager=e}get state(){return this.viewModel.state}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}get viewLayersAndTables(){return this.viewModel.viewLayersAndTables}get visibleFeatureCount(){return this.viewModel.visibleFeatureCount}get visibleFeatureItems(){return this.viewModel.visibleFeatureItems}get visibleLayerCount(){return this.viewModel.visibleLayerCount}addTemporaryHighlight(e){this.viewModel.addTemporaryHighlight(e)}clear(){this.viewModel.clear()}deselectFeatureItem(e){this.viewModel.deselectFeatureItem(e)}deselectGroupItem(e){this.viewModel.deselectGroupItem(e)}deselectLayerItem(e){this.viewModel.deselectLayerItem(e)}deselectItem(e){this.viewModel.deselectItem(e)}collapseItems(){this._list?.filteredItems.forEach(e=>e.expanded=!1)}goToItem(e){this.viewModel.goToItem(e)}removeFromSelection(e){this.viewModel.removeFromSelection(e)}removeTemporaryHighlight(){this.viewModel.removeTemporaryHighlight()}selectSingleFeatureItem(e){this.viewModel.selectSingleFeatureItem(e)}selectSingleGroupItem(e){this.viewModel.selectSingleGroupItem(e)}selectSingleItem(e){this.viewModel.selectSingleItem(e)}selectSingleLayerItem(e){this.viewModel.selectSingleLayerItem(e)}setSelection(e){this.viewModel.setSelection(e)}render(){return d("div",{class:this.classes(w.base,a.widget,a.panel)},d("calcite-flow",null,d("calcite-flow-item",{class:w.flowItem,heading:this.visibleElements.header?this.messages.selection:void 0,loading:"loading"===this.state,overlayPositioning:"fixed",scale:this.scale,selected:!0},d("calcite-panel",{class:w.panel,overlayPositioning:"fixed",scale:this.scale},d("div",{class:w.container},this._renderActiveLayerDropdown(),this._renderFilterInput(),this._renderList(),this._renderFilterNotice())),this._renderTotalChip(),this._renderMenuActions())))}_renderTotalChip(){const{visibleElements:e}=this;if(!e.totalCount||!e.header)return;const{effectiveCount:t}=this,i=I(t),s=y(this.messages.selectionCount,{count:i});return d("calcite-chip",{appearance:"outline",class:w.totalCount,closable:t>0,closed:0===t,icon:this.maxVisibleFeatureCountExceeded?"exclamation-mark-triangle":void 0,label:i,scale:this.scale,slot:"header-actions-end",title:s,onCalciteChipClose:this.clear},i)}_renderMenuActions(){const{visibleElements:e}=this;if(!e.header||!e.menu)return;const{menuScale:t}=this,i=0===this.effectiveCount;return[d("calcite-action",{disabled:i,icon:"reset",key:"clear-action",onclick:this.clear,scale:t,slot:"header-menu-actions",text:this.messagesCommon.clear,textEnabled:!0}),d("calcite-action",{disabled:i,icon:"folders",key:"collapse-action",onclick:this.collapseItems,scale:t,slot:"header-menu-actions",text:this.messages.collapseAll,textEnabled:!0})]}_renderActiveLayerDropdown(){const{layerItems:e,messages:t}=this;if(!(0===this.effectiveCount||e.length<2)&&this.visibleElements.layerFilter)return d("calcite-combobox",{class:w.layerDropdown,clearDisabled:!0,label:t.filterByLayer,overlayPositioning:"fixed",placeholder:t.filterByLayer,scale:this.scale,selectionMode:"single-persist",onCalciteComboboxChange:({currentTarget:e})=>{this.filterText=void 0;const t=e.selectedItems[0]?.value??void 0;this.layer="all-layers"===t?void 0:t}},d("calcite-combobox-item",{heading:y(t.allLayersCount,{count:e.length}),icon:"layers",key:"all-layers",selected:null==this.layer,value:"all-layers"}),this.layerItems.map(e=>this._renderActiveLayerDropdownItem(e)))}_renderFilterInput(){if(this.visibleElements.filter&&0!==this.effectiveCount)return d("calcite-input",{clearable:!0,icon:"search",placeholder:this.messages.filter,scale:this.scale,value:this.filterText,onCalciteInputInput:({target:{value:e}})=>{this.filterText=e}})}_renderActiveLayerDropdownItem(e){const t=e.title||this.messages.untitledLayer;return d("calcite-combobox-item",{heading:t,icon:e.iconName,key:e.key,selected:e.layer===this.layer,value:e.layer})}_renderList(){const{messages:e}=this;if(0!==this.visibleFeatureCount)return d("calcite-list",{afterCreate:c,bind:this,"data-node-ref":"_list",displayMode:"nested",interactionMode:"interactive",label:e.widgetLabel,loading:this.isUpdating,scale:this.scale,selectionMode:"none"},this._renderListContent(this.allLayerItems))}_renderListContent(e){return this.activeLayerItem?this._renderLayerItem(this.activeLayerItem):e.map(e=>p(e)?this._renderGroupItem(e):h(e)?this._renderLayerItem(e):null).filter(t)}_renderFilterNotice(){const{visibleElements:e}=this;if(!("disabled"===this.state||this.visibleFeatureCount>0)&&e.filter&&e.filterNotice)return d("calcite-notice",{class:w.notice,icon:"exclamation-mark-triangle",kind:"info",open:!0,scale:this.scale,width:"full"},d("div",{slot:"message"},this.messages.noMatchingFeatures))}_renderItemCount(e){if(!this.visibleElements.itemCount)return;const{messages:t}=this,i=I(e.total),s=I(e.visibleTotal),o=y(t.selectionCount,{count:i});return!this._hasFilterText&&e.maxVisibleFeatureCountExceeded?d("span",{class:w.itemCount,slot:"content-end",title:o},d("calcite-icon",{icon:"exclamation-mark-triangle",scale:"s",title:t.tooManyFeatures}),`${I(this.maxVisibleFeatureCountPerLayer)}+`):d("span",{class:w.itemCount,slot:"content-end",title:o},s)}_renderItemActions(e){if(!this.visibleElements.itemMenus)return;const{messages:t,messagesCommon:i}=this,s=this._itemWithOpenMenu===e,o=u(e),l=h(e),n=p(e),r=o?t.deselectFeature:l?t.deselectLayer:t.deselectGroup;return[d("calcite-dropdown",{"data-testid":"selection-list-dropdown",open:s,overlayPositioning:"fixed",scale:this.menuScale,slot:"actions-end",width:"m",onCalciteDropdownClose:()=>this._closeItemMenu(e),onCalciteDropdownOpen:()=>{this._itemWithOpenMenu=e}},d("calcite-action",{appearance:"transparent","data-testid":"selection-list-dropdown-trigger",icon:"ellipsis",scale:this.scale,slot:"trigger",text:i.menu,textEnabled:!1}),s?d("calcite-dropdown-group",{selectionMode:"none"},this.visibleElements.zoomToButton?d("calcite-dropdown-item",{iconStart:"layer-zoom-to",onCalciteDropdownItemSelect:()=>this.goToItem(e)},t.zoomTo):void 0,d("calcite-dropdown-item",{iconStart:"selection-filter",onCalciteDropdownItemSelect:()=>this.selectSingleItem(e)},o?t.onlySelectFeature:t.onlySelectThis),d("calcite-dropdown-item",{iconStart:"selection-x",onCalciteDropdownItemSelect:()=>this.deselectItem(e)},r),this.itemActionConfigs?.map(t=>{const{disabled:i,hidden:s,type:r}=t;if(!("function"==typeof s?s({item:e}):!!s)&&(!r||"feature"===r&&o||"layer"===r&&l||"group"===r&&n))return d("calcite-dropdown-item",{disabled:"function"==typeof i?i({item:e}):!!i,iconStart:t.icon??void 0,onCalciteDropdownItemSelect:()=>t.callback({item:e})},t.label)})):void 0)]}_renderGroupItem(e){const t=e.title||this.messages.untitledLayer;if(0===e.visibleTotal)return;const{displayMode:i}=this;if("layer"===i||"feature"===i)return this._renderListContent(e.items);const{visibleElements:s}=this;return d("calcite-list-item",{bind:this,closable:!!s.itemCloseActions,"data-type":"group",expanded:!0,iconStart:s.itemIcons?e.iconName:void 0,key:e.key,label:t,value:e.title,onCalciteListItemClose:t=>{t.stopPropagation(),this.deselectItem(e)},onCalciteListItemSelect:t=>this._onListItemSelect(e,t)},this._renderItemActions(e),this._renderListContent(e.items))}_renderLayerItem(e){if(0===e.visibleTotal||!e.visible)return;if("feature"===this.displayMode)return this._renderItems(e.featureItems);const{messages:t,visibleElements:i}=this,s=e.title||t.untitledLayer;return d("calcite-list-item",{bind:this,closable:!!i.itemCloseActions,"data-type":"layer",expanded:!0,iconStart:i.itemIcons?e.iconName:void 0,key:e.key,label:s,scale:this.scale,value:e.title,onCalciteListItemClose:t=>{t.stopPropagation(),this.deselectItem(e)},onCalciteListItemSelect:t=>this._onListItemSelect(e,t)},this._renderItemCount(e),this._renderItemActions(e),this._renderItems(e.featureItems),e.maxVisibleFeatureCountExceeded?d("calcite-notice",{class:w.notice,icon:"exclamation-mark-triangle",kind:"info",open:!0,scale:this.scale},d("div",{slot:"message"},t.tooManyFeatures)):void 0)}_renderItems(e){return e.map(e=>this._renderItem(e))}_renderItem(e){if(!e.visible)return;const{highlightOnHoverEnabled:t,messages:i,visibleElements:s}=this,o=e.title||i.untitledFeature,l=s.itemIcons&&"feature"!==this.displayMode;return d("calcite-list-item",{bind:this,class:l?w.listItemFeatureIcon:w.listItemFeature,closable:!!s.itemCloseActions,"data-item":e,"data-type":"feature",key:e.key,label:o,name:o,onblur:t?()=>this.removeTemporaryHighlight():void 0,onfocus:t?()=>this.addTemporaryHighlight(e):void 0,onpointerenter:t?()=>this.addTemporaryHighlight(e):void 0,onpointerleave:t?()=>this.removeTemporaryHighlight():void 0,scale:this.scale,value:o,onCalciteListItemClose:t=>{t.stopPropagation(),this.deselectItem(e)},onCalciteListItemSelect:t=>this._onListItemSelect(e,t)},this._renderItemIcon(e),this._renderItemActions(e))}_renderItemIcon(e){if(this.visibleElements.itemIcons)return d("div",{class:w.listItemIcon,key:"content-start",slot:"content-start"},d("span",{afterCreate:this._afterItemCreate,afterRemoved:this._afterItemRemoved,"data-has-icon":!1,"data-item":e,key:e.thumbnailKey}))}_getListItem(e){return e?.["data-item"]}_hasIcon(e){return!!e?.["data-has-icon"]}_setHasIcon(e,t){e&&(e["data-has-icon"]=t)}_onListItemSelect(e,t){t.stopPropagation(),this._closeItemMenu(),this.onListItemSelect?.({item:e})}_closeItemMenu(e){e&&e!==this._itemWithOpenMenu||(this._itemWithOpenMenu=null)}};e([o()],_.prototype,"_hasFilterText",null),e([o()],_.prototype,"_itemWithOpenMenu",void 0),e([o()],_.prototype,"_list",void 0),e([o()],_.prototype,"activeLayerItem",null),e([o()],_.prototype,"allLayerItems",null),e([o()],_.prototype,"displayMode",void 0),e([o()],_.prototype,"effectiveCount",null),e([o()],_.prototype,"effectiveSelectionManager",null),e([o()],_.prototype,"filterText",null),e([o()],_.prototype,"highlightOnHoverEnabled",void 0),e([o()],_.prototype,"icon",null),e([o()],_.prototype,"itemActionConfigs",void 0),e([o()],_.prototype,"isUpdating",null),e([o()],_.prototype,"label",null),e([o()],_.prototype,"layer",null),e([o()],_.prototype,"layerItems",null),e([o()],_.prototype,"layerViewMap",null),e([o()],_.prototype,"maxVisibleFeatureCountExceeded",null),e([o()],_.prototype,"maxVisibleFeatureCountPerLayer",null),e([o()],_.prototype,"menuScale",void 0),e([o(),m("geoscene/widgets/support/SelectionList/t9n/SelectionList")],_.prototype,"messages",void 0),e([o(),m("geoscene/t9n/common")],_.prototype,"messagesCommon",void 0),e([o(),m("geoscene/widgets/Legend/t9n/Legend")],_.prototype,"messagesLegend",void 0),e([o()],_.prototype,"onListItemSelect",void 0),e([o()],_.prototype,"scale",void 0),e([o()],_.prototype,"selectionManager",null),e([o()],_.prototype,"state",null),e([o()],_.prototype,"view",null),e([o()],_.prototype,"viewLayersAndTables",null),e([o()],_.prototype,"viewModel",void 0),e([o({type:g,nonNullable:!0})],_.prototype,"visibleElements",void 0),e([o()],_.prototype,"visibleFeatureCount",null),e([o()],_.prototype,"visibleFeatureItems",null),e([o()],_.prototype,"visibleLayerCount",null),_=e([l("geoscene.widgets.support.SelectionList")],_);const C=_;export{C as default};
|
|
5
|
+
import{__decorate as e}from"tslib";import"../../intl.js";import{isSome as t}from"../../core/arrayUtils.js";import{on as i,watch as s}from"../../core/reactiveUtils.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import{subclass as l}from"../../core/accessorSupport/decorators/subclass.js";import n from"../Widget.js";import{loadCalciteComponents as r}from"./componentsUtils.js";import{globalCss as a}from"./globalCss.js";import{storeNode as c}from"./widgetUtils.js";import{messageBundle as m}from"./decorators/messageBundle.js";import{tsx as d}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import{isGroupLayerItem as p,isLayerItem as h,isFeatureItem as u}from"./SelectionList/selectionListUtils.js";import v from"./SelectionList/SelectionListViewModel.js";import g from"./SelectionList/VisibleElements.js";import{substitute as y}from"../../intl/substitute.js";import{formatNumber as I}from"../../intl/number.js";const b="geoscene-selection-list",f=`${b}__list-item`,w={base:b,container:`${b}__container`,flowItem:`${b}__flow-item`,layerDropdown:`${b}__layer-dropdown`,listItemFeature:`${f}__feature`,listItemFeatureIcon:`${f}__feature-icon`,listItemIcon:`${f}__icon`,itemCount:`${b}__item-count`,notice:`${b}__notice`,panel:`${b}__panel`,totalCount:`${b}__total-count`};let _=class extends n{constructor(e,t){super(e,t),this._iconIntersectionObserver=new IntersectionObserver((e,t)=>{e.forEach(async e=>{if(e.isIntersecting){const i=e.target;if(this._hasIcon(i))return void t.unobserve(i);const s=this._getListItem(i);if(!s)return;this._setHasIcon(i,!0);const o=s.title?y(this.messagesLegend.previewTemplateAriaLabel,{label:s.title}):this.messagesCommon.preview,l=s.thumbnail??await s.fetchThumbnail({ariaLabel:o}).catch(()=>(this._setHasIcon(i,!1),null));if(null==l)return;i.appendChild(l)}})}),this._itemWithOpenMenu=null,this._list=null,this.displayMode="group",this.highlightOnHoverEnabled=!1,this.itemActionConfigs=null,this.menuScale="m",this.messages=null,this.messagesCommon=null,this.messagesLegend=null,this.onListItemSelect=null,this.scale="s",this.viewModel=new v,this.visibleElements=new g,this._afterItemCreate=e=>{this._iconIntersectionObserver?.observe(e)},this._afterItemRemoved=e=>{this._iconIntersectionObserver?.unobserve(e)},this.clear=this.clear.bind(this),this.collapseItems=this.collapseItems.bind(this),this.removeTemporaryHighlight=this.removeTemporaryHighlight.bind(this)}initialize(){this.addHandles([i(()=>this.effectiveSelectionManager,"selection-change",()=>this._closeItemMenu()),s(()=>this.highlightOnHoverEnabled,e=>{e||this.removeTemporaryHighlight()})])}destroy(){this._iconIntersectionObserver?.disconnect(),this._iconIntersectionObserver=null}loadDependencies(){return r({action:()=>import("@geoscene/calcite-components/dist/components/calcite-action"),chip:()=>import("@geoscene/calcite-components/dist/components/calcite-chip"),combobox:()=>import("@geoscene/calcite-components/dist/components/calcite-combobox"),"combobox-item":()=>import("@geoscene/calcite-components/dist/components/calcite-combobox-item"),dropdown:()=>import("@geoscene/calcite-components/dist/components/calcite-dropdown"),"dropdown-group":()=>import("@geoscene/calcite-components/dist/components/calcite-dropdown-group"),"dropdown-item":()=>import("@geoscene/calcite-components/dist/components/calcite-dropdown-item"),flow:()=>import("@geoscene/calcite-components/dist/components/calcite-flow"),"flow-item":()=>import("@geoscene/calcite-components/dist/components/calcite-flow-item"),icon:()=>import("@geoscene/calcite-components/dist/components/calcite-icon"),input:()=>import("@geoscene/calcite-components/dist/components/calcite-input"),list:()=>import("@geoscene/calcite-components/dist/components/calcite-list"),"list-item":()=>import("@geoscene/calcite-components/dist/components/calcite-list-item"),notice:()=>import("@geoscene/calcite-components/dist/components/calcite-notice"),panel:()=>import("@geoscene/calcite-components/dist/components/calcite-panel")})}get _hasFilterText(){const{filterText:e}=this;return null!=e&&""!==e}get activeLayerItem(){return this.viewModel.activeLayerItem}get allLayerItems(){return this.viewModel.allLayerItems}get effectiveCount(){return this.viewModel.effectiveCount}get effectiveSelectionManager(){return this.viewModel.effectiveSelectionManager}get filterText(){return this.viewModel.filterText}set filterText(e){this.viewModel.filterText=e}get icon(){return"selection"}set icon(e){this._overrideIfSome("icon",e)}get isUpdating(){return this.viewModel.isUpdating}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get layer(){return this.viewModel.layer}set layer(e){this.viewModel.layer=e}get layerItems(){return this.viewModel.layerItems}get layerViewMap(){return this.viewModel.layerViewMap}get maxVisibleFeatureCountExceeded(){return this.viewModel.maxVisibleFeatureCountExceeded}get maxVisibleFeatureCountPerLayer(){return this.viewModel.maxVisibleFeatureCountPerLayer}set maxVisibleFeatureCountPerLayer(e){this.viewModel.maxVisibleFeatureCountPerLayer=e}get selectionManager(){return this.viewModel.selectionManager}set selectionManager(e){this.viewModel.selectionManager=e}get state(){return this.viewModel.state}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}get viewLayersAndTables(){return this.viewModel.viewLayersAndTables}get visibleFeatureCount(){return this.viewModel.visibleFeatureCount}get visibleFeatureItems(){return this.viewModel.visibleFeatureItems}get visibleLayerCount(){return this.viewModel.visibleLayerCount}addTemporaryHighlight(e){this.viewModel.addTemporaryHighlight(e)}clear(){this.viewModel.clear()}deselectFeatureItem(e){this.viewModel.deselectFeatureItem(e)}deselectGroupItem(e){this.viewModel.deselectGroupItem(e)}deselectLayerItem(e){this.viewModel.deselectLayerItem(e)}deselectItem(e){this.viewModel.deselectItem(e)}collapseItems(){this._list?.filteredItems.forEach(e=>e.expanded=!1)}goToItem(e){this.viewModel.goToItem(e)}removeFromSelection(e){this.viewModel.removeFromSelection(e)}removeTemporaryHighlight(){this.viewModel.removeTemporaryHighlight()}selectSingleFeatureItem(e){this.viewModel.selectSingleFeatureItem(e)}selectSingleGroupItem(e){this.viewModel.selectSingleGroupItem(e)}selectSingleItem(e){this.viewModel.selectSingleItem(e)}selectSingleLayerItem(e){this.viewModel.selectSingleLayerItem(e)}setSelection(e){this.viewModel.setSelection(e)}render(){return d("div",{class:this.classes(w.base,a.widget,a.panel)},d("calcite-flow",null,d("calcite-flow-item",{class:w.flowItem,heading:this.visibleElements.header?this.messages.selection:void 0,loading:"loading"===this.state,overlayPositioning:"fixed",scale:this.scale,selected:!0},d("calcite-panel",{class:w.panel,overlayPositioning:"fixed",scale:this.scale},d("div",{class:w.container},this._renderActiveLayerDropdown(),this._renderFilterInput(),this._renderList(),this._renderFilterNotice())),this._renderTotalChip(),this._renderMenuActions())))}_renderTotalChip(){const{visibleElements:e}=this;if(!e.totalCount||!e.header)return;const{effectiveCount:t}=this,i=I(t),s=y(this.messages.selectionCount,{count:i});return d("calcite-chip",{appearance:"outline",class:w.totalCount,closable:t>0,closed:0===t,icon:this.maxVisibleFeatureCountExceeded?"exclamation-mark-triangle":void 0,label:i,scale:this.scale,slot:"header-actions-end",title:s,onCalciteChipClose:this.clear},i)}_renderMenuActions(){const{visibleElements:e}=this;if(!e.header||!e.menu)return;const{menuScale:t}=this,i=0===this.effectiveCount;return[d("calcite-action",{disabled:i,icon:"reset",key:"clear-action",onclick:this.clear,scale:t,slot:"header-menu-actions",text:this.messagesCommon.clear,textEnabled:!0}),d("calcite-action",{disabled:i,icon:"folders",key:"collapse-action",onclick:this.collapseItems,scale:t,slot:"header-menu-actions",text:this.messages.collapseAll,textEnabled:!0})]}_renderActiveLayerDropdown(){const{layerItems:e,messages:t}=this;if(!(0===this.effectiveCount||e.length<2)&&this.visibleElements.layerFilter)return d("calcite-combobox",{class:w.layerDropdown,clearDisabled:!0,label:t.filterByLayer,overlayPositioning:"fixed",placeholder:t.filterByLayer,scale:this.scale,selectionMode:"single-persist",onCalciteComboboxChange:({currentTarget:e})=>{this.filterText=void 0;const t=e.selectedItems[0]?.value??void 0;this.layer="all-layers"===t?void 0:t}},d("calcite-combobox-item",{heading:y(t.allLayersCount,{count:e.length}),icon:"layers",key:"all-layers",selected:null==this.layer,value:"all-layers"}),this.layerItems.map(e=>this._renderActiveLayerDropdownItem(e)))}_renderFilterInput(){if(this.visibleElements.filter&&0!==this.effectiveCount)return d("calcite-input",{clearable:!0,icon:"search",placeholder:this.messages.filter,scale:this.scale,value:this.filterText,onCalciteInputInput:({target:{value:e}})=>{this.filterText=e}})}_renderActiveLayerDropdownItem(e){const t=e.title||this.messages.untitledLayer;return d("calcite-combobox-item",{heading:t,icon:e.iconName,key:e.key,selected:e.layer===this.layer,value:e.layer})}_renderList(){const{messages:e}=this;if(0!==this.visibleFeatureCount)return d("calcite-list",{afterCreate:c,bind:this,"data-node-ref":"_list",displayMode:"nested",interactionMode:"interactive",label:e.widgetLabel,loading:this.isUpdating,scale:this.scale,selectionMode:"none"},this._renderListContent(this.allLayerItems))}_renderListContent(e){return this.activeLayerItem?this._renderLayerItem(this.activeLayerItem):e.map(e=>p(e)?this._renderGroupItem(e):h(e)?this._renderLayerItem(e):null).filter(t)}_renderFilterNotice(){const{visibleElements:e}=this;if(!("disabled"===this.state||this.visibleFeatureCount>0)&&e.filter&&e.filterNotice)return d("calcite-notice",{class:w.notice,icon:"exclamation-mark-triangle",kind:"info",open:!0,scale:this.scale,width:"full"},d("div",{slot:"message"},this.messages.noMatchingFeatures))}_renderItemCount(e){if(!this.visibleElements.itemCount)return;const{messages:t}=this,i=I(e.total),s=I(e.visibleTotal),o=y(t.selectionCount,{count:i});return!this._hasFilterText&&e.maxVisibleFeatureCountExceeded?d("span",{class:w.itemCount,slot:"content-end",title:o},d("calcite-icon",{icon:"exclamation-mark-triangle",scale:"s",title:t.tooManyFeatures}),`${I(this.maxVisibleFeatureCountPerLayer)}+`):d("span",{class:w.itemCount,slot:"content-end",title:o},s)}_renderItemActions(e){if(!this.visibleElements.itemMenus)return;const{messages:t,messagesCommon:i}=this,s=this._itemWithOpenMenu===e,o=u(e),l=h(e),n=p(e),r=o?t.deselectFeature:l?t.deselectLayer:t.deselectGroup;return[d("calcite-dropdown",{"data-testid":"selection-list-dropdown",open:s,overlayPositioning:"fixed",scale:this.menuScale,slot:"actions-end",width:"m",onCalciteDropdownClose:()=>this._closeItemMenu(e),onCalciteDropdownOpen:()=>{this._itemWithOpenMenu=e}},d("calcite-action",{appearance:"transparent","data-testid":"selection-list-dropdown-trigger",icon:"ellipsis",scale:this.scale,slot:"trigger",text:i.menu,textEnabled:!1}),s?d("calcite-dropdown-group",{selectionMode:"none"},this.visibleElements.zoomToButton?d("calcite-dropdown-item",{iconStart:"layer-zoom-to",onCalciteDropdownItemSelect:()=>this.goToItem(e)},t.zoomTo):void 0,d("calcite-dropdown-item",{iconStart:"selection-filter",onCalciteDropdownItemSelect:()=>this.selectSingleItem(e)},o?t.onlySelectFeature:t.onlySelectThis),d("calcite-dropdown-item",{iconStart:"selection-x",onCalciteDropdownItemSelect:()=>this.deselectItem(e)},r),this.itemActionConfigs?.map(t=>{const{disabled:i,hidden:s,type:r}=t;if(!("function"==typeof s?s({item:e}):!!s)&&(!r||"feature"===r&&o||"layer"===r&&l||"group"===r&&n))return d("calcite-dropdown-item",{disabled:"function"==typeof i?i({item:e}):!!i,iconStart:t.icon??void 0,onCalciteDropdownItemSelect:()=>t.callback({item:e})},t.label)})):void 0)]}_renderGroupItem(e){const t=e.title||this.messages.untitledLayer;if(0===e.visibleTotal)return;const{displayMode:i}=this;if("layer"===i||"feature"===i)return this._renderListContent(e.items);const{visibleElements:s}=this;return d("calcite-list-item",{bind:this,closable:!!s.itemCloseActions,"data-type":"group",expanded:!0,iconStart:s.itemIcons?e.iconName:void 0,key:e.key,label:t,value:e.title,onCalciteListItemClose:t=>{t.stopPropagation(),this.deselectItem(e)},onCalciteListItemSelect:t=>this._onListItemSelect(e,t)},this._renderItemActions(e),this._renderListContent(e.items))}_renderLayerItem(e){if(0===e.visibleTotal||!e.visible)return;if("feature"===this.displayMode)return this._renderItems(e.featureItems);const{messages:t,visibleElements:i}=this,s=e.title||t.untitledLayer;return d("calcite-list-item",{bind:this,closable:!!i.itemCloseActions,"data-type":"layer",expanded:!0,iconStart:i.itemIcons?e.iconName:void 0,key:e.key,label:s,scale:this.scale,value:e.title,onCalciteListItemClose:t=>{t.stopPropagation(),this.deselectItem(e)},onCalciteListItemSelect:t=>this._onListItemSelect(e,t)},this._renderItemCount(e),this._renderItemActions(e),this._renderItems(e.featureItems),e.maxVisibleFeatureCountExceeded?d("calcite-notice",{class:w.notice,icon:"exclamation-mark-triangle",kind:"info",open:!0,scale:this.scale},d("div",{slot:"message"},t.tooManyFeatures)):void 0)}_renderItems(e){return e.map(e=>this._renderItem(e))}_renderItem(e){if(!e.visible)return;const{highlightOnHoverEnabled:t,messages:i,visibleElements:s}=this,o=e.title||i.untitledFeature,l=s.itemIcons&&"feature"!==this.displayMode;return d("calcite-list-item",{bind:this,class:l?w.listItemFeatureIcon:w.listItemFeature,closable:!!s.itemCloseActions,"data-item":e,"data-type":"feature",key:e.key,label:o,name:o,onblur:t?()=>this.removeTemporaryHighlight():void 0,onfocus:t?()=>this.addTemporaryHighlight(e):void 0,onpointerenter:t?()=>this.addTemporaryHighlight(e):void 0,onpointerleave:t?()=>this.removeTemporaryHighlight():void 0,scale:this.scale,value:o,onCalciteListItemClose:t=>{t.stopPropagation(),this.deselectItem(e)},onCalciteListItemSelect:t=>this._onListItemSelect(e,t)},this._renderItemIcon(e),this._renderItemActions(e))}_renderItemIcon(e){if(this.visibleElements.itemIcons)return d("div",{class:w.listItemIcon,key:"content-start",slot:"content-start"},d("span",{afterCreate:this._afterItemCreate,afterRemoved:this._afterItemRemoved,"data-has-icon":!1,"data-item":e,key:e.thumbnailKey}))}_getListItem(e){return e?.["data-item"]}_hasIcon(e){return!!e?.["data-has-icon"]}_setHasIcon(e,t){e&&(e["data-has-icon"]=t)}_onListItemSelect(e,t){t.stopPropagation(),this._closeItemMenu(),this.onListItemSelect?.({item:e})}_closeItemMenu(e){e&&e!==this._itemWithOpenMenu||(this._itemWithOpenMenu=null)}};e([o()],_.prototype,"_hasFilterText",null),e([o()],_.prototype,"_itemWithOpenMenu",void 0),e([o()],_.prototype,"_list",void 0),e([o()],_.prototype,"activeLayerItem",null),e([o()],_.prototype,"allLayerItems",null),e([o()],_.prototype,"displayMode",void 0),e([o()],_.prototype,"effectiveCount",null),e([o()],_.prototype,"effectiveSelectionManager",null),e([o()],_.prototype,"filterText",null),e([o()],_.prototype,"highlightOnHoverEnabled",void 0),e([o()],_.prototype,"icon",null),e([o()],_.prototype,"itemActionConfigs",void 0),e([o()],_.prototype,"isUpdating",null),e([o()],_.prototype,"label",null),e([o()],_.prototype,"layer",null),e([o()],_.prototype,"layerItems",null),e([o()],_.prototype,"layerViewMap",null),e([o()],_.prototype,"maxVisibleFeatureCountExceeded",null),e([o()],_.prototype,"maxVisibleFeatureCountPerLayer",null),e([o()],_.prototype,"menuScale",void 0),e([o(),m("geoscene/widgets/support/SelectionList/t9n/SelectionList")],_.prototype,"messages",void 0),e([o(),m("geoscene/t9n/common")],_.prototype,"messagesCommon",void 0),e([o(),m("geoscene/widgets/Legend/t9n/Legend")],_.prototype,"messagesLegend",void 0),e([o()],_.prototype,"onListItemSelect",void 0),e([o()],_.prototype,"scale",void 0),e([o()],_.prototype,"selectionManager",null),e([o()],_.prototype,"state",null),e([o()],_.prototype,"view",null),e([o()],_.prototype,"viewLayersAndTables",null),e([o()],_.prototype,"viewModel",void 0),e([o({type:g,nonNullable:!0})],_.prototype,"visibleElements",void 0),e([o()],_.prototype,"visibleFeatureCount",null),e([o()],_.prototype,"visibleFeatureItems",null),e([o()],_.prototype,"visibleLayerCount",null),_=e([l("geoscene.widgets.support.SelectionList")],_);const C=_;export{C as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import"../../intl.js";import{deprecatedProperty as t}from"../../core/deprecate.js";import{handlesGroup as o}from"../../core/handleUtils.js";import i from"../../core/Logger.js";import{removeMaybe as s}from"../../core/maybe.js";import{on as l}from"../../core/reactiveUtils.js";import{property as r}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as n}from"../../core/accessorSupport/decorators/subclass.js";import a from"../Widget.js";import{loadCalciteComponents as c}from"./componentsUtils.js";import{globalCss as p}from"./globalCss.js";import"./widgetUtils.js";import{messageBundle as d}from"./decorators/messageBundle.js";import{tsx as u}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import h from"./SelectionToolbar/SelectionToolbarViewModel.js";import m from"./SelectionToolbar/VisibleElements.js";import{formatNumber as v}from"../../intl/number.js";const f="geoscene-selection-toolbar",g={base:f,container:`${f}__container`,toolButton:`${f}__tool-button`};let T=class extends a{constructor(e,t){super(e,t),this._viewModelHandlesGroup=null,this.availableOperationTypes=["replace","add","remove"],this.disabled=!1,this.layout="horizontal",this.messages=null,this.scale="s",this.viewModel=new h,this.visibleElements=new m}initialize(){this._viewModelHandlesGroup=o([l(()=>this.viewModel,"before-activate",e=>this.emit("before-activate",e)),l(()=>this.viewModel,"complete",e=>this.emit("complete",e)),l(()=>this.viewModel,"selection-change",e=>this.emit("selection-change",e))])}destroy(){this._viewModelHandlesGroup=s(this._viewModelHandlesGroup)}loadDependencies(){return c({action:()=>import("@esri/calcite-components/dist/components/calcite-action"),"action-bar":()=>import("@esri/calcite-components/dist/components/calcite-action-bar"),"action-group":()=>import("@esri/calcite-components/dist/components/calcite-action-group"),chip:()=>import("@esri/calcite-components/dist/components/calcite-chip"),dropdown:()=>import("@esri/calcite-components/dist/components/calcite-dropdown"),"dropdown-item":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-item"),"dropdown-group":()=>import("@esri/calcite-components/dist/components/calcite-dropdown-group"),icon:()=>import("@esri/calcite-components/dist/components/calcite-icon")})}get _effectiveDisabled(){return this.disabled||"disabled"===this.state}get _effectiveOperationType(){return this.activeOperation?.effectiveType||this.defaultOperationType}get activeOperation(){return this.viewModel.activeOperation}get continuousSelectionEnabled(){return this.viewModel.continuousSelectionEnabled}set continuousSelectionEnabled(e){this.viewModel.continuousSelectionEnabled=e}get defaultLassoToolOptions(){return this.viewModel.defaultLassoToolOptions}set defaultLassoToolOptions(e){this.viewModel.defaultLassoToolOptions=e}get defaultOperationType(){return this.viewModel.defaultOperationType}set defaultOperationType(e){this.viewModel.defaultOperationType=e}get defaultPointToolOptions(){return this.viewModel.defaultPointToolOptions}set defaultPointToolOptions(e){this.viewModel.defaultPointToolOptions=e}get defaultRectangleToolOptions(){return this.viewModel.defaultRectangleToolOptions}set defaultRectangleToolOptions(e){this.viewModel.defaultRectangleToolOptions=e}get effectiveSelectionManager(){return this.viewModel.effectiveSelectionManager}get effectiveSources(){return this.viewModel.effectiveSources}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get layers(){return t(i.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources}set layers(e){t(i.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources=e}get layerViewPreferenceEnabled(){return this.viewModel.layerViewPreferenceEnabled}set layerViewPreferenceEnabled(e){this.viewModel.layerViewPreferenceEnabled=e}get persistSelection(){return this.viewModel.persistSelection}set persistSelection(e){this.viewModel.persistSelection=e}get returnFeatureTitleFields(){return this.viewModel.returnFeatureTitleFields}set returnFeatureTitleFields(e){this.viewModel.returnFeatureTitleFields=e}get returnGeometry(){return this.viewModel.returnGeometry}set returnGeometry(e){this.viewModel.returnGeometry=e}get selectOnComplete(){return this.viewModel.selectOnComplete}set selectOnComplete(e){this.viewModel.selectOnComplete=e}get selectionManager(){return this.viewModel.selectionManager}set selectionManager(e){this.viewModel.selectionManager=e}get state(){return this.viewModel.state}get sources(){return this.viewModel.sources}set sources(e){this.viewModel.sources=e}get toolConfigs(){return this.viewModel.toolConfigs}set toolConfigs(e){this.viewModel.toolConfigs=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}get visibleToolCount(){const{visibleElements:e}=this;return this.toolConfigs.length+(e.lassoTool?1:0)+(e.rectangleTool?1:0)}activate(e){if(this.cancel(),!this._effectiveDisabled)return this.viewModel.activate(e)}activateTool(e){if(!this._effectiveDisabled)return this.viewModel.activateTool(e)}cancel(){this.viewModel.cancel()}toggleTool(e){if(!this._effectiveDisabled)return this.viewModel.toggleTool(e)}render(){return u("div",{"aria-label":this.label,class:this.classes(g.base,p.widget)},u("div",{class:g.container},u("calcite-action-bar",{expandDisabled:!0,layout:"horizontal",overflowActionsDisabled:!0,scale:this.scale},this._renderOperationTypeControls(),this._renderToolsGroup(),this._renderChip())))}_renderToolsGroup(){return u("calcite-action-group",{key:"tools-group"},this._renderDefaultTools(),this._renderCustomTools())}_renderDefaultTools(){return[this._renderPanAction(),this._renderPointTool(),this._renderRectangleTool(),this._renderLassoTool()]}_renderPanAction(){if(!this.visibleElements.pan)return;const e=this.messages.pan,t=`${this.id}-tool-pan`;return this._renderAction({active:!this.activeOperation,disabled:this._effectiveDisabled,icon:"pan",id:t,key:t,onclick:()=>this.cancel(),text:e,title:e})}_renderChip(){if(!this.visibleElements.chip)return;const{effectiveSelectionManager:e}=this,t=e?.count??0,o=v(t);return u("calcite-chip",{appearance:"outline",closable:t>0,closed:0===t,disabled:this._effectiveDisabled||0===t,label:o,scale:this.scale,slot:"actions-end",title:this.messages.clearSelection,onCalciteChipClose:()=>e?.clear()},o)}_renderCustomTools(){return this.toolConfigs.map(({toolName:e,icon:t})=>this._renderToolWithTooltip(e,t))}_renderPointTool(){if(this.visibleElements.pointTool)return this._renderToolWithTooltip("point","selection-set",this.messages.selectByPoint)}_renderLassoTool(){if(this.visibleElements.lassoTool)return this._renderToolWithTooltip("lasso","lasso-select",this.messages.selectByLasso)}_renderRectangleTool(){if(this.visibleElements.rectangleTool)return this._renderToolWithTooltip("rectangle","cursor-marquee",this.messages.selectByRectangle)}_renderOperationTypeControls(){const{availableOperationTypes:e}=this;if(!this.visibleElements.operationTypeControls||!e.length)return;const{_effectiveOperationType:t,scale:o}=this,i=this._getIconForSelectionOperationType(t),s=this._getLabelForSelectionOperationType(t);return u("calcite-action-group",{key:"toggle-group"},u("calcite-dropdown",{overlayPositioning:"fixed",placement:"bottom-start",scale:o},u("calcite-action",{class:g.toolButton,disabled:this._effectiveDisabled,icon:i,scale:o,slot:"trigger",text:s,title:s},u("calcite-icon",{icon:"chevron-down",scale:"s"})),u("calcite-dropdown-group",null,e.map(e=>this._renderOperationTypeDropdownItem(e)))))}_renderOperationTypeDropdownItem(e){return u("calcite-dropdown-item",{iconStart:this._getIconForSelectionOperationType(e),selected:this.defaultOperationType===e,onCalciteDropdownItemSelect:()=>this.defaultOperationType=e},this._getLabelForSelectionOperationType(e))}_renderToolWithTooltip(e,t,o=e){const i=`${this.id}-tool-${e}`;return this._renderAction({active:this.activeOperation?.toolName===e,disabled:this._effectiveDisabled,icon:t||"selection",id:i,key:i,onclick:()=>this.toggleTool(e),text:o,title:o})}_renderAction(e){return u("calcite-action",{...e,bind:this,class:g.toolButton,scale:this.scale})}_getIconForSelectionOperationType(e){switch(e){case"replace":return"overwrite-features";case"add":return"cursor-plus";case"remove":return"cursor-minus"}}_getLabelForSelectionOperationType(e){const{messages:t}=this;switch(e){case"replace":return t.replaceSelection;case"add":return t.addToSelection;case"remove":return t.removeFromSelection}}};e([r()],T.prototype,"_effectiveDisabled",null),e([r()],T.prototype,"_effectiveOperationType",null),e([r()],T.prototype,"activeOperation",null),e([r()],T.prototype,"availableOperationTypes",void 0),e([r()],T.prototype,"continuousSelectionEnabled",null),e([r()],T.prototype,"defaultLassoToolOptions",null),e([r()],T.prototype,"defaultOperationType",null),e([r()],T.prototype,"defaultPointToolOptions",null),e([r()],T.prototype,"defaultRectangleToolOptions",null),e([r()],T.prototype,"disabled",void 0),e([r()],T.prototype,"effectiveSelectionManager",null),e([r()],T.prototype,"effectiveSources",null),e([r()],T.prototype,"label",null),e([r()],T.prototype,"layers",null),e([r()],T.prototype,"layerViewPreferenceEnabled",null),e([r()],T.prototype,"layout",void 0),e([r(),d("geoscene/widgets/support/SelectionToolbar/t9n/SelectionToolbar")],T.prototype,"messages",void 0),e([r()],T.prototype,"persistSelection",null),e([r()],T.prototype,"returnFeatureTitleFields",null),e([r()],T.prototype,"returnGeometry",null),e([r()],T.prototype,"selectOnComplete",null),e([r()],T.prototype,"scale",void 0),e([r()],T.prototype,"selectionManager",null),e([r()],T.prototype,"state",null),e([r()],T.prototype,"sources",null),e([r()],T.prototype,"toolConfigs",null),e([r()],T.prototype,"view",null),e([r()],T.prototype,"viewModel",void 0),e([r({type:m,nonNullable:!0})],T.prototype,"visibleElements",void 0),e([r()],T.prototype,"visibleToolCount",null),T=e([n("geoscene.widgets.support.SelectionToolbar")],T);const y=T;export{y as default};
|
|
5
|
+
import{__decorate as e}from"tslib";import"../../intl.js";import{deprecatedProperty as t}from"../../core/deprecate.js";import{handlesGroup as o}from"../../core/handleUtils.js";import i from"../../core/Logger.js";import{removeMaybe as s}from"../../core/maybe.js";import{on as l}from"../../core/reactiveUtils.js";import{property as r}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/RandomLCG.js";import{subclass as n}from"../../core/accessorSupport/decorators/subclass.js";import a from"../Widget.js";import{loadCalciteComponents as c}from"./componentsUtils.js";import{globalCss as p}from"./globalCss.js";import"./widgetUtils.js";import{messageBundle as d}from"./decorators/messageBundle.js";import{tsx as u}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import h from"./SelectionToolbar/SelectionToolbarViewModel.js";import m from"./SelectionToolbar/VisibleElements.js";import{formatNumber as v}from"../../intl/number.js";const f="geoscene-selection-toolbar",g={base:f,container:`${f}__container`,toolButton:`${f}__tool-button`};let T=class extends a{constructor(e,t){super(e,t),this._viewModelHandlesGroup=null,this.availableOperationTypes=["replace","add","remove"],this.disabled=!1,this.layout="horizontal",this.messages=null,this.scale="s",this.viewModel=new h,this.visibleElements=new m}initialize(){this._viewModelHandlesGroup=o([l(()=>this.viewModel,"before-activate",e=>this.emit("before-activate",e)),l(()=>this.viewModel,"complete",e=>this.emit("complete",e)),l(()=>this.viewModel,"selection-change",e=>this.emit("selection-change",e))])}destroy(){this._viewModelHandlesGroup=s(this._viewModelHandlesGroup)}loadDependencies(){return c({action:()=>import("@geoscene/calcite-components/dist/components/calcite-action"),"action-bar":()=>import("@geoscene/calcite-components/dist/components/calcite-action-bar"),"action-group":()=>import("@geoscene/calcite-components/dist/components/calcite-action-group"),chip:()=>import("@geoscene/calcite-components/dist/components/calcite-chip"),dropdown:()=>import("@geoscene/calcite-components/dist/components/calcite-dropdown"),"dropdown-item":()=>import("@geoscene/calcite-components/dist/components/calcite-dropdown-item"),"dropdown-group":()=>import("@geoscene/calcite-components/dist/components/calcite-dropdown-group"),icon:()=>import("@geoscene/calcite-components/dist/components/calcite-icon")})}get _effectiveDisabled(){return this.disabled||"disabled"===this.state}get _effectiveOperationType(){return this.activeOperation?.effectiveType||this.defaultOperationType}get activeOperation(){return this.viewModel.activeOperation}get continuousSelectionEnabled(){return this.viewModel.continuousSelectionEnabled}set continuousSelectionEnabled(e){this.viewModel.continuousSelectionEnabled=e}get defaultLassoToolOptions(){return this.viewModel.defaultLassoToolOptions}set defaultLassoToolOptions(e){this.viewModel.defaultLassoToolOptions=e}get defaultOperationType(){return this.viewModel.defaultOperationType}set defaultOperationType(e){this.viewModel.defaultOperationType=e}get defaultPointToolOptions(){return this.viewModel.defaultPointToolOptions}set defaultPointToolOptions(e){this.viewModel.defaultPointToolOptions=e}get defaultRectangleToolOptions(){return this.viewModel.defaultRectangleToolOptions}set defaultRectangleToolOptions(e){this.viewModel.defaultRectangleToolOptions=e}get effectiveSelectionManager(){return this.viewModel.effectiveSelectionManager}get effectiveSources(){return this.viewModel.effectiveSources}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get layers(){return t(i.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources}set layers(e){t(i.getLogger(this),"layers",{replacement:"Use SelectionToolbar.sources instead."}),this.viewModel.sources=e}get layerViewPreferenceEnabled(){return this.viewModel.layerViewPreferenceEnabled}set layerViewPreferenceEnabled(e){this.viewModel.layerViewPreferenceEnabled=e}get persistSelection(){return this.viewModel.persistSelection}set persistSelection(e){this.viewModel.persistSelection=e}get returnFeatureTitleFields(){return this.viewModel.returnFeatureTitleFields}set returnFeatureTitleFields(e){this.viewModel.returnFeatureTitleFields=e}get returnGeometry(){return this.viewModel.returnGeometry}set returnGeometry(e){this.viewModel.returnGeometry=e}get selectOnComplete(){return this.viewModel.selectOnComplete}set selectOnComplete(e){this.viewModel.selectOnComplete=e}get selectionManager(){return this.viewModel.selectionManager}set selectionManager(e){this.viewModel.selectionManager=e}get state(){return this.viewModel.state}get sources(){return this.viewModel.sources}set sources(e){this.viewModel.sources=e}get toolConfigs(){return this.viewModel.toolConfigs}set toolConfigs(e){this.viewModel.toolConfigs=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}get visibleToolCount(){const{visibleElements:e}=this;return this.toolConfigs.length+(e.lassoTool?1:0)+(e.rectangleTool?1:0)}activate(e){if(this.cancel(),!this._effectiveDisabled)return this.viewModel.activate(e)}activateTool(e){if(!this._effectiveDisabled)return this.viewModel.activateTool(e)}cancel(){this.viewModel.cancel()}toggleTool(e){if(!this._effectiveDisabled)return this.viewModel.toggleTool(e)}render(){return u("div",{"aria-label":this.label,class:this.classes(g.base,p.widget)},u("div",{class:g.container},u("calcite-action-bar",{expandDisabled:!0,layout:"horizontal",overflowActionsDisabled:!0,scale:this.scale},this._renderOperationTypeControls(),this._renderToolsGroup(),this._renderChip())))}_renderToolsGroup(){return u("calcite-action-group",{key:"tools-group"},this._renderDefaultTools(),this._renderCustomTools())}_renderDefaultTools(){return[this._renderPanAction(),this._renderPointTool(),this._renderRectangleTool(),this._renderLassoTool()]}_renderPanAction(){if(!this.visibleElements.pan)return;const e=this.messages.pan,t=`${this.id}-tool-pan`;return this._renderAction({active:!this.activeOperation,disabled:this._effectiveDisabled,icon:"pan",id:t,key:t,onclick:()=>this.cancel(),text:e,title:e})}_renderChip(){if(!this.visibleElements.chip)return;const{effectiveSelectionManager:e}=this,t=e?.count??0,o=v(t);return u("calcite-chip",{appearance:"outline",closable:t>0,closed:0===t,disabled:this._effectiveDisabled||0===t,label:o,scale:this.scale,slot:"actions-end",title:this.messages.clearSelection,onCalciteChipClose:()=>e?.clear()},o)}_renderCustomTools(){return this.toolConfigs.map(({toolName:e,icon:t})=>this._renderToolWithTooltip(e,t))}_renderPointTool(){if(this.visibleElements.pointTool)return this._renderToolWithTooltip("point","selection-set",this.messages.selectByPoint)}_renderLassoTool(){if(this.visibleElements.lassoTool)return this._renderToolWithTooltip("lasso","lasso-select",this.messages.selectByLasso)}_renderRectangleTool(){if(this.visibleElements.rectangleTool)return this._renderToolWithTooltip("rectangle","cursor-marquee",this.messages.selectByRectangle)}_renderOperationTypeControls(){const{availableOperationTypes:e}=this;if(!this.visibleElements.operationTypeControls||!e.length)return;const{_effectiveOperationType:t,scale:o}=this,i=this._getIconForSelectionOperationType(t),s=this._getLabelForSelectionOperationType(t);return u("calcite-action-group",{key:"toggle-group"},u("calcite-dropdown",{overlayPositioning:"fixed",placement:"bottom-start",scale:o},u("calcite-action",{class:g.toolButton,disabled:this._effectiveDisabled,icon:i,scale:o,slot:"trigger",text:s,title:s},u("calcite-icon",{icon:"chevron-down",scale:"s"})),u("calcite-dropdown-group",null,e.map(e=>this._renderOperationTypeDropdownItem(e)))))}_renderOperationTypeDropdownItem(e){return u("calcite-dropdown-item",{iconStart:this._getIconForSelectionOperationType(e),selected:this.defaultOperationType===e,onCalciteDropdownItemSelect:()=>this.defaultOperationType=e},this._getLabelForSelectionOperationType(e))}_renderToolWithTooltip(e,t,o=e){const i=`${this.id}-tool-${e}`;return this._renderAction({active:this.activeOperation?.toolName===e,disabled:this._effectiveDisabled,icon:t||"selection",id:i,key:i,onclick:()=>this.toggleTool(e),text:o,title:o})}_renderAction(e){return u("calcite-action",{...e,bind:this,class:g.toolButton,scale:this.scale})}_getIconForSelectionOperationType(e){switch(e){case"replace":return"overwrite-features";case"add":return"cursor-plus";case"remove":return"cursor-minus"}}_getLabelForSelectionOperationType(e){const{messages:t}=this;switch(e){case"replace":return t.replaceSelection;case"add":return t.addToSelection;case"remove":return t.removeFromSelection}}};e([r()],T.prototype,"_effectiveDisabled",null),e([r()],T.prototype,"_effectiveOperationType",null),e([r()],T.prototype,"activeOperation",null),e([r()],T.prototype,"availableOperationTypes",void 0),e([r()],T.prototype,"continuousSelectionEnabled",null),e([r()],T.prototype,"defaultLassoToolOptions",null),e([r()],T.prototype,"defaultOperationType",null),e([r()],T.prototype,"defaultPointToolOptions",null),e([r()],T.prototype,"defaultRectangleToolOptions",null),e([r()],T.prototype,"disabled",void 0),e([r()],T.prototype,"effectiveSelectionManager",null),e([r()],T.prototype,"effectiveSources",null),e([r()],T.prototype,"label",null),e([r()],T.prototype,"layers",null),e([r()],T.prototype,"layerViewPreferenceEnabled",null),e([r()],T.prototype,"layout",void 0),e([r(),d("geoscene/widgets/support/SelectionToolbar/t9n/SelectionToolbar")],T.prototype,"messages",void 0),e([r()],T.prototype,"persistSelection",null),e([r()],T.prototype,"returnFeatureTitleFields",null),e([r()],T.prototype,"returnGeometry",null),e([r()],T.prototype,"selectOnComplete",null),e([r()],T.prototype,"scale",void 0),e([r()],T.prototype,"selectionManager",null),e([r()],T.prototype,"state",null),e([r()],T.prototype,"sources",null),e([r()],T.prototype,"toolConfigs",null),e([r()],T.prototype,"view",null),e([r()],T.prototype,"viewModel",void 0),e([r({type:m,nonNullable:!0})],T.prototype,"visibleElements",void 0),e([r()],T.prototype,"visibleToolCount",null),T=e([n("geoscene.widgets.support.SelectionToolbar")],T);const y=T;export{y as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{isSome as t}from"../../core/arrayUtils.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import s from"../../views/interactive/sketch/SketchOptions.js";import{directionModeIcons as l}from"../../views/interactive/tooltip/components/directionModeIcons.js";import n from"../Widget.js";import{loadCalciteComponents as r}from"./componentsUtils.js";import{globalCss as c}from"./globalCss.js";import{loadLabeledSwitchComponents as a,LabeledSwitch as p}from"./LabeledSwitch.js";import"./widgetUtils.js";import{messageBundle as d}from"./decorators/messageBundle.js";import{tsx as b}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import h from"./SketchTooltipControls/VisibleElements.js";const m="geoscene-sketch-tooltip-controls",g={base:m,block:`${m}__block`,blockContent:`${m}__block-content`,radioButtonLabelWrapper:`${m}__radio-button-label-wrapper`};let u=class extends n{constructor(e,t){super(e,t),this.viewModel=null,this.visibleElements=new h,this.sketchOptions=new s,this.viewType=void 0,this._onTooltipsEnabledChange=e=>{this.sketchOptions.tooltips.enabled=e},this._onLabelsEnabledChange=e=>{this.sketchOptions.labels.enabled=e},this._onDirectionModeChange=e=>{this.sketchOptions.values.directionMode=e.currentTarget.selectedItem.value}}loadDependencies(){return Promise.all([r({block:()=>import("@
|
|
5
|
+
import{__decorate as e}from"tslib";import{isSome as t}from"../../core/arrayUtils.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import{subclass as i}from"../../core/accessorSupport/decorators/subclass.js";import s from"../../views/interactive/sketch/SketchOptions.js";import{directionModeIcons as l}from"../../views/interactive/tooltip/components/directionModeIcons.js";import n from"../Widget.js";import{loadCalciteComponents as r}from"./componentsUtils.js";import{globalCss as c}from"./globalCss.js";import{loadLabeledSwitchComponents as a,LabeledSwitch as p}from"./LabeledSwitch.js";import"./widgetUtils.js";import{messageBundle as d}from"./decorators/messageBundle.js";import{tsx as b}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import h from"./SketchTooltipControls/VisibleElements.js";const m="geoscene-sketch-tooltip-controls",g={base:m,block:`${m}__block`,blockContent:`${m}__block-content`,radioButtonLabelWrapper:`${m}__radio-button-label-wrapper`};let u=class extends n{constructor(e,t){super(e,t),this.viewModel=null,this.visibleElements=new h,this.sketchOptions=new s,this.viewType=void 0,this._onTooltipsEnabledChange=e=>{this.sketchOptions.tooltips.enabled=e},this._onLabelsEnabledChange=e=>{this.sketchOptions.labels.enabled=e},this._onDirectionModeChange=e=>{this.sketchOptions.values.directionMode=e.currentTarget.selectedItem.value}}loadDependencies(){return Promise.all([r({block:()=>import("@geoscene/calcite-components/dist/components/calcite-block"),label:()=>import("@geoscene/calcite-components/dist/components/calcite-label"),icon:()=>import("@geoscene/calcite-components/dist/components/calcite-icon"),"radio-button":()=>import("@geoscene/calcite-components/dist/components/calcite-radio-button"),"radio-button-group":()=>import("@geoscene/calcite-components/dist/components/calcite-radio-button-group")}),a()])}render(){const{label:e,visibleElements:t}=this,o=this._renderContent();return b("div",{"aria-label":e,class:this.classes(g.base,c.widget)},o?b("calcite-block",{class:g.block,expanded:!0,heading:t.header?this.label:"",key:"content-block",label:this.label},b("div",{class:g.blockContent,key:"content"},o)):void 0)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}_renderContent(){const{visibleElements:e,viewType:o}=this,i=[e.tooltipsToggle?this._renderTooltipsToggle():null,e.labelsToggle&&"2d"!==o?this._renderLabelsToggle():null,e.directionModePicker?this._renderDirectionModePicker():null].filter(t);return 0===i.length?null:i}_renderTooltipsToggle(){const{messages:e,sketchOptions:t}=this;return b(p,{checked:t.tooltips.effectiveEnabled,hint:e.tooltipsToggleHint,key:`${this.id}__tooltips`,label:e.tooltipsToggle,onChange:this._onTooltipsEnabledChange})}_renderLabelsToggle(){const{messages:e,sketchOptions:t}=this;return b(p,{checked:t.labels.enabled,hint:e.labelsToggleHint,key:`${this.id}__labels`,label:e.labelsToggle,onChange:this._onLabelsEnabledChange})}_renderDirectionModePicker(){const{messages:e,sketchOptions:t}=this,{directionMode:o}=t.values;return b("calcite-label",{key:"direction-mode",layout:"default",scale:"s"},e.directionModePicker,b("calcite-radio-button-group",{key:"radio-button-group",layout:"horizontal",name:this.id,scale:"s",value:o,onCalciteRadioButtonGroupChange:this._onDirectionModeChange},this._renderDirectionModeOption("relative",o,e.directionModeRelative),this._renderDirectionModeOption("absolute",o,e.directionModeAbsolute)))}_renderDirectionModeOption(e,t,o){return b("calcite-label",{key:e,layout:"inline",scale:"s"},b("calcite-radio-button",{checked:e===t,scale:"s",value:e}),b("div",{class:g.radioButtonLabelWrapper,key:"label-wrapper"},b("calcite-icon",{icon:l[e],scale:"s"}),o))}};e([o()],u.prototype,"label",null),e([o({type:h,nonNullable:!0})],u.prototype,"visibleElements",void 0),e([o(),d("geoscene/widgets/support/SketchTooltipControls/t9n/SketchTooltipControls")],u.prototype,"messages",void 0),e([o({nonNullable:!0,type:s})],u.prototype,"sketchOptions",void 0),e([o({type:String})],u.prototype,"viewType",void 0),u=e([i("geoscene.widgets.support.SketchTooltipControls")],u);const k=u;export{k as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{isSome as t}from"../../core/arrayUtils.js";import{createTask as i}from"../../core/asyncUtils.js";import{destroyMaybe as s}from"../../core/maybe.js";import{watch as l}from"../../core/reactiveUtils.js";import{generateUID as n}from"../../core/uid.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import{subclass as a}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as d}from"./componentsUtils.js";import{globalCss as p}from"./globalCss.js";import{loadLabeledSwitchComponents as c,LabeledSwitch as g}from"./LabeledSwitch.js";import{setFocus as h}from"./widgetUtils.js";import{messageBundle as m}from"./decorators/messageBundle.js";import{tsx as b}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import u from"./SnappingControls/SnappingControlsViewModel.js";import{itemTitleMatchesFilter as y}from"./SnappingControls/snappingLayerListUtils.js";import _ from"./SnappingControls/VisibleElements.js";const L="geoscene-snapping-controls",w={base:L,container:`${L}__container`,toggleBlock:`${L}__toggle-block`,layerListBlock:`${L}__layer-list-block`,layerList:`${L}__layer-list`,layerListFilter:`${L}__layer-list__filter`,layerListButton:`${L}__layer-list__button`,layerListItem:`${L}__layer-list__item`,layerListGroup:`${L}__layer-list__group`,nestedContainer:`${L}__nested-container`};let v=class extends r{constructor(e,t){super(e,t),this._defaultViewModel=null,this._layerListFilter=null,this._gridLoadTask=null,this.layerListOpen=!0,this.gridOptionsOpen=!1,this.messages=null,this.messagesCommon=null,this.snappingManager=null,this.visibleElements=new _,this._enableSnappingSwitchChange=e=>{this.snappingOptions.enabled=e},this._featureEnabledSwitchChange=e=>{this.snappingOptions.featureEnabled=e},this._gridEnabledSwitchChange=e=>{this.snappingOptions.gridEnabled=e,e&&this._startLoadGrid()},this._selfEnabledSwitchChange=e=>{this.snappingOptions.selfEnabled=e},this._onToggleLayersButtonClick=e=>{this.viewModel.toggleSnappingForAllLayers(!this.viewModel.allLayersEnabled),h(e.target)};const{snappingOptions:i,view:s,viewModel:l}=e;this.viewModel=l??(this._defaultViewModel=new u({snappingOptions:i,view:s}))}normalizeCtorArgs(e){const{snappingOptions:t,view:i,viewModel:s,...l}=e;return l}destroy(){this.viewModel!==this._defaultViewModel&&(this._defaultViewModel=s(this._defaultViewModel))}loadDependencies(){return Promise.all([d({block:()=>import("@esri/calcite-components/dist/components/calcite-block"),button:()=>import("@esri/calcite-components/dist/components/calcite-button"),input:()=>import("@esri/calcite-components/dist/components/calcite-input"),list:()=>import("@esri/calcite-components/dist/components/calcite-list"),"list-item":()=>import("@esri/calcite-components/dist/components/calcite-list-item"),checkbox:()=>import("@esri/calcite-components/dist/components/calcite-checkbox"),loader:()=>import("@esri/calcite-components/dist/components/calcite-loader")}),c()])}initialize(){this.addHandles(l(()=>"2d"===this.view?.type&&!!this.view.grid,e=>{this.visibleElements.gridControls&&(this.snappingOptions.gridEnabled=e)}))}get _openAndReady(){return this.gridOptionsOpen&&this.snappingOptions.gridEnabled&&this.snappingOptions.enabled}get icon(){return"snap-to-point"}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}set viewModel(e){e!==this._get("viewModel")&&(null!=this._defaultViewModel&&this._defaultViewModel===e||(this._defaultViewModel=s(this._defaultViewModel)),this._set("viewModel",e))}render(){const{label:e}=this;return b("div",{"aria-label":e,class:this.classes(w.base,p.widget)},b("div",{class:w.container},this._renderContent()))}_renderContent(){return[this._renderToggles(),this._renderLayerList(),"2d"===this.view?.type&&this.visibleElements.gridControls?this._renderGridOptions():null]}_renderToggles(){const{visibleElements:e,view:i}=this,s=[e.selfEnabledToggle?this._renderSelfEnabledToggle():null,e.featureEnabledToggle?this._renderFeatureEnabledToggle():null,e.gridEnabledToggle&&"2d"===i?.type?this._renderGridEnabledToggle():null].filter(t),l=[e.enabledToggle?this._renderEnabledToggle():null,s.length>0?b("div",{class:w.nestedContainer},s):null].filter(t);return 0===l.length?null:b("calcite-block",{class:w.toggleBlock,expanded:!0,heading:e.header?this.label:"",key:"toggle-block",label:this.label},l)}_renderEnabledToggle(){return b(g,{checked:this.viewModel.snappingOptions.enabled,disabled:this._enabledToggleDisabled,key:`${this.id}__enabled-toggle`,label:this.messages.enableSnapping,onChange:this._enableSnappingSwitchChange})}_renderSelfEnabledToggle(){return b(g,{checked:this.viewModel.snappingOptions.selfEnabled,disabled:this._secondaryElementsDisabled,key:`${this.id}__self-enabled-toggle`,label:this.messages.geometryGuides,onChange:this._selfEnabledSwitchChange})}_renderFeatureEnabledToggle(){return b(g,{checked:this.viewModel.snappingOptions.featureEnabled,disabled:this._secondaryElementsDisabled,key:`${this.id}__feature-enabled-toggle`,label:this.messages.featureToFeature,onChange:this._featureEnabledSwitchChange})}_renderGridEnabledToggle(){return b(g,{checked:this.viewModel.snappingOptions.gridEnabled,disabled:this._secondaryElementsDisabled,key:`${this.id}__grid-enabled-toggle`,label:this.messages.grid,onChange:this._gridEnabledSwitchChange})}_renderLayerList(){if(!this.visibleElements.layerList)return null;const{messages:e,viewModel:t}=this,i=t.layerListViewModel.operationalItems.length>9?b("calcite-input",{class:w.layerListFilter,clearable:!0,placeholder:e?.searchLayers,onCalciteInputInput:({currentTarget:{value:e}})=>{this._layerListFilter=""===e?null:new RegExp(e,"i")}}):null,s=this._secondaryElementsDisabled,l=this.layerListOpen&&!s,n=t.layerListViewModel.operationalItems?.find(e=>!!e.children.length);return b("calcite-block",{class:w.layerListBlock,collapsible:!0,disabled:this._secondaryElementsDisabled,expanded:l,heading:e.snappingLayers,key:"list-block",onCalciteBlockToggle:e=>this.layerListOpen=e.currentTarget.expanded},i,this._renderToggleLayersButton(),b("calcite-list",{class:w.layerList,displayMode:n?"nested":"flat",label:e?.snappingLayers,selectionMode:"none"},this._renderLayerListItemCollection(t.layerListViewModel.operationalItems)))}_renderGridOptions(){const{view:e,visibleElements:t,snappingManager:i,snappingOptions:s,_openAndReady:l}=this,{gridEnabled:n,enabled:o}=s;(l||"2d"===e?.type&&e.grid)&&this._startLoadGrid();const a=this._gridLoadTask?.value,r=a&&"2d"===e?.type&&b(a,{snappingManager:i,snappingOptions:s,view:e,visibleElements:t.gridControlsElements});return b("calcite-block",{class:w.layerListBlock,collapsible:!0,disabled:!n||!o,expanded:l,heading:this.messages.gridOptionsHeading,key:"grid-block",onCalciteBlockClose:()=>this.gridOptionsOpen=!1,onCalciteBlockOpen:()=>this.gridOptionsOpen=!0},r??b("calcite-loader",{label:this.messagesCommon.loading,scale:"s",text:this.messagesCommon.loading}))}_startLoadGrid(){!this._gridLoadTask&&this.visibleElements.gridControls&&"2d"===this.view?.type&&(this._gridLoadTask=i(async()=>(await import("./GridControls.js")).default))}_renderLayerListItemCollection(e){const i=this._layerListFilter;return e.map(e=>{switch(i?y(e,i):null){case"children":{const t=e.children.filter(e=>!1!==y(e,i));return this._renderLayerListItemGroup(e,t)}case"self":case null:return this._renderLayerListItemOrGroup(e);case!1:return"self"===y(e.parent,i)?this._renderLayerListItemOrGroup(e):null}}).toArray().filter(t)}_renderToggleLayersButton(){if(!this.visibleElements.layerListToggleLayersButton)return null;const{viewModel:{allLayersEnabled:e},messages:t}=this,i=e?t.disableAllLayers:t.enableAllLayers;return b("calcite-button",{appearance:"transparent",class:w.layerListButton,label:i,name:"layer-toggle",onclick:this._onToggleLayersButtonClick},i)}_renderLayerListItemOrGroup(e){if(e.children.length)return this._renderLayerListItemGroup(e);const{messages:{untitledLayer:t}}=this,i=e.title||t,s=()=>{this.viewModel.toggleSnappingForLayers([e.layer?.id],"enabled"!==e.enabled)};return b("calcite-list-item",{class:w.layerListItem,key:`${this.id}-list-item-${e.uid}`,label:i,onCalciteListItemSelect:e=>{e.stopPropagation(),s()}},b("calcite-checkbox",{checked:"enabled"===e.enabled,slot:"actions-start",onCalciteCheckboxChange:s}))}_renderLayerListItemGroup(e,t){const{messages:i}=this,{children:s,title:l}=e,o=l||i.untitledLayer,a=l&&""!==l?l:n(),r=!!t?.length,d=t??s,p=()=>{this.viewModel.toggleSnappingForLayers(e.childLayerIds,"enabled"!==e.enabled)},c=d?.find(e=>!!e.children.length);return b("calcite-list-item",{class:w.layerListGroup,expanded:r,key:a,label:o,onCalciteListItemSelect:e=>{e.stopPropagation(),p()}},b("calcite-checkbox",{checked:"enabled"===e.enabled,indeterminate:"indeterminate"===e.enabled,slot:"actions-start",onCalciteCheckboxChange:p}),b("calcite-list",{displayMode:c?"nested":"flat",label:i?.snappingLayers,selectionMode:"none"},this._renderLayerListItemCollection(d)))}get _enabledToggleDisabled(){const e=this.snappingOptions;return e.enabledToggled||e.forceDisabled}get _secondaryElementsDisabled(){return this._enabledToggleDisabled||!this.snappingOptions.enabled}};e([o()],v.prototype,"_defaultViewModel",void 0),e([o()],v.prototype,"_layerListFilter",void 0),e([o()],v.prototype,"_gridLoadTask",void 0),e([o()],v.prototype,"_openAndReady",null),e([o()],v.prototype,"label",null),e([o({type:Boolean,nonNullable:!0})],v.prototype,"layerListOpen",void 0),e([o({type:Boolean,nonNullable:!0})],v.prototype,"gridOptionsOpen",void 0),e([o(),m("geoscene/widgets/support/SnappingControls/t9n/SnappingControls")],v.prototype,"messages",void 0),e([o(),m("geoscene/t9n/common")],v.prototype,"messagesCommon",void 0),e([o()],v.prototype,"snappingOptions",null),e([o()],v.prototype,"snappingManager",void 0),e([o()],v.prototype,"view",null),e([o()],v.prototype,"viewModel",null),e([o({type:_,nonNullable:!0})],v.prototype,"visibleElements",void 0),e([o()],v.prototype,"_enabledToggleDisabled",null),e([o()],v.prototype,"_secondaryElementsDisabled",null),v=e([a("geoscene.widgets.support.SnappingControls")],v);const f=v;export{f as default};
|
|
5
|
+
import{__decorate as e}from"tslib";import{isSome as t}from"../../core/arrayUtils.js";import{createTask as i}from"../../core/asyncUtils.js";import{destroyMaybe as s}from"../../core/maybe.js";import{watch as l}from"../../core/reactiveUtils.js";import{generateUID as n}from"../../core/uid.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import{subclass as a}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as d}from"./componentsUtils.js";import{globalCss as p}from"./globalCss.js";import{loadLabeledSwitchComponents as c,LabeledSwitch as g}from"./LabeledSwitch.js";import{setFocus as h}from"./widgetUtils.js";import{messageBundle as m}from"./decorators/messageBundle.js";import{tsx as b}from"./jsxFactory.js";import"@arcgis/toolkit/dom";import u from"./SnappingControls/SnappingControlsViewModel.js";import{itemTitleMatchesFilter as y}from"./SnappingControls/snappingLayerListUtils.js";import _ from"./SnappingControls/VisibleElements.js";const L="geoscene-snapping-controls",w={base:L,container:`${L}__container`,toggleBlock:`${L}__toggle-block`,layerListBlock:`${L}__layer-list-block`,layerList:`${L}__layer-list`,layerListFilter:`${L}__layer-list__filter`,layerListButton:`${L}__layer-list__button`,layerListItem:`${L}__layer-list__item`,layerListGroup:`${L}__layer-list__group`,nestedContainer:`${L}__nested-container`};let v=class extends r{constructor(e,t){super(e,t),this._defaultViewModel=null,this._layerListFilter=null,this._gridLoadTask=null,this.layerListOpen=!0,this.gridOptionsOpen=!1,this.messages=null,this.messagesCommon=null,this.snappingManager=null,this.visibleElements=new _,this._enableSnappingSwitchChange=e=>{this.snappingOptions.enabled=e},this._featureEnabledSwitchChange=e=>{this.snappingOptions.featureEnabled=e},this._gridEnabledSwitchChange=e=>{this.snappingOptions.gridEnabled=e,e&&this._startLoadGrid()},this._selfEnabledSwitchChange=e=>{this.snappingOptions.selfEnabled=e},this._onToggleLayersButtonClick=e=>{this.viewModel.toggleSnappingForAllLayers(!this.viewModel.allLayersEnabled),h(e.target)};const{snappingOptions:i,view:s,viewModel:l}=e;this.viewModel=l??(this._defaultViewModel=new u({snappingOptions:i,view:s}))}normalizeCtorArgs(e){const{snappingOptions:t,view:i,viewModel:s,...l}=e;return l}destroy(){this.viewModel!==this._defaultViewModel&&(this._defaultViewModel=s(this._defaultViewModel))}loadDependencies(){return Promise.all([d({block:()=>import("@geoscene/calcite-components/dist/components/calcite-block"),button:()=>import("@geoscene/calcite-components/dist/components/calcite-button"),input:()=>import("@geoscene/calcite-components/dist/components/calcite-input"),list:()=>import("@geoscene/calcite-components/dist/components/calcite-list"),"list-item":()=>import("@geoscene/calcite-components/dist/components/calcite-list-item"),checkbox:()=>import("@geoscene/calcite-components/dist/components/calcite-checkbox"),loader:()=>import("@geoscene/calcite-components/dist/components/calcite-loader")}),c()])}initialize(){this.addHandles(l(()=>"2d"===this.view?.type&&!!this.view.grid,e=>{this.visibleElements.gridControls&&(this.snappingOptions.gridEnabled=e)}))}get _openAndReady(){return this.gridOptionsOpen&&this.snappingOptions.gridEnabled&&this.snappingOptions.enabled}get icon(){return"snap-to-point"}set icon(e){this._overrideIfSome("icon",e)}get label(){return this.messages?.widgetLabel??""}set label(e){this._overrideIfSome("label",e)}get snappingOptions(){return this.viewModel.snappingOptions}set snappingOptions(e){this.viewModel.snappingOptions=e}get view(){return this.viewModel.view}set view(e){this.viewModel.view=e}set viewModel(e){e!==this._get("viewModel")&&(null!=this._defaultViewModel&&this._defaultViewModel===e||(this._defaultViewModel=s(this._defaultViewModel)),this._set("viewModel",e))}render(){const{label:e}=this;return b("div",{"aria-label":e,class:this.classes(w.base,p.widget)},b("div",{class:w.container},this._renderContent()))}_renderContent(){return[this._renderToggles(),this._renderLayerList(),"2d"===this.view?.type&&this.visibleElements.gridControls?this._renderGridOptions():null]}_renderToggles(){const{visibleElements:e,view:i}=this,s=[e.selfEnabledToggle?this._renderSelfEnabledToggle():null,e.featureEnabledToggle?this._renderFeatureEnabledToggle():null,e.gridEnabledToggle&&"2d"===i?.type?this._renderGridEnabledToggle():null].filter(t),l=[e.enabledToggle?this._renderEnabledToggle():null,s.length>0?b("div",{class:w.nestedContainer},s):null].filter(t);return 0===l.length?null:b("calcite-block",{class:w.toggleBlock,expanded:!0,heading:e.header?this.label:"",key:"toggle-block",label:this.label},l)}_renderEnabledToggle(){return b(g,{checked:this.viewModel.snappingOptions.enabled,disabled:this._enabledToggleDisabled,key:`${this.id}__enabled-toggle`,label:this.messages.enableSnapping,onChange:this._enableSnappingSwitchChange})}_renderSelfEnabledToggle(){return b(g,{checked:this.viewModel.snappingOptions.selfEnabled,disabled:this._secondaryElementsDisabled,key:`${this.id}__self-enabled-toggle`,label:this.messages.geometryGuides,onChange:this._selfEnabledSwitchChange})}_renderFeatureEnabledToggle(){return b(g,{checked:this.viewModel.snappingOptions.featureEnabled,disabled:this._secondaryElementsDisabled,key:`${this.id}__feature-enabled-toggle`,label:this.messages.featureToFeature,onChange:this._featureEnabledSwitchChange})}_renderGridEnabledToggle(){return b(g,{checked:this.viewModel.snappingOptions.gridEnabled,disabled:this._secondaryElementsDisabled,key:`${this.id}__grid-enabled-toggle`,label:this.messages.grid,onChange:this._gridEnabledSwitchChange})}_renderLayerList(){if(!this.visibleElements.layerList)return null;const{messages:e,viewModel:t}=this,i=t.layerListViewModel.operationalItems.length>9?b("calcite-input",{class:w.layerListFilter,clearable:!0,placeholder:e?.searchLayers,onCalciteInputInput:({currentTarget:{value:e}})=>{this._layerListFilter=""===e?null:new RegExp(e,"i")}}):null,s=this._secondaryElementsDisabled,l=this.layerListOpen&&!s,n=t.layerListViewModel.operationalItems?.find(e=>!!e.children.length);return b("calcite-block",{class:w.layerListBlock,collapsible:!0,disabled:this._secondaryElementsDisabled,expanded:l,heading:e.snappingLayers,key:"list-block",onCalciteBlockToggle:e=>this.layerListOpen=e.currentTarget.expanded},i,this._renderToggleLayersButton(),b("calcite-list",{class:w.layerList,displayMode:n?"nested":"flat",label:e?.snappingLayers,selectionMode:"none"},this._renderLayerListItemCollection(t.layerListViewModel.operationalItems)))}_renderGridOptions(){const{view:e,visibleElements:t,snappingManager:i,snappingOptions:s,_openAndReady:l}=this,{gridEnabled:n,enabled:o}=s;(l||"2d"===e?.type&&e.grid)&&this._startLoadGrid();const a=this._gridLoadTask?.value,r=a&&"2d"===e?.type&&b(a,{snappingManager:i,snappingOptions:s,view:e,visibleElements:t.gridControlsElements});return b("calcite-block",{class:w.layerListBlock,collapsible:!0,disabled:!n||!o,expanded:l,heading:this.messages.gridOptionsHeading,key:"grid-block",onCalciteBlockClose:()=>this.gridOptionsOpen=!1,onCalciteBlockOpen:()=>this.gridOptionsOpen=!0},r??b("calcite-loader",{label:this.messagesCommon.loading,scale:"s",text:this.messagesCommon.loading}))}_startLoadGrid(){!this._gridLoadTask&&this.visibleElements.gridControls&&"2d"===this.view?.type&&(this._gridLoadTask=i(async()=>(await import("./GridControls.js")).default))}_renderLayerListItemCollection(e){const i=this._layerListFilter;return e.map(e=>{switch(i?y(e,i):null){case"children":{const t=e.children.filter(e=>!1!==y(e,i));return this._renderLayerListItemGroup(e,t)}case"self":case null:return this._renderLayerListItemOrGroup(e);case!1:return"self"===y(e.parent,i)?this._renderLayerListItemOrGroup(e):null}}).toArray().filter(t)}_renderToggleLayersButton(){if(!this.visibleElements.layerListToggleLayersButton)return null;const{viewModel:{allLayersEnabled:e},messages:t}=this,i=e?t.disableAllLayers:t.enableAllLayers;return b("calcite-button",{appearance:"transparent",class:w.layerListButton,label:i,name:"layer-toggle",onclick:this._onToggleLayersButtonClick},i)}_renderLayerListItemOrGroup(e){if(e.children.length)return this._renderLayerListItemGroup(e);const{messages:{untitledLayer:t}}=this,i=e.title||t,s=()=>{this.viewModel.toggleSnappingForLayers([e.layer?.id],"enabled"!==e.enabled)};return b("calcite-list-item",{class:w.layerListItem,key:`${this.id}-list-item-${e.uid}`,label:i,onCalciteListItemSelect:e=>{e.stopPropagation(),s()}},b("calcite-checkbox",{checked:"enabled"===e.enabled,slot:"actions-start",onCalciteCheckboxChange:s}))}_renderLayerListItemGroup(e,t){const{messages:i}=this,{children:s,title:l}=e,o=l||i.untitledLayer,a=l&&""!==l?l:n(),r=!!t?.length,d=t??s,p=()=>{this.viewModel.toggleSnappingForLayers(e.childLayerIds,"enabled"!==e.enabled)},c=d?.find(e=>!!e.children.length);return b("calcite-list-item",{class:w.layerListGroup,expanded:r,key:a,label:o,onCalciteListItemSelect:e=>{e.stopPropagation(),p()}},b("calcite-checkbox",{checked:"enabled"===e.enabled,indeterminate:"indeterminate"===e.enabled,slot:"actions-start",onCalciteCheckboxChange:p}),b("calcite-list",{displayMode:c?"nested":"flat",label:i?.snappingLayers,selectionMode:"none"},this._renderLayerListItemCollection(d)))}get _enabledToggleDisabled(){const e=this.snappingOptions;return e.enabledToggled||e.forceDisabled}get _secondaryElementsDisabled(){return this._enabledToggleDisabled||!this.snappingOptions.enabled}};e([o()],v.prototype,"_defaultViewModel",void 0),e([o()],v.prototype,"_layerListFilter",void 0),e([o()],v.prototype,"_gridLoadTask",void 0),e([o()],v.prototype,"_openAndReady",null),e([o()],v.prototype,"label",null),e([o({type:Boolean,nonNullable:!0})],v.prototype,"layerListOpen",void 0),e([o({type:Boolean,nonNullable:!0})],v.prototype,"gridOptionsOpen",void 0),e([o(),m("geoscene/widgets/support/SnappingControls/t9n/SnappingControls")],v.prototype,"messages",void 0),e([o(),m("geoscene/t9n/common")],v.prototype,"messagesCommon",void 0),e([o()],v.prototype,"snappingOptions",null),e([o()],v.prototype,"snappingManager",void 0),e([o()],v.prototype,"view",null),e([o()],v.prototype,"viewModel",null),e([o({type:_,nonNullable:!0})],v.prototype,"visibleElements",void 0),e([o()],v.prototype,"_enabledToggleDisabled",null),e([o()],v.prototype,"_secondaryElementsDisabled",null),v=e([a("geoscene.widgets.support.SnappingControls")],v);const f=v;export{f as default};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as t}from"tslib";import{property as e}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import s from"../Widget.js";import{loadCalciteComponents as i}from"./componentsUtils.js";import{getTimezoneInfos as n}from"./timeWidgetUtils.js";import"./widgetUtils.js";import{messageBundle as r}from"./decorators/messageBundle.js";import{tsx as p}from"./jsxFactory.js";import"@arcgis/toolkit/dom";const c="geoscene-timezone-picker",d={base:c,trigger:`${c}__trigger`,itemTitle:`${c}__item-title`,itemDescription:`${c}__item_description`};let l=class extends s{constructor(t,e){super(t,e),this.disabled=!1,this.value=null,this.onChange=null,this.open=!1,this.onOpen=null,this.onClose=null,this._selectedId=null,this._onOpen=()=>{this.open=!0,this.onOpen?.()},this._onClose=()=>{this.open=!1,this.onClose?.()},this._killEvent=t=>(t.stopPropagation(),!0),this._onChange=t=>{const e=t.target.selectedItems?.[0].getAttribute("data-id"),o=a(this._gmtOffsets,e)?.utcOffset;null!=o&&(this._selectedId=e,this.onChange?.(o))}}loadDependencies(){return i({button:()=>import("@
|
|
5
|
+
import{__decorate as t}from"tslib";import{property as e}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as o}from"../../core/accessorSupport/decorators/subclass.js";import s from"../Widget.js";import{loadCalciteComponents as i}from"./componentsUtils.js";import{getTimezoneInfos as n}from"./timeWidgetUtils.js";import"./widgetUtils.js";import{messageBundle as r}from"./decorators/messageBundle.js";import{tsx as p}from"./jsxFactory.js";import"@arcgis/toolkit/dom";const c="geoscene-timezone-picker",d={base:c,trigger:`${c}__trigger`,itemTitle:`${c}__item-title`,itemDescription:`${c}__item_description`};let l=class extends s{constructor(t,e){super(t,e),this.disabled=!1,this.value=null,this.onChange=null,this.open=!1,this.onOpen=null,this.onClose=null,this._selectedId=null,this._onOpen=()=>{this.open=!0,this.onOpen?.()},this._onClose=()=>{this.open=!1,this.onClose?.()},this._killEvent=t=>(t.stopPropagation(),!0),this._onChange=t=>{const e=t.target.selectedItems?.[0].getAttribute("data-id"),o=a(this._gmtOffsets,e)?.utcOffset;null!=o&&(this._selectedId=e,this.onChange?.(o))}}loadDependencies(){return i({button:()=>import("@geoscene/calcite-components/dist/components/calcite-button"),dropdown:()=>import("@geoscene/calcite-components/dist/components/calcite-dropdown"),"dropdown-group":()=>import("@geoscene/calcite-components/dist/components/calcite-dropdown-group"),"dropdown-item":()=>import("@geoscene/calcite-components/dist/components/calcite-dropdown-item")})}render(){const t=this._messages;if(!t)return p("div",{class:d.base,key:"empty"});const e=this._selectedItem,o=g(e);return p("div",{class:d.base,key:"container",onpointerdown:this._killEvent},p("calcite-dropdown",{disabled:this.disabled,open:this.open,overlayPositioning:"fixed",placement:"bottom-end",scale:"s",onCalciteDropdownClose:this._onClose,onCalciteDropdownOpen:this._onOpen,onCalciteDropdownSelect:this._onChange},p("calcite-button",{appearance:"transparent",class:d.trigger,"data-testid":"timezone-picker-button",disabled:this.disabled,key:"trigger",kind:"neutral",scale:"s",slot:"trigger",title:t.chooseTimezone},e?.short??""),p("calcite-dropdown-group",{selectionMode:"single"},this._gmtOffsets.map(t=>{const e=g(t);return p("calcite-dropdown-item",{"data-id":e,"data-testid":e,key:e,selected:o===e},p("div",{class:d.itemTitle,key:"title"},t.shortWithUTC),p("div",{class:d.itemDescription,key:"description"},t.long))}))))}get _gmtOffsets(){const t=this._messages;return t?n(t):[]}get _selectedItem(){const t=this._gmtOffsets,e=this.value,o=a(t,this._selectedId);return o?.utcOffset===e?o:m(t,e)}};function a(t,e){return t.find(t=>g(t)===e)}function m(t,e){return t.find(t=>t.utcOffset===e)}function g(t){return t?`${t.utcOffset}-${t.long}`:void 0}t([e()],l.prototype,"disabled",void 0),t([e()],l.prototype,"value",void 0),t([e()],l.prototype,"onChange",void 0),t([e()],l.prototype,"open",void 0),t([e()],l.prototype,"onOpen",void 0),t([e()],l.prototype,"onClose",void 0),t([e(),r("geoscene/widgets/support/t9n/timezone")],l.prototype,"_messages",void 0),t([e()],l.prototype,"_gmtOffsets",null),t([e()],l.prototype,"_selectedItem",null),t([e()],l.prototype,"_selectedId",void 0),l=t([o("geoscene.widgets.support.TimezonePicker")],l);export{l as TimezonePicker,d as css};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright GeoScene, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.geoscene.cn/4.34/geoscene/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{isMeasurementSystem as t}from"../../core/unitUtils.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as c}from"./componentsUtils.js";import"./widgetUtils.js";import{messageBundle as i}from"./decorators/messageBundle.js";import{tsx as l}from"./jsxFactory.js";import"@arcgis/toolkit/dom";const a="geoscene-unit-select",p={base:a,label:`${a}__label`,select:`${a}__select`};let n=class extends r{constructor(e,t){super(e,t),this._onSelectChange=e=>{this.onChange(e.currentTarget.value)}}loadDependencies(){return c({label:()=>import("@
|
|
5
|
+
import{__decorate as e}from"tslib";import{isMeasurementSystem as t}from"../../core/unitUtils.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/has.js";import"../../core/Logger.js";import"../../core/RandomLCG.js";import{subclass as s}from"../../core/accessorSupport/decorators/subclass.js";import r from"../Widget.js";import{loadCalciteComponents as c}from"./componentsUtils.js";import"./widgetUtils.js";import{messageBundle as i}from"./decorators/messageBundle.js";import{tsx as l}from"./jsxFactory.js";import"@arcgis/toolkit/dom";const a="geoscene-unit-select",p={base:a,label:`${a}__label`,select:`${a}__select`};let n=class extends r{constructor(e,t){super(e,t),this._onSelectChange=e=>{this.onChange(e.currentTarget.value)}}loadDependencies(){return c({label:()=>import("@geoscene/calcite-components/dist/components/calcite-label"),option:()=>import("@geoscene/calcite-components/dist/components/calcite-option"),select:()=>import("@geoscene/calcite-components/dist/components/calcite-select")})}render(){const{messages:e,options:o,selectLabel:s,value:r,_onSelectChange:c}=this;return l("div",{class:p.base,key:"units"},l("calcite-label",{class:p.label},s,l("calcite-select",{class:p.select,label:s,onCalciteSelectChange:c},o.map(o=>l("calcite-option",{key:o,selected:o===r,value:o},t(o)?e.systems[o]:e.units[o]?.pluralCapitalized)))))}};e([o()],n.prototype,"options",void 0),e([o()],n.prototype,"onChange",void 0),e([o()],n.prototype,"selectLabel",void 0),e([o()],n.prototype,"value",void 0),e([o(),i("geoscene/core/t9n/Units")],n.prototype,"messages",void 0),n=e([s("geoscene.widgets.support.UnitSelect")],n);export{n as UnitSelect};
|