@arcgis/core 4.28.0-next.20230708 → 4.28.0-next.20230711

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/assets/esri/core/workers/RemoteClient.js +1 -1
  2. package/assets/esri/core/workers/chunks/{9e5f59a8e8f12cd9e5e0.js → 8faf88599f86ee276185.js} +1 -1
  3. package/assets/esri/core/workers/chunks/ddea45acae89759e57fa.js +1 -0
  4. package/assets/esri/core/workers/chunks/{2c2cab197c47f080772a.js → f5f0a5318337439d464e.js} +1 -1
  5. package/assets/esri/themes/base/widgets/_ElevationProfile.scss +0 -12
  6. package/assets/esri/themes/base/widgets/_Weather.scss +4 -0
  7. package/assets/esri/themes/dark/main.css +1 -1
  8. package/assets/esri/themes/light/main.css +1 -1
  9. package/assets/esri/themes/light/view.css +1 -1
  10. package/chunks/Button.js +1 -1
  11. package/chunks/LineSeries.js +5 -0
  12. package/chunks/Responsive.js +5 -0
  13. package/chunks/Theme.js +1 -1
  14. package/chunks/Tick.js +1 -1
  15. package/chunks/ar.js +1 -1
  16. package/chunks/ar2.js +1 -1
  17. package/chunks/bg_BG.js +1 -1
  18. package/chunks/bg_BG2.js +1 -1
  19. package/chunks/bs_BA.js +1 -1
  20. package/chunks/bs_BA2.js +1 -1
  21. package/chunks/ca_ES.js +1 -1
  22. package/chunks/ca_ES2.js +1 -1
  23. package/chunks/chartUtilsAm5.js +5 -0
  24. package/chunks/cs_CZ.js +1 -1
  25. package/chunks/cs_CZ2.js +1 -1
  26. package/chunks/da_DK.js +1 -1
  27. package/chunks/da_DK2.js +1 -1
  28. package/chunks/de_CH.js +1 -1
  29. package/chunks/de_CH2.js +1 -1
  30. package/chunks/de_DE.js +1 -1
  31. package/chunks/de_DE2.js +1 -1
  32. package/chunks/el_GR.js +1 -1
  33. package/chunks/el_GR2.js +1 -1
  34. package/chunks/en_CA.js +1 -1
  35. package/chunks/en_CA2.js +1 -1
  36. package/chunks/en_US.js +1 -1
  37. package/chunks/en_US2.js +1 -1
  38. package/chunks/es_ES.js +1 -1
  39. package/chunks/es_ES2.js +1 -1
  40. package/chunks/et_EE.js +1 -1
  41. package/chunks/et_EE2.js +1 -1
  42. package/chunks/fi_FI.js +1 -1
  43. package/chunks/fi_FI2.js +1 -1
  44. package/chunks/fr_FR.js +1 -1
  45. package/chunks/fr_FR2.js +1 -1
  46. package/chunks/he_IL.js +1 -1
  47. package/chunks/he_IL2.js +1 -1
  48. package/chunks/hr_HR.js +1 -1
  49. package/chunks/hr_HR2.js +1 -1
  50. package/chunks/hu_HU.js +1 -1
  51. package/chunks/hu_HU2.js +1 -1
  52. package/chunks/id_ID.js +1 -1
  53. package/chunks/id_ID2.js +1 -1
  54. package/chunks/it_IT.js +1 -1
  55. package/chunks/it_IT2.js +1 -1
  56. package/chunks/ja_JP.js +1 -1
  57. package/chunks/ja_JP2.js +1 -1
  58. package/chunks/ko_KR.js +1 -1
  59. package/chunks/ko_KR2.js +1 -1
  60. package/chunks/lt_LT.js +1 -1
  61. package/chunks/lt_LT2.js +1 -1
  62. package/chunks/lv_LV.js +1 -1
  63. package/chunks/lv_LV2.js +1 -1
  64. package/chunks/nb_NO.js +1 -1
  65. package/chunks/nb_NO2.js +1 -1
  66. package/chunks/nl_NL.js +1 -1
  67. package/chunks/nl_NL2.js +1 -1
  68. package/chunks/pl_PL.js +1 -1
  69. package/chunks/pl_PL2.js +1 -1
  70. package/chunks/pt_BR.js +1 -1
  71. package/chunks/pt_BR2.js +1 -1
  72. package/chunks/pt_PT.js +1 -1
  73. package/chunks/pt_PT2.js +1 -1
  74. package/chunks/ro_RO.js +1 -1
  75. package/chunks/ro_RO2.js +1 -1
  76. package/chunks/ru_RU.js +1 -1
  77. package/chunks/ru_RU2.js +1 -1
  78. package/chunks/sk_SK.js +1 -1
  79. package/chunks/sk_SK2.js +1 -1
  80. package/chunks/sl_SL.js +1 -1
  81. package/chunks/sl_SL2.js +1 -1
  82. package/chunks/sr_RS.js +1 -1
  83. package/chunks/sr_RS2.js +1 -1
  84. package/chunks/sv_SE.js +1 -1
  85. package/chunks/sv_SE2.js +1 -1
  86. package/chunks/th_TH.js +1 -1
  87. package/chunks/th_TH2.js +1 -1
  88. package/chunks/tr_TR.js +1 -1
  89. package/chunks/tr_TR2.js +1 -1
  90. package/chunks/uk_UA.js +1 -1
  91. package/chunks/uk_UA2.js +1 -1
  92. package/chunks/vi_VN.js +1 -1
  93. package/chunks/vi_VN2.js +1 -1
  94. package/chunks/zh_Hans.js +1 -1
  95. package/chunks/zh_Hans2.js +1 -1
  96. package/chunks/zh_Hant.js +1 -1
  97. package/chunks/zh_Hant2.js +1 -1
  98. package/interfaces.d.ts +12 -0
  99. package/layers/graphics/sources/FeatureLayerSource.js +1 -1
  100. package/layers/knowledgeGraph/SessionMemoryStorage.js +1 -1
  101. package/networks/Network.js +1 -1
  102. package/networks/UtilityNetwork.js +1 -1
  103. package/package.json +1 -1
  104. package/rest/networks/queryAssociations.js +1 -1
  105. package/rest/networks/queryNamedTraceConfigurations.js +1 -1
  106. package/rest/networks/support/QueryAssociationsParameters.js +1 -1
  107. package/rest/networks/support/QueryNamedTraceConfigurationsParameters.js +1 -1
  108. package/rest/networks/support/SynthesizeAssociationGeometriesParameters.js +1 -1
  109. package/rest/networks/synthesizeAssociationGeometries.js +1 -1
  110. package/rest/support/meshFeatureSet.js +1 -1
  111. package/support/revision.js +1 -1
  112. package/views/2d/engine/webgl/Painter.js +1 -1
  113. package/views/3d/environment/CloudsData.js +1 -1
  114. package/views/3d/environment/CloudsGenerator.js +1 -1
  115. package/views/3d/environment/CloudsParameters.js +5 -0
  116. package/views/3d/environment/EnvironmentRenderer.js +1 -1
  117. package/views/3d/environment/Precipitation.js +1 -1
  118. package/views/3d/environment/weather.js +1 -1
  119. package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +9 -9
  120. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  121. package/widgets/Editor/Edits.js +1 -1
  122. package/widgets/Editor/UpdateRecordWorkflow.js +1 -1
  123. package/widgets/Editor.js +1 -1
  124. package/widgets/ElevationProfile/components/LegendItem.js +1 -1
  125. package/widgets/ElevationProfile/css.js +1 -1
  126. package/widgets/ElevationProfile/support/chartUtils.js +1 -1
  127. package/widgets/ElevationProfile.js +1 -1
  128. package/widgets/Feature/FeatureMedia/chartCommon.js +1 -1
  129. package/widgets/Feature/FeatureMedia/pieChart.js +1 -1
  130. package/widgets/Feature/FeatureMedia/xyChart.js +1 -1
  131. package/widgets/Feature/FeatureMedia.js +1 -1
  132. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  133. package/widgets/Weather/WeatherViewModel.js +1 -1
  134. package/widgets/Weather/css.js +1 -1
  135. package/widgets/Weather.js +1 -1
  136. package/widgets/support/chartUtils.js +1 -1
  137. package/widgets/support/chartUtilsAm5.js +1 -1
  138. package/assets/esri/core/workers/chunks/0f57b8d4fa3afb296392.js +0 -1
  139. package/views/3d/environment/CloudsCompositionParameters.js +0 -5
  140. package/views/3d/environment/weatherUtils.js +0 -5
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{_ as t}from"../chunks/tslib.es6.js";import{createTask as e}from"../core/asyncUtils.js";import{destroyMaybe as s,abortMaybe as i}from"../core/maybe.js";import{memoize as r}from"../core/memoize.js";import{createAbortError as n}from"../core/promiseUtils.js";import{watch as o,initial as a}from"../core/reactiveUtils.js";import{property as l}from"../core/accessorSupport/decorators/property.js";import"../core/accessorSupport/ensureType.js";import"../core/arrayUtils.js";import"../core/has.js";import{subclass as c}from"../core/accessorSupport/decorators/subclass.js";import h from"./Widget.js";import{CSS as d}from"./ElevationProfile/css.js";import p from"./ElevationProfile/ElevationProfileViewModel.js";import u from"./ElevationProfile/ElevationProfileVisibleElements.js";import{Legend as m}from"./ElevationProfile/components/Legend.js";import{SettingsButton as _}from"./ElevationProfile/components/SettingsButton.js";import{createChart as C}from"./ElevationProfile/support/chartUtils.js";import{ElevationProfileErrorState as v,getConfig as g,ElevationProfileState as f}from"./ElevationProfile/support/constants.js";import{loadCalciteComponents as y}from"./support/componentsUtils.js";import{onResize as w}from"./support/widgetUtils.js";import{messageBundle as b}from"./support/decorators/messageBundle.js";import{tsx as k,tsxFragment as S}from"./support/jsxFactory.js";var B;!function(t){t.Sketch="sketch",t.SketchCancel="sketch-cancel",t.SketchDone="sketch-done",t.Select="select",t.SelectCancel="select-cancel"}(B||(B={}));const M=[{type:B.Select},{type:B.Sketch}],P={[v.None]:null,[v.NoValidInput]:"noProfile",[v.NoVisibleProfiles]:"noProfile",[v.RefinedButNoChartData]:"noProfile",[v.TooComplex]:"tooComplex",[v.UnknownError]:"unknown",[v.InvalidGeometry]:"invalidGeometry",[v.InvalidElevationInfo]:"invalidElevationInfo"},E=Symbol("resize-observer-handle");let j=class extends h{constructor(t,e){super(t,e),this.viewModel=null,this.visibleElements=new u,this.iconClass=d.widgetIcon,this.icon=null,this.messages=null,this.messagesCommon=null,this.messagesUnits=null,this._chartContainer=null,this._chart=null,this._chartInitTask=null,this._chartIsRefined=!1,this._width=0,this._zoomOutButtonVisible=!1,this._getChartUpdateParamsMemoized=r(((t,e,s,i)=>({chart:t,data:e,stationary:s,messages:i}))),this._getDetailsPropsMemoized=r(((t,e,s)=>({effectiveUnits:t,messages:e,profiles:s}))),this._onZoomOutButtonClick=()=>{this._chart?.zoomOut()},this._onClearButtonClick=()=>{this.viewModel.clear()},t?.viewModel||(this._defaultViewModel=new p({view:t?.view}),this.viewModel=this._defaultViewModel)}loadDependencies(){return y({action:()=>import("@esri/calcite-components/dist/components/calcite-action.js"),button:()=>import("@esri/calcite-components/dist/components/calcite-button.js"),loader:()=>import("@esri/calcite-components/dist/components/calcite-loader.js")})}initialize(){this._legend=new m(this._legendProps),this._settingsButton=new _(this._settingsButtonProps),this.addHandles([o((()=>this._legendProps),(t=>this._legend.set(t))),o((()=>this._settingsButtonProps),(t=>this._settingsButton.set(t)))])}postInitialize(){this.addHandles([o((()=>({container:this._chartContainer,width:this._width})),(({container:t,width:e})=>{this._destroyChart(),null!=t&&e>0&&this._initializeChart(t)}),a),o((()=>this._chartUpdateParams),(()=>this._updateChart(this._chartUpdateParams)),a)])}destroy(){this._destroyChart(),null!=this._defaultViewModel&&this.viewModel!==this._defaultViewModel&&this._defaultViewModel.destroy(),this._legend=s(this._legend),this._settingsButton=s(this._settingsButton)}get view(){return this.viewModel.view}set view(t){this.viewModel.view=t}get input(){return this.viewModel.input}set input(t){this.viewModel.input=t}get profiles(){return this.viewModel.profiles}set profiles(t){this.viewModel.profiles=t}get unitOptions(){return this.viewModel.unitOptions}set unitOptions(t){this.viewModel.unitOptions=t}get unit(){return this.viewModel.unit}set unit(t){this.viewModel.unit=t}get geodesicDistanceThreshold(){return this.viewModel.geodesicDistanceThreshold}set geodesicDistanceThreshold(t){this.viewModel.geodesicDistanceThreshold=t}get label(){return this.messages?.widgetLabel??""}set label(t){this._overrideIfSome("label",t)}get visible(){return this.viewModel.visible}set visible(t){this.viewModel.visible=t}get _portrait(){return this._width<g().portraitModePixelBreakpoint}get _chartUpdateParams(){const t=this.view;return this._getChartUpdateParamsMemoized(this._chart,this.viewModel.chartData,null==t||t.stationary,this._chartMessages)}get _chartMessages(){return{...this.messagesUnits,...this.messages}}get _legendProps(){return this._getDetailsPropsMemoized(this.viewModel.effectiveUnits,this.messages,this._profilesArray)}get _profilesArray(){return this.profiles.toArray()}get _settingsButtonProps(){return{messages:this.messages,viewModel:this.viewModel,visibleElements:this.visibleElements}}render(){const{viewModel:t,visible:e}=this;return k("div",{key:this,class:this.classes({[d.base]:e,[d.esriWidget]:e,[d.esriWidgetDisabled]:e&&"disabled"===t.state,[d.portrait]:this._portrait,[d.refined]:1===t.progress}),"aria-label":this.messages.widgetLabel},k("div",{key:"content-wrapper",bind:this,afterCreate:this._onContentWrapperAfterCreate,afterRemoved:this._onContentWrapperRemoved},e&&this._renderContentForState()))}_renderContentForState(){switch(this.viewModel.state){case f.Ready:return this._renderContentForReadyState();case f.Selecting:return this._renderContentForSelectingState();case f.Creating:return this._renderContentForCreatingState();case f.Selected:return this._renderContentForSelectedState();case f.Created:return this._renderContentForCreatedState();case f.Disabled:return this._renderContentForReadyState()}}_renderContentForReadyState(){const{sketchButton:t,selectButton:e}=this.visibleElements,s=this.messages;let i;return i=t&&e?s.readyPrompt:t?s.readyPromptCreateOnly:e?s.readyPromptSelectOnly:s.errors?.noProfile,this._renderContent({prompt:i,chart:!1,actions:M})}_renderContentForSelectingState(){const t=this.view;if(null==t)return null;const e=this.messages[`selectingPrompt-${t.type}`];return this._renderContent({prompt:e,chart:!1,actions:[{type:B.SelectCancel}]})}_renderContentForCreatingState(){const{view:t,viewModel:e}=this;if(null==t)return null;const s=e.hasVertices?[{type:B.SketchCancel},{type:B.SketchDone,disabled:!e.tool.interaction.canStopCreating}]:[{type:B.Select},{type:B.Sketch,disabled:!0}];if(e.errorState===v.NoValidInput){const e=this.messages[`creatingPrompt-${t.type}`];return this._renderContent({chart:!1,actions:s,prompt:e})}const i=this._getErrorMessage();return i?this._renderContent({chart:!1,actions:s,prompt:i}):this._renderContent({chart:!0,actions:s})}_renderContentForSelectedState(){const t=this._getErrorMessage();return t?this._renderContent({chart:!1,actions:M,prompt:t}):this._renderContent({chart:!0,actions:M})}_renderContentForCreatedState(){const t=this._getErrorMessage();return t?this._renderContent({chart:!1,actions:M,prompt:t}):this._renderContent({chart:!0,actions:M})}_getErrorMessage(){const t=P[this.viewModel.errorState];return t?this.messages?.errors?.[t]:null}_renderContent(t){const e=null!=t.prompt?this._renderPrompt(t.prompt):t.chart&&this._renderChart(),s=null!=this.viewModel.input;return[k("header",{key:"header",class:d.header},this._zoomOutButtonVisible&&this._renderZoomOutButton(),this.visibleElements.clearButton&&s&&this._renderClearButton(),this.visibleElements.settingsButton&&this._settingsButton.render()),k("div",{class:d.mainContainer},e),this.visibleElements.legend&&this._legend.render(),this._renderActions(t)]}_renderZoomOutButton(){return k("calcite-action",{appearance:"transparent",class:d.zoomOutButton,icon:"magnifying-glass-minus",key:"zoom-out",onclick:this._onZoomOutButtonClick,scale:"s",text:this.messages.zoomOut,"data-testid":"zoom-out-button"})}_renderClearButton(){return k("calcite-action",{appearance:"transparent",class:d.clearButton,icon:"trash",key:"clear-profile",onclick:this._onClearButtonClick,scale:"s",text:this.messages.clearProfile,"data-testid":"clear-button"})}_renderPrompt(t){return[k("div",{key:"prompt-container",bind:this,class:d.promptContainer},k("p",null,t))]}_renderChart(){if(!this.visibleElements.chart)return k("div",{key:"empty-chart-container",class:d.chartContainer});const t=this._chartIsRefined||this._canRenderChart();if(!t)return k(S,null,this._renderSpinner({size:"large"}),k("div",{key:"chart-container-empty",class:d.chartContainer}));const{chartData:e,progress:s}=this.viewModel;return k(S,null,null!=e&&s>0&&s<1&&this._renderSpinner({size:t?"small":"large"}),k("div",{key:"chart-container",bind:this,class:d.chartContainer,afterCreate:this._onChartContainerAfterCreate,afterRemoved:this._onChartContainerRemoved}))}_renderSpinner(t){const e="small"===t.size;return k("calcite-loader",{afterCreate:this._onSpinnerAfterCreate,class:this.classes(d.chartSpinner,e&&d.chartSpinnerSmall),exitAnimation:this._onSpinnerExit,inline:e,key:"spinner",label:"",scale:"s"})}_onSpinnerAfterCreate(t){requestAnimationFrame((()=>t.classList.add(d.chartSpinnerVisible)))}_onSpinnerExit(t,e){t.classList.remove(d.chartSpinnerVisible),setTimeout(e,200)}_canRenderChart(){const t=this.viewModel.chartData;if(null==t)return!1;if(!this.viewModel.inputIsSketched)return t.refined;let e=0;for(const{samples:s}of t.lines)e+=null!=s?s.length:0;return t.refined||e<=g().largeChartSamples}_renderActions({actions:t}){const e=t.map((t=>{switch(t.type){case B.Sketch:return this.visibleElements.sketchButton&&this._renderAction({action:t,className:d.sketchButton,label:this.messages.sketchButtonLabel,onClick:this._onSketchButtonClick,primary:!0});case B.SketchCancel:return this.visibleElements.sketchButton&&this._renderAction({action:t,onClick:this._onCancelButtonClick,className:d.sketchCancelButton,label:this.messagesCommon.cancel,primary:!1});case B.SketchDone:return this.visibleElements.sketchButton&&this._renderAction({action:t,onClick:this._onDoneButtonClick,className:d.sketchDoneButton,label:this.messagesCommon.done,primary:!0});case B.Select:return this.visibleElements.selectButton&&this._renderAction({action:t,onClick:this._onSelectButtonClick,className:d.selectButton,label:this.messages.selectButtonLabel,primary:!1});case B.SelectCancel:return this.visibleElements.selectButton&&this._renderAction({action:t,onClick:this._onCancelButtonClick,className:d.selectCancelButton,label:this.messagesCommon.cancel,primary:!1})}})).filter(Boolean);return e.length?k("footer",{key:"footer",class:d.footer},e):null}_renderAction({action:t,className:e,label:s,onClick:i,primary:r}){return k("calcite-button",{appearance:r?"solid":"outline-fill",bind:this,class:this.classes(d.actionButton,e),disabled:t.disabled,key:`action-${t.type}`,onclick:i},s)}_onSketchButtonClick(){this.viewModel.start({mode:"sketch"})}_onSelectButtonClick(){this.viewModel.start({mode:"select"})}_onCancelButtonClick(){this.viewModel.cancel()}_onDoneButtonClick(){this.viewModel.stop()}_onContentWrapperAfterCreate(t){const e=w(t,(t=>{this._width=t.contentRect.width}));this.addHandles(e,E)}_onContentWrapperRemoved(){this.removeHandles(E)}_updateChart(t){const{data:e,chart:s,messages:i,stationary:r}=t;null!=s&&null!=i&&r&&this._canRenderChart()&&(s.update(t),this._chartIsRefined=null!=e&&e.refined)}_onChartContainerAfterCreate(t){this._chartContainer=t}_onChartContainerRemoved(){this._chartContainer=null}_initializeChart(t){i(this._chartInitTask),this._chartInitTask=e((async e=>{const i=await C({container:t,abortOptions:{signal:e},onRangeChange:(t,e)=>{this._zoomOutButtonVisible=1!==t||1!==e},onCursorPositionChange:t=>{this.viewModel.hoveredChartPosition=t}});if(e.aborted)throw s(i),n();this._chart=i,this._updateChart(this._chartUpdateParams)}))}_destroyChart(){this._chartInitTask=i(this._chartInitTask),this._chart=s(this._chart),this._chartIsRefined=!1}get test(){return{chart:this._chart}}};t([l({type:p})],j.prototype,"viewModel",void 0),t([l()],j.prototype,"view",null),t([l()],j.prototype,"input",null),t([l()],j.prototype,"profiles",null),t([l()],j.prototype,"unitOptions",null),t([l()],j.prototype,"unit",null),t([l()],j.prototype,"geodesicDistanceThreshold",null),t([l({type:u,nonNullable:!0})],j.prototype,"visibleElements",void 0),t([l()],j.prototype,"iconClass",void 0),t([l()],j.prototype,"icon",void 0),t([l()],j.prototype,"label",null),t([l()],j.prototype,"visible",null),t([l(),b("esri/widgets/ElevationProfile/t9n/ElevationProfile")],j.prototype,"messages",void 0),t([l(),b("esri/t9n/common")],j.prototype,"messagesCommon",void 0),t([l(),b("esri/core/t9n/Units")],j.prototype,"messagesUnits",void 0),t([l()],j.prototype,"_chartContainer",void 0),t([l()],j.prototype,"_chart",void 0),t([l()],j.prototype,"_chartInitTask",void 0),t([l()],j.prototype,"_chartIsRefined",void 0),t([l()],j.prototype,"_settingsButton",void 0),t([l()],j.prototype,"_legend",void 0),t([l()],j.prototype,"_width",void 0),t([l()],j.prototype,"_portrait",null),t([l()],j.prototype,"_zoomOutButtonVisible",void 0),t([l()],j.prototype,"_chartUpdateParams",null),t([l()],j.prototype,"_chartMessages",null),t([l()],j.prototype,"_legendProps",null),t([l()],j.prototype,"_profilesArray",null),t([l()],j.prototype,"_settingsButtonProps",null),j=t([c("esri.widgets.ElevationProfile")],j);const z=j;export{z as default};
5
+ import{_ as t}from"../chunks/tslib.es6.js";import{createTask as e}from"../core/asyncUtils.js";import{destroyMaybe as s,abortMaybe as i}from"../core/maybe.js";import{memoize as r}from"../core/memoize.js";import{throwIfAborted as n,createAbortError as o}from"../core/promiseUtils.js";import{watch as a,initial as l}from"../core/reactiveUtils.js";import{property as c}from"../core/accessorSupport/decorators/property.js";import"../core/accessorSupport/ensureType.js";import"../core/arrayUtils.js";import"../core/has.js";import{subclass as h}from"../core/accessorSupport/decorators/subclass.js";import d from"./Widget.js";import{CSS as p}from"./ElevationProfile/css.js";import u from"./ElevationProfile/ElevationProfileViewModel.js";import m from"./ElevationProfile/ElevationProfileVisibleElements.js";import{Legend as _}from"./ElevationProfile/components/Legend.js";import{SettingsButton as C}from"./ElevationProfile/components/SettingsButton.js";import{ElevationProfileErrorState as v,getConfig as g,ElevationProfileState as f}from"./ElevationProfile/support/constants.js";import{loadCalciteComponents as y}from"./support/componentsUtils.js";import{onResize as w}from"./support/widgetUtils.js";import{messageBundle as b}from"./support/decorators/messageBundle.js";import{tsx as k,tsxFragment as S}from"./support/jsxFactory.js";var B;!function(t){t.Sketch="sketch",t.SketchCancel="sketch-cancel",t.SketchDone="sketch-done",t.Select="select",t.SelectCancel="select-cancel"}(B||(B={}));const M=[{type:B.Select},{type:B.Sketch}],P={[v.None]:null,[v.NoValidInput]:"noProfile",[v.NoVisibleProfiles]:"noProfile",[v.RefinedButNoChartData]:"noProfile",[v.TooComplex]:"tooComplex",[v.UnknownError]:"unknown",[v.InvalidGeometry]:"invalidGeometry",[v.InvalidElevationInfo]:"invalidElevationInfo"},E=Symbol("resize-observer-handle");let j=class extends d{constructor(t,e){super(t,e),this.viewModel=null,this.visibleElements=new m,this.iconClass=p.widgetIcon,this.icon=null,this.messages=null,this.messagesCommon=null,this.messagesUnits=null,this._chartContainer=null,this._chart=null,this._chartInitTask=null,this._chartIsRefined=!1,this._width=0,this._zoomOutButtonVisible=!1,this._getChartUpdateParamsMemoized=r(((t,e,s,i)=>({chart:t,data:e,stationary:s,messages:i}))),this._getDetailsPropsMemoized=r(((t,e,s)=>({effectiveUnits:t,messages:e,profiles:s}))),this._onZoomOutButtonClick=()=>{this._chart?.zoomOut()},this._onClearButtonClick=()=>{this.viewModel.clear()},t?.viewModel||(this._defaultViewModel=new u({view:t?.view}),this.viewModel=this._defaultViewModel)}loadDependencies(){return y({action:()=>import("@esri/calcite-components/dist/components/calcite-action.js"),button:()=>import("@esri/calcite-components/dist/components/calcite-button.js"),loader:()=>import("@esri/calcite-components/dist/components/calcite-loader.js")})}initialize(){this._legend=new _(this._legendProps),this._settingsButton=new C(this._settingsButtonProps),this.addHandles([a((()=>this._legendProps),(t=>this._legend.set(t))),a((()=>this._settingsButtonProps),(t=>this._settingsButton.set(t)))])}postInitialize(){this.addHandles([a((()=>({container:this._chartContainer,width:this._width})),(({container:t,width:e})=>{this._destroyChart(),null!=t&&e>0&&this._initializeChart(t)}),l),a((()=>this._chartUpdateParams),(()=>this._updateChart(this._chartUpdateParams)),l)])}destroy(){this._destroyChart(),null!=this._defaultViewModel&&this.viewModel!==this._defaultViewModel&&this._defaultViewModel.destroy(),this._legend=s(this._legend),this._settingsButton=s(this._settingsButton)}get view(){return this.viewModel.view}set view(t){this.viewModel.view=t}get input(){return this.viewModel.input}set input(t){this.viewModel.input=t}get profiles(){return this.viewModel.profiles}set profiles(t){this.viewModel.profiles=t}get unitOptions(){return this.viewModel.unitOptions}set unitOptions(t){this.viewModel.unitOptions=t}get unit(){return this.viewModel.unit}set unit(t){this.viewModel.unit=t}get geodesicDistanceThreshold(){return this.viewModel.geodesicDistanceThreshold}set geodesicDistanceThreshold(t){this.viewModel.geodesicDistanceThreshold=t}get label(){return this.messages?.widgetLabel??""}set label(t){this._overrideIfSome("label",t)}get visible(){return this.viewModel.visible}set visible(t){this.viewModel.visible=t}get _portrait(){return this._width<g().portraitModePixelBreakpoint}get _chartUpdateParams(){const t=this.view;return this._getChartUpdateParamsMemoized(this._chart,this.viewModel.chartData,null==t||t.stationary,this._chartMessages)}get _chartMessages(){return{...this.messagesUnits,...this.messages}}get _legendProps(){return this._getDetailsPropsMemoized(this.viewModel.effectiveUnits,this.messages,this._profilesArray)}get _profilesArray(){return this.profiles.toArray()}get _settingsButtonProps(){return{messages:this.messages,viewModel:this.viewModel,visibleElements:this.visibleElements}}render(){const{viewModel:t,visible:e}=this;return k("div",{key:this,class:this.classes({[p.base]:e,[p.esriWidget]:e,[p.esriWidgetDisabled]:e&&"disabled"===t.state,[p.portrait]:this._portrait,[p.refined]:1===t.progress}),"aria-label":this.messages.widgetLabel},k("div",{key:"content-wrapper",bind:this,afterCreate:this._onContentWrapperAfterCreate,afterRemoved:this._onContentWrapperRemoved},e&&this._renderContentForState()))}_renderContentForState(){switch(this.viewModel.state){case f.Ready:return this._renderContentForReadyState();case f.Selecting:return this._renderContentForSelectingState();case f.Creating:return this._renderContentForCreatingState();case f.Selected:return this._renderContentForSelectedState();case f.Created:return this._renderContentForCreatedState();case f.Disabled:return this._renderContentForReadyState()}}_renderContentForReadyState(){const{sketchButton:t,selectButton:e}=this.visibleElements,s=this.messages;let i;return i=t&&e?s.readyPrompt:t?s.readyPromptCreateOnly:e?s.readyPromptSelectOnly:s.errors?.noProfile,this._renderContent({prompt:i,chart:!1,actions:M})}_renderContentForSelectingState(){const t=this.view;if(null==t)return null;const e=this.messages[`selectingPrompt-${t.type}`];return this._renderContent({prompt:e,chart:!1,actions:[{type:B.SelectCancel}]})}_renderContentForCreatingState(){const{view:t,viewModel:e}=this;if(null==t)return null;const s=e.hasVertices?[{type:B.SketchCancel},{type:B.SketchDone,disabled:!e.tool.interaction.canStopCreating}]:[{type:B.Select},{type:B.Sketch,disabled:!0}];if(e.errorState===v.NoValidInput){const e=this.messages[`creatingPrompt-${t.type}`];return this._renderContent({chart:!1,actions:s,prompt:e})}const i=this._getErrorMessage();return i?this._renderContent({chart:!1,actions:s,prompt:i}):this._renderContent({chart:!0,actions:s})}_renderContentForSelectedState(){const t=this._getErrorMessage();return t?this._renderContent({chart:!1,actions:M,prompt:t}):this._renderContent({chart:!0,actions:M})}_renderContentForCreatedState(){const t=this._getErrorMessage();return t?this._renderContent({chart:!1,actions:M,prompt:t}):this._renderContent({chart:!0,actions:M})}_getErrorMessage(){const t=P[this.viewModel.errorState];return t?this.messages?.errors?.[t]:null}_renderContent(t){const e=null!=t.prompt?this._renderPrompt(t.prompt):t.chart&&this._renderChart(),s=null!=this.viewModel.input;return[k("header",{key:"header",class:p.header},this._zoomOutButtonVisible&&this._renderZoomOutButton(),this.visibleElements.clearButton&&s&&this._renderClearButton(),this.visibleElements.settingsButton&&this._settingsButton.render()),k("div",{class:p.mainContainer},e),this.visibleElements.legend&&this._legend.render(),this._renderActions(t)]}_renderZoomOutButton(){return k("calcite-action",{appearance:"transparent",class:p.zoomOutButton,icon:"magnifying-glass-minus",key:"zoom-out",onclick:this._onZoomOutButtonClick,scale:"s",text:this.messages.zoomOut,"data-testid":"zoom-out-button"})}_renderClearButton(){return k("calcite-action",{appearance:"transparent",class:p.clearButton,icon:"trash",key:"clear-profile",onclick:this._onClearButtonClick,scale:"s",text:this.messages.clearProfile,"data-testid":"clear-button"})}_renderPrompt(t){return[k("div",{key:"prompt-container",bind:this,class:p.promptContainer},k("p",null,t))]}_renderChart(){if(!this.visibleElements.chart)return k("div",{key:"empty-chart-container",class:p.chartContainer});const t=this._chartIsRefined||this._canRenderChart();if(!t)return k(S,null,this._renderSpinner({size:"large"}),k("div",{key:"chart-container-empty",class:p.chartContainer}));const{chartData:e,progress:s}=this.viewModel;return k(S,null,null!=e&&s>0&&s<1&&this._renderSpinner({size:t?"small":"large"}),k("div",{key:"chart-container",bind:this,class:p.chartContainer,afterCreate:this._onChartContainerAfterCreate,afterRemoved:this._onChartContainerRemoved}))}_renderSpinner(t){const e="small"===t.size;return k("calcite-loader",{afterCreate:this._onSpinnerAfterCreate,class:this.classes(p.chartSpinner,e&&p.chartSpinnerSmall),exitAnimation:this._onSpinnerExit,inline:e,key:"spinner",label:"",scale:"s"})}_onSpinnerAfterCreate(t){requestAnimationFrame((()=>t.classList.add(p.chartSpinnerVisible)))}_onSpinnerExit(t,e){t.classList.remove(p.chartSpinnerVisible),setTimeout(e,200)}_canRenderChart(){const t=this.viewModel.chartData;if(null==t)return!1;if(!this.viewModel.inputIsSketched)return t.refined;let e=0;for(const{samples:s}of t.lines)e+=null!=s?s.length:0;return t.refined||e<=g().largeChartSamples}_renderActions({actions:t}){const e=t.map((t=>{switch(t.type){case B.Sketch:return this.visibleElements.sketchButton&&this._renderAction({action:t,className:p.sketchButton,label:this.messages.sketchButtonLabel,onClick:this._onSketchButtonClick,primary:!0});case B.SketchCancel:return this.visibleElements.sketchButton&&this._renderAction({action:t,onClick:this._onCancelButtonClick,className:p.sketchCancelButton,label:this.messagesCommon.cancel,primary:!1});case B.SketchDone:return this.visibleElements.sketchButton&&this._renderAction({action:t,onClick:this._onDoneButtonClick,className:p.sketchDoneButton,label:this.messagesCommon.done,primary:!0});case B.Select:return this.visibleElements.selectButton&&this._renderAction({action:t,onClick:this._onSelectButtonClick,className:p.selectButton,label:this.messages.selectButtonLabel,primary:!1});case B.SelectCancel:return this.visibleElements.selectButton&&this._renderAction({action:t,onClick:this._onCancelButtonClick,className:p.selectCancelButton,label:this.messagesCommon.cancel,primary:!1})}})).filter(Boolean);return e.length?k("footer",{key:"footer",class:p.footer},e):null}_renderAction({action:t,className:e,label:s,onClick:i,primary:r}){return k("calcite-button",{appearance:r?"solid":"outline-fill",bind:this,class:this.classes(p.actionButton,e),disabled:t.disabled,key:`action-${t.type}`,onclick:i},s)}_onSketchButtonClick(){this.viewModel.start({mode:"sketch"})}_onSelectButtonClick(){this.viewModel.start({mode:"select"})}_onCancelButtonClick(){this.viewModel.cancel()}_onDoneButtonClick(){this.viewModel.stop()}_onContentWrapperAfterCreate(t){const e=w(t,(t=>{this._width=t.contentRect.width}));this.addHandles(e,E)}_onContentWrapperRemoved(){this.removeHandles(E)}_updateChart(t){const{data:e,chart:s,messages:i,stationary:r}=t;null!=s&&null!=i&&r&&this._canRenderChart()&&(s.update(t),this._chartIsRefined=null!=e&&e.refined)}_onChartContainerAfterCreate(t){this._chartContainer=t}_onChartContainerRemoved(){this._chartContainer=null}_initializeChart(t){i(this._chartInitTask),this._chartInitTask=e((async e=>{const{createChart:i}=await import("./ElevationProfile/support/chartUtils.js");n(e);const r=await i({container:t,abortOptions:{signal:e},onRangeChange:(t,e)=>{this._zoomOutButtonVisible=1!==t||1!==e},onCursorPositionChange:t=>{this.viewModel.hoveredChartPosition=t}});if(e.aborted)throw s(r),o();this._chart=r,this._updateChart(this._chartUpdateParams)}))}_destroyChart(){this._chartInitTask=i(this._chartInitTask),this._chart=s(this._chart),this._chartIsRefined=!1}get test(){return{chart:this._chart}}};t([c({type:u})],j.prototype,"viewModel",void 0),t([c()],j.prototype,"view",null),t([c()],j.prototype,"input",null),t([c()],j.prototype,"profiles",null),t([c()],j.prototype,"unitOptions",null),t([c()],j.prototype,"unit",null),t([c()],j.prototype,"geodesicDistanceThreshold",null),t([c({type:m,nonNullable:!0})],j.prototype,"visibleElements",void 0),t([c()],j.prototype,"iconClass",void 0),t([c()],j.prototype,"icon",void 0),t([c()],j.prototype,"label",null),t([c()],j.prototype,"visible",null),t([c(),b("esri/widgets/ElevationProfile/t9n/ElevationProfile")],j.prototype,"messages",void 0),t([c(),b("esri/t9n/common")],j.prototype,"messagesCommon",void 0),t([c(),b("esri/core/t9n/Units")],j.prototype,"messagesUnits",void 0),t([c()],j.prototype,"_chartContainer",void 0),t([c()],j.prototype,"_chart",void 0),t([c()],j.prototype,"_chartInitTask",void 0),t([c()],j.prototype,"_chartIsRefined",void 0),t([c()],j.prototype,"_settingsButton",void 0),t([c()],j.prototype,"_legend",void 0),t([c()],j.prototype,"_width",void 0),t([c()],j.prototype,"_portrait",null),t([c()],j.prototype,"_zoomOutButtonVisible",void 0),t([c()],j.prototype,"_chartUpdateParams",null),t([c()],j.prototype,"_chartMessages",null),t([c()],j.prototype,"_legendProps",null),t([c()],j.prototype,"_profilesArray",null),t([c()],j.prototype,"_settingsButtonProps",null),j=t([h("esri.widgets.ElevationProfile")],j);const z=j;export{z as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{a3 as t,ak as e,a7 as i,aq as s,g as a,am as n,C as r,M as h,ad as o,a4 as l,R as d}from"../../../chunks/Theme.js";export{a6 as colorAm5}from"../../../chunks/Theme.js";import{R as u,B as m}from"../../../chunks/Button.js";export{T as TooltipAm5}from"../../../chunks/Tooltip.js";export{C as ColorSetAm5}from"../../../chunks/ColorSet.js";class g extends t{constructor(){super(...arguments),Object.defineProperty(this,"thumb",{enumerable:!0,configurable:!0,writable:!0,value:this._makeThumb()}),Object.defineProperty(this,"startGrip",{enumerable:!0,configurable:!0,writable:!0,value:this._makeButton()}),Object.defineProperty(this,"endGrip",{enumerable:!0,configurable:!0,writable:!0,value:this._makeButton()}),Object.defineProperty(this,"_thumbBusy",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_startDown",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_endDown",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_thumbDown",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_gripDown",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}_addOrientationClass(){this._settings.themeTags=e(this._settings.themeTags,["scrollbar",this._settings.orientation]),this._settings.background||(this._settings.background=u.new(this._root,{themeTags:e(this._settings.themeTags,["main","background"])}))}_makeButton(){return this.children.push(m.new(this._root,{themeTags:["resize","button",this.get("orientation")],icon:i.new(this._root,{themeTags:["icon"]})}))}_makeThumb(){return this.children.push(u.new(this._root,{themeTags:["thumb",this.get("orientation")]}))}_handleAnimation(t){t&&this._disposers.push(t.events.on("stopped",(()=>{this.setPrivateRaw("isBusy",!1),this._thumbBusy=!1})))}_afterNew(){this._addOrientationClass(),super._afterNew();const t=this.startGrip,e=this.endGrip,i=this.thumb,a=this.get("background");a&&this._disposers.push(a.events.on("click",(t=>{this.setPrivateRaw("isBusy",!0);const e=this._display.toLocal(t.point),s=this.width(),a=this.height(),n=this.get("orientation");let r,h,o;r="vertical"==n?(e.y-i.height()/2)/a:(e.x-i.width()/2)/s,"vertical"==n?(h=r*a,o="y"):(h=r*s,o="x");const l=this.get("animationDuration",0);l>0?(this._thumbBusy=!0,this._handleAnimation(this.thumb.animate({key:o,to:h,duration:l,easing:this.get("animationEasing")}))):(this.thumb.set(o,h),this._root.events.once("frameended",(()=>{this.setPrivateRaw("isBusy",!1)})))}))),this._disposers.push(i.events.on("dblclick",(t=>{if(!s(t.originalEvent,this))return;const e=this.get("animationDuration",0),i=this.get("animationEasing");this.animate({key:"start",to:0,duration:e,easing:i}),this.animate({key:"end",to:1,duration:e,easing:i})}))),this._disposers.push(t.events.on("pointerdown",(()=>{this.setPrivateRaw("isBusy",!0),this._startDown=!0,this._gripDown="start"}))),this._disposers.push(e.events.on("pointerdown",(()=>{this.setPrivateRaw("isBusy",!0),this._endDown=!0,this._gripDown="end"}))),this._disposers.push(i.events.on("pointerdown",(()=>{this.setPrivateRaw("isBusy",!0),this._thumbDown=!0,this._gripDown=void 0}))),this._disposers.push(t.events.on("globalpointerup",(()=>{this._startDown&&this.setPrivateRaw("isBusy",!1),this._startDown=!1}))),this._disposers.push(e.events.on("globalpointerup",(()=>{this._endDown&&this.setPrivateRaw("isBusy",!1),this._endDown=!1}))),this._disposers.push(i.events.on("globalpointerup",(()=>{this._thumbDown&&this.setPrivateRaw("isBusy",!1),this._thumbDown=!1}))),this._disposers.push(t.on("x",(()=>{this._updateThumb()}))),this._disposers.push(e.on("x",(()=>{this._updateThumb()}))),this._disposers.push(t.on("y",(()=>{this._updateThumb()}))),this._disposers.push(e.on("y",(()=>{this._updateThumb()}))),this._disposers.push(i.events.on("positionchanged",(()=>{this._updateGripsByThumb()}))),"vertical"==this.get("orientation")?(t.set("x",0),e.set("x",0),this._disposers.push(i.adapters.add("y",(t=>Math.max(Math.min(Number(t),this.height()-i.height()),0)))),this._disposers.push(i.adapters.add("x",(t=>this.width()/2))),this._disposers.push(t.adapters.add("x",(t=>this.width()/2))),this._disposers.push(e.adapters.add("x",(t=>this.width()/2))),this._disposers.push(t.adapters.add("y",(t=>Math.max(Math.min(Number(t),this.height()),0)))),this._disposers.push(e.adapters.add("y",(t=>Math.max(Math.min(Number(t),this.height()),0))))):(t.set("y",0),e.set("y",0),this._disposers.push(i.adapters.add("x",(t=>Math.max(Math.min(Number(t),this.width()-i.width()),0)))),this._disposers.push(i.adapters.add("y",(t=>this.height()/2))),this._disposers.push(t.adapters.add("y",(t=>this.height()/2))),this._disposers.push(e.adapters.add("y",(t=>this.height()/2))),this._disposers.push(t.adapters.add("x",(t=>Math.max(Math.min(Number(t),this.width()),0)))),this._disposers.push(e.adapters.add("x",(t=>Math.max(Math.min(Number(t),this.width()),0)))))}_updateChildren(){super._updateChildren(),(this.isDirty("end")||this.isDirty("start")||this._sizeDirty)&&this.updateGrips()}_changed(){if(super._changed(),this.isDirty("start")||this.isDirty("end")){const t="rangechanged";this.events.isEnabled(t)&&this.events.dispatch(t,{type:t,target:this,start:this.get("start",0),end:this.get("end",1),grip:this._gripDown})}}updateGrips(){const t=this.startGrip,e=this.endGrip,i=this.get("orientation"),s=this.height(),a=this.width();"vertical"==i?(t.set("y",s*this.get("start",0)),e.set("y",s*this.get("end",1))):(t.set("x",a*this.get("start",0)),e.set("x",a*this.get("end",1)));const n=this.getPrivate("positionTextFunction"),r=Math.round(100*this.get("start",0)),h=Math.round(100*this.get("end",0));let o,l;n?(o=n.call(this,this.get("start",0)),l=n.call(this,this.get("end",0))):(o=r+"%",l=h+"%"),t.set("ariaLabel",this._t("From %1",void 0,o)),t.set("ariaValueNow",""+r),t.set("ariaValueText",r+"%"),t.set("ariaValueMin","0"),t.set("ariaValueMax","100"),e.set("ariaLabel",this._t("To %1",void 0,l)),e.set("ariaValueNow",""+h),e.set("ariaValueText",h+"%"),e.set("ariaValueMin","0"),e.set("ariaValueMax","100")}_updateThumb(){const t=this.thumb,e=this.startGrip,i=this.endGrip,s=this.height(),n=this.width();let r=e.x(),h=i.x(),o=e.y(),l=i.y(),d=0,u=1;"vertical"==this.get("orientation")?a(o)&&a(l)&&(this._thumbBusy||t.isDragging()||(t.set("height",l-o),t.set("y",o)),d=o/s,u=l/s):a(r)&&a(h)&&(this._thumbBusy||t.isDragging()||(t.set("width",h-r),t.set("x",r)),d=r/n,u=h/n),!this.getPrivate("isBusy")||this.get("start")==d&&this.get("end")==u||(this.set("start",d),this.set("end",u));const m=this.getPrivate("positionTextFunction"),g=Math.round(100*this.get("start",0)),p=Math.round(100*this.get("end",0));let c,b;m?(c=m.call(this,this.get("start",0)),b=m.call(this,this.get("end",0))):(c=g+"%",b=p+"%"),t.set("ariaLabel",this._t("From %1 to %2",void 0,c,b)),t.set("ariaValueNow",""+g),t.set("ariaValueText",g+"%")}_updateGripsByThumb(){const t=this.thumb,e=this.startGrip,i=this.endGrip;if("vertical"==this.get("orientation")){const s=t.height();e.set("y",t.y()),i.set("y",t.y()+s)}else{const s=t.width();e.set("x",t.x()),i.set("x",t.x()+s)}}}Object.defineProperty(g,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Scrollbar"}),Object.defineProperty(g,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:t.classNames.concat([g.className])});const p=class extends n{setupDefaultRules(){super.setupDefaultRules(),this.rule("Component").setAll({interpolationDuration:600}),this.rule("Hierarchy").set("animationDuration",600),this.rule("Scrollbar").set("animationDuration",600),this.rule("Tooltip").set("animationDuration",300),this.rule("MapChart").set("animationDuration",1e3),this.rule("MapChart").set("wheelDuration",300),this.rule("Entity").setAll({stateAnimationDuration:600}),this.rule("Sprite").states.create("default",{stateAnimationDuration:600}),this.rule("Tooltip",["axis"]).setAll({animationDuration:200}),this.rule("WordCloud").set("animationDuration",500),this.rule("Polygon").set("animationDuration",600),this.rule("ArcDiagram").set("animationDuration",600)}};const c=class extends n{setupDefaultRules(){super.setupDefaultRules(),this.rule("InterfaceColors").setAll({stroke:r.fromHex(0),fill:r.fromHex(2829099),primaryButton:r.lighten(r.fromHex(6788316),-.2),primaryButtonHover:r.lighten(r.fromHex(6779356),-.2),primaryButtonDown:r.lighten(r.fromHex(6872181),-.2),primaryButtonActive:r.lighten(r.fromHex(6872182),-.2),primaryButtonText:r.fromHex(16777215),primaryButtonStroke:r.lighten(r.fromHex(6788316),-.2),secondaryButton:r.fromHex(3881787),secondaryButtonHover:r.lighten(r.fromHex(3881787),.1),secondaryButtonDown:r.lighten(r.fromHex(3881787),.15),secondaryButtonActive:r.lighten(r.fromHex(3881787),.2),secondaryButtonText:r.fromHex(12303291),secondaryButtonStroke:r.lighten(r.fromHex(3881787),-.2),grid:r.fromHex(12303291),background:r.fromHex(0),alternativeBackground:r.fromHex(16777215),text:r.fromHex(16777215),alternativeText:r.fromHex(0),disabled:r.fromHex(11382189),positive:r.fromHex(5288704),negative:r.fromHex(11730944)})}};let b=class extends n{constructor(){super(...arguments),Object.defineProperty(this,"responsiveRules",{enumerable:!0,configurable:!0,writable:!0,value:[]})}static widthXXS(t,e){return t<=b.XXS}static widthXS(t,e){return t<=b.XS}static widthS(t,e){return t<=b.S}static widthM(t,e){return t<=b.M}static widthL(t,e){return t<=b.L}static widthXL(t,e){return t<=b.XL}static widthXXL(t,e){return t<=b.XXL}static heightXXS(t,e){return e<=b.XXS}static heightXS(t,e){return e<=b.XS}static heightS(t,e){return e<=b.S}static heightM(t,e){return e<=b.M}static heightL(t,e){return e<=b.L}static heightXL(t,e){return e<=b.XL}static heightXXL(t,e){return e<=b.XXL}static isXXS(t,e){return t<=b.XXS&&e<=b.XXS}static isXS(t,e){return t<=b.XS&&e<=b.XS}static isS(t,e){return t<=b.S&&e<=b.S}static isM(t,e){return t<=b.M&&e<=b.M}static isL(t,e){return t<=b.L&&e<=b.L}static isXL(t,e){return t<=b.XL&&e<=b.XL}static isXXL(t,e){return t<=b.XXL&&e<=b.XXL}static maybeXXS(t,e){return t<=b.XXS||e<=b.XXS}static maybeXS(t,e){return t<=b.XS||e<=b.XS}static maybeS(t,e){return t<=b.S||e<=b.S}static maybeM(t,e){return t<=b.M||e<=b.M}static maybeL(t,e){return t<=b.L||e<=b.L}static maybeXL(t,e){return t<=b.XL||e<=b.XL}static maybeXXL(t,e){return t<=b.XXL||e<=b.XXL}static newEmpty(t){return new this(t,!0)}addRule(t){return t.name&&!t.template&&(t.template=this.rule(t.name,t.tags)),t._dp=new h([this._root._rootContainer.onPrivate("width",(e=>{this._isUsed()&&this._applyRule(t)})),this._root._rootContainer.onPrivate("height",(e=>{this._isUsed()&&this._applyRule(t)}))]),this.responsiveRules.push(t),this._applyRule(t),t}removeRule(t){o(this.responsiveRules,t),t._dp&&t._dp.dispose()}_isUsed(){return-1!==this._root._rootContainer.get("themes").indexOf(this)}_applyRule(t){const e=this._root._rootContainer.getPrivate("width"),i=this._root._rootContainer.getPrivate("height"),s=t.relevant.call(t,e,i),a=t.applied;s?a||(t.applied=!0,t.template&&t.settings&&t.template.setAll(t.settings),t.applying&&t.applying.call(t)):a&&(t.applied=!1,t.template&&t.template.removeAll(),t.removing&&t.removing.call(t))}setupDefaultRules(){super.setupDefaultRules();const t=t=>this.addRule(t);t({name:"Chart",relevant:b.widthXXS,settings:{paddingLeft:0,paddingRight:0}}),t({name:"Chart",relevant:b.heightXXS,settings:{paddingTop:0,paddingBottom:0}}),t({name:"Bullet",relevant:b.isXS,settings:{forceHidden:!0}}),t({name:"Legend",relevant:b.isXS,settings:{forceHidden:!0}}),t({name:"HeatLegend",tags:["vertical"],relevant:b.widthXS,settings:{forceHidden:!0}}),t({name:"HeatLegend",tags:["horizontal"],relevant:b.heightXS,settings:{forceHidden:!0}}),t({name:"Label",tags:["heatlegend","start"],relevant:b.maybeXS,settings:{forceHidden:!0}}),t({name:"Label",tags:["heatlegend","end"],relevant:b.maybeXS,settings:{forceHidden:!0}}),t({name:"Button",tags:["resize"],relevant:b.maybeXS,settings:{forceHidden:!0}}),t({name:"AxisRendererX",relevant:b.heightXS,settings:{inside:!0}}),t({name:"AxisRendererY",relevant:b.widthXS,settings:{inside:!0}}),t({name:"AxisRendererXLabel",relevant:b.heightXS,settings:{minPosition:.1,maxPosition:.9}}),t({name:"AxisLabel",tags:["y"],relevant:b.widthXS,settings:{centerY:l,maxPosition:.9}}),t({name:"AxisLabel",tags:["x"],relevant:b.heightXXS,settings:{forceHidden:!0}}),t({name:"AxisLabel",tags:["y"],relevant:b.widthXXS,settings:{forceHidden:!0}}),t({name:"AxisTick",tags:["x"],relevant:b.heightXS,settings:{inside:!0,minPosition:.1,maxPosition:.9}}),t({name:"AxisTick",tags:["y"],relevant:b.widthXXS,settings:{inside:!0,minPosition:.1,maxPosition:.9}}),t({name:"Grid",relevant:b.maybeXXS,settings:{forceHidden:!0}}),t({name:"RadialLabel",tags:["radial"],relevant:b.maybeXS,settings:{forceHidden:!0}}),t({name:"RadialLabel",tags:["circular"],relevant:b.maybeS,settings:{inside:!0}}),t({name:"AxisTick",relevant:b.maybeS,settings:{inside:!0}}),t({name:"RadialLabel",tags:["circular"],relevant:b.maybeXS,settings:{forceHidden:!0}}),t({name:"AxisTick",tags:["circular"],relevant:b.maybeXS,settings:{inside:!0}}),t({name:"PieChart",relevant:b.maybeXS,settings:{radius:d(99)}}),t({name:"PieChart",relevant:b.widthM,settings:{radius:d(99)}}),t({name:"RadialLabel",tags:["pie"],relevant:b.maybeXS,settings:{forceHidden:!0}}),t({name:"RadialLabel",tags:["pie"],relevant:b.widthM,settings:{forceHidden:!0}}),t({name:"Tick",tags:["pie"],relevant:b.maybeXS,settings:{forceHidden:!0}}),t({name:"Tick",tags:["pie"],relevant:b.widthM,settings:{forceHidden:!0}}),t({name:"FunnelSeries",relevant:b.widthM,settings:{alignLabels:!1}}),t({name:"Label",tags:["funnel","vertical"],relevant:b.widthL,settings:{forceHidden:!0}}),t({name:"Tick",tags:["funnel","vertical"],relevant:b.widthL,settings:{forceHidden:!0}}),t({name:"Label",tags:["funnel","horizontal"],relevant:b.heightS,settings:{forceHidden:!0}}),t({name:"Tick",tags:["funnel","horizontal"],relevant:b.heightS,settings:{forceHidden:!0}}),t({name:"PyramidSeries",relevant:b.widthM,settings:{alignLabels:!1}}),t({name:"Label",tags:["pyramid","vertical"],relevant:b.widthL,settings:{forceHidden:!0}}),t({name:"Tick",tags:["pyramid","vertical"],relevant:b.widthL,settings:{forceHidden:!0}}),t({name:"Label",tags:["pyramid","horizontal"],relevant:b.heightS,settings:{forceHidden:!0}}),t({name:"Tick",tags:["pyramid","horizontal"],relevant:b.heightS,settings:{forceHidden:!0}}),t({name:"PictorialStackedSeries",relevant:b.widthM,settings:{alignLabels:!1}}),t({name:"Label",tags:["pictorial","vertical"],relevant:b.widthL,settings:{forceHidden:!0}}),t({name:"Tick",tags:["pictorial","vertical"],relevant:b.widthL,settings:{forceHidden:!0}}),t({name:"Label",tags:["pictorial","horizontal"],relevant:b.heightS,settings:{forceHidden:!0}}),t({name:"Tick",tags:["pictorial","horizontal"],relevant:b.heightS,settings:{forceHidden:!0}}),t({name:"Label",tags:["flow","horizontal"],relevant:b.widthS,settings:{forceHidden:!0}}),t({name:"Label",tags:["flow","vertical"],relevant:b.heightS,settings:{forceHidden:!0}}),t({name:"Chord",relevant:b.maybeXS,settings:{radius:d(99)}}),t({name:"Label",tags:["hierarchy","node"],relevant:b.maybeXS,settings:{forceHidden:!0}})}};Object.defineProperty(b,"XXS",{enumerable:!0,configurable:!0,writable:!0,value:100}),Object.defineProperty(b,"XS",{enumerable:!0,configurable:!0,writable:!0,value:200}),Object.defineProperty(b,"S",{enumerable:!0,configurable:!0,writable:!0,value:300}),Object.defineProperty(b,"M",{enumerable:!0,configurable:!0,writable:!0,value:400}),Object.defineProperty(b,"L",{enumerable:!0,configurable:!0,writable:!0,value:600}),Object.defineProperty(b,"XL",{enumerable:!0,configurable:!0,writable:!0,value:800}),Object.defineProperty(b,"XXL",{enumerable:!0,configurable:!0,writable:!0,value:1e3});const v=b;export{p as AnimatedThemeAm5,c as DarkThemeAm5,v as ResponsiveThemeAm5,g as ScrollbarAm5,n as ThemeAm5};
5
+ import{a3 as t,ak as s,a7 as e,at as i,g as a,am as h}from"../../../chunks/Theme.js";export{a6 as colorAm5}from"../../../chunks/Theme.js";export{d as DarkThemeAm5,r as ResponsiveThemeAm5}from"../../../chunks/Responsive.js";import{R as n,B as o}from"../../../chunks/Button.js";export{T as TooltipAm5}from"../../../chunks/Tooltip.js";export{C as ColorSetAm5}from"../../../chunks/ColorSet.js";class u extends t{constructor(){super(...arguments),Object.defineProperty(this,"thumb",{enumerable:!0,configurable:!0,writable:!0,value:this._makeThumb()}),Object.defineProperty(this,"startGrip",{enumerable:!0,configurable:!0,writable:!0,value:this._makeButton()}),Object.defineProperty(this,"endGrip",{enumerable:!0,configurable:!0,writable:!0,value:this._makeButton()}),Object.defineProperty(this,"_thumbBusy",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_startDown",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_endDown",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_thumbDown",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"_gripDown",{enumerable:!0,configurable:!0,writable:!0,value:void 0})}_addOrientationClass(){this._settings.themeTags=s(this._settings.themeTags,["scrollbar",this._settings.orientation]),this._settings.background||(this._settings.background=n.new(this._root,{themeTags:s(this._settings.themeTags,["main","background"])}))}_makeButton(){return this.children.push(o.new(this._root,{themeTags:["resize","button",this.get("orientation")],icon:e.new(this._root,{themeTags:["icon"]})}))}_makeThumb(){return this.children.push(n.new(this._root,{themeTags:["thumb",this.get("orientation")]}))}_handleAnimation(t){t&&this._disposers.push(t.events.on("stopped",(()=>{this.setPrivateRaw("isBusy",!1),this._thumbBusy=!1})))}_afterNew(){this._addOrientationClass(),super._afterNew();const t=this.startGrip,s=this.endGrip,e=this.thumb,a=this.get("background");a&&this._disposers.push(a.events.on("click",(t=>{this.setPrivateRaw("isBusy",!0);const s=this._display.toLocal(t.point),i=this.width(),a=this.height(),h=this.get("orientation");let r,n,o;r="vertical"==h?(s.y-e.height()/2)/a:(s.x-e.width()/2)/i,"vertical"==h?(n=r*a,o="y"):(n=r*i,o="x");const u=this.get("animationDuration",0);u>0?(this._thumbBusy=!0,this._handleAnimation(this.thumb.animate({key:o,to:n,duration:u,easing:this.get("animationEasing")}))):(this.thumb.set(o,n),this._root.events.once("frameended",(()=>{this.setPrivateRaw("isBusy",!1)})))}))),this._disposers.push(e.events.on("dblclick",(t=>{if(!i(t.originalEvent,this))return;const s=this.get("animationDuration",0),e=this.get("animationEasing");this.animate({key:"start",to:0,duration:s,easing:e}),this.animate({key:"end",to:1,duration:s,easing:e})}))),this._disposers.push(t.events.on("pointerdown",(()=>{this.setPrivateRaw("isBusy",!0),this._startDown=!0,this._gripDown="start"}))),this._disposers.push(s.events.on("pointerdown",(()=>{this.setPrivateRaw("isBusy",!0),this._endDown=!0,this._gripDown="end"}))),this._disposers.push(e.events.on("pointerdown",(()=>{this.setPrivateRaw("isBusy",!0),this._thumbDown=!0,this._gripDown=void 0}))),this._disposers.push(t.events.on("globalpointerup",(()=>{this._startDown&&this.setPrivateRaw("isBusy",!1),this._startDown=!1}))),this._disposers.push(s.events.on("globalpointerup",(()=>{this._endDown&&this.setPrivateRaw("isBusy",!1),this._endDown=!1}))),this._disposers.push(e.events.on("globalpointerup",(()=>{this._thumbDown&&this.setPrivateRaw("isBusy",!1),this._thumbDown=!1}))),this._disposers.push(t.on("x",(()=>{this._updateThumb()}))),this._disposers.push(s.on("x",(()=>{this._updateThumb()}))),this._disposers.push(t.on("y",(()=>{this._updateThumb()}))),this._disposers.push(s.on("y",(()=>{this._updateThumb()}))),this._disposers.push(e.events.on("positionchanged",(()=>{this._updateGripsByThumb()}))),"vertical"==this.get("orientation")?(t.set("x",0),s.set("x",0),this._disposers.push(e.adapters.add("y",(t=>Math.max(Math.min(Number(t),this.height()-e.height()),0)))),this._disposers.push(e.adapters.add("x",(t=>this.width()/2))),this._disposers.push(t.adapters.add("x",(t=>this.width()/2))),this._disposers.push(s.adapters.add("x",(t=>this.width()/2))),this._disposers.push(t.adapters.add("y",(t=>Math.max(Math.min(Number(t),this.height()),0)))),this._disposers.push(s.adapters.add("y",(t=>Math.max(Math.min(Number(t),this.height()),0))))):(t.set("y",0),s.set("y",0),this._disposers.push(e.adapters.add("x",(t=>Math.max(Math.min(Number(t),this.width()-e.width()),0)))),this._disposers.push(e.adapters.add("y",(t=>this.height()/2))),this._disposers.push(t.adapters.add("y",(t=>this.height()/2))),this._disposers.push(s.adapters.add("y",(t=>this.height()/2))),this._disposers.push(t.adapters.add("x",(t=>Math.max(Math.min(Number(t),this.width()),0)))),this._disposers.push(s.adapters.add("x",(t=>Math.max(Math.min(Number(t),this.width()),0)))))}_updateChildren(){super._updateChildren(),(this.isDirty("end")||this.isDirty("start")||this._sizeDirty)&&this.updateGrips()}_changed(){if(super._changed(),this.isDirty("start")||this.isDirty("end")){const t="rangechanged";this.events.isEnabled(t)&&this.events.dispatch(t,{type:t,target:this,start:this.get("start",0),end:this.get("end",1),grip:this._gripDown})}}updateGrips(){const t=this.startGrip,s=this.endGrip,e=this.get("orientation"),i=this.height(),a=this.width();"vertical"==e?(t.set("y",i*this.get("start",0)),s.set("y",i*this.get("end",1))):(t.set("x",a*this.get("start",0)),s.set("x",a*this.get("end",1)));const h=this.getPrivate("positionTextFunction"),r=Math.round(100*this.get("start",0)),n=Math.round(100*this.get("end",0));let o,u;h?(o=h.call(this,this.get("start",0)),u=h.call(this,this.get("end",0))):(o=r+"%",u=n+"%"),t.set("ariaLabel",this._t("From %1",void 0,o)),t.set("ariaValueNow",""+r),t.set("ariaValueText",r+"%"),t.set("ariaValueMin","0"),t.set("ariaValueMax","100"),s.set("ariaLabel",this._t("To %1",void 0,u)),s.set("ariaValueNow",""+n),s.set("ariaValueText",n+"%"),s.set("ariaValueMin","0"),s.set("ariaValueMax","100")}_updateThumb(){const t=this.thumb,s=this.startGrip,e=this.endGrip,i=this.height(),h=this.width();let r=s.x(),n=e.x(),o=s.y(),u=e.y(),d=0,p=1;"vertical"==this.get("orientation")?a(o)&&a(u)&&(this._thumbBusy||t.isDragging()||(t.set("height",u-o),t.set("y",o)),d=o/i,p=u/i):a(r)&&a(n)&&(this._thumbBusy||t.isDragging()||(t.set("width",n-r),t.set("x",r)),d=r/h,p=n/h),!this.getPrivate("isBusy")||this.get("start")==d&&this.get("end")==p||(this.set("start",d),this.set("end",p));const l=this.getPrivate("positionTextFunction"),m=Math.round(100*this.get("start",0)),g=Math.round(100*this.get("end",0));let b,c;l?(b=l.call(this,this.get("start",0)),c=l.call(this,this.get("end",0))):(b=m+"%",c=g+"%"),t.set("ariaLabel",this._t("From %1 to %2",void 0,b,c)),t.set("ariaValueNow",""+m),t.set("ariaValueText",m+"%")}_updateGripsByThumb(){const t=this.thumb,s=this.startGrip,e=this.endGrip;if("vertical"==this.get("orientation")){const i=t.height();s.set("y",t.y()),e.set("y",t.y()+i)}else{const i=t.width();s.set("x",t.x()),e.set("x",t.x()+i)}}}Object.defineProperty(u,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Scrollbar"}),Object.defineProperty(u,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:t.classNames.concat([u.className])});const p=class extends h{setupDefaultRules(){super.setupDefaultRules(),this.rule("Component").setAll({interpolationDuration:600}),this.rule("Hierarchy").set("animationDuration",600),this.rule("Scrollbar").set("animationDuration",600),this.rule("Tooltip").set("animationDuration",300),this.rule("MapChart").set("animationDuration",1e3),this.rule("MapChart").set("wheelDuration",300),this.rule("Entity").setAll({stateAnimationDuration:600}),this.rule("Sprite").states.create("default",{stateAnimationDuration:600}),this.rule("Tooltip",["axis"]).setAll({animationDuration:200}),this.rule("WordCloud").set("animationDuration",500),this.rule("Polygon").set("animationDuration",600),this.rule("ArcDiagram").set("animationDuration",600)}};export{p as AnimatedThemeAm5,u as ScrollbarAm5,h as ThemeAm5};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.28/esri/copyright.txt for details.
4
4
  */
5
- import{a as e}from"../../../chunks/tslib.es6.js";import{w as t,c as i,S as s,a,T as r}from"../../../chunks/Tick.js";import{ag as l,as as n,al as o,ar as h,S as c,at as u,au as d,ao as g,Q as p,a7 as y,g as b,am as m,a4 as f,R as _,a3 as x,e as v,av as w,X as k,aw as D,ax as R,ay as A,ak as P}from"../../../chunks/Theme.js";import{C as T}from"../../../chunks/ColorSet.js";import{s as L}from"../../../chunks/DefaultTheme.js";class N extends l{constructor(){super(...arguments),Object.defineProperty(this,"_display",{enumerable:!0,configurable:!0,writable:!0,value:this._root._renderer.makeRadialText("",this.textStyle)})}_afterNew(){super._afterNew()}_beforeChanged(){super._beforeChanged(),this._display.clear(),this.isDirty("textType")&&(this._display.textType=this.get("textType"),this.markDirtyBounds()),this.isDirty("radius")&&(this._display.radius=this.get("radius"),this.markDirtyBounds()),this.isDirty("startAngle")&&(this._display.startAngle=(this.get("startAngle",0)+90)*n,this.markDirtyBounds()),this.isDirty("inside")&&(this._display.inside=this.get("inside"),this.markDirtyBounds()),this.isDirty("orientation")&&(this._display.orientation=this.get("orientation"),this.markDirtyBounds()),this.isDirty("kerning")&&(this._display.kerning=this.get("kerning"),this.markDirtyBounds())}}Object.defineProperty(N,"className",{enumerable:!0,configurable:!0,writable:!0,value:"RadialText"}),Object.defineProperty(N,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:l.classNames.concat([N.className])});class C extends o{constructor(){super(...arguments),Object.defineProperty(this,"_flipped",{enumerable:!0,configurable:!0,writable:!0,value:!1})}_afterNew(){this._textKeys.push("textType","kerning"),super._afterNew()}_makeText(){this._text=this.children.push(N.new(this._root,{}))}baseRadius(){const e=this.getPrivate("radius",0),t=this.getPrivate("innerRadius",0),i=this.get("baseRadius",0);return t+h(i,e-t)}radius(){const e=this.get("inside",!1);return this.baseRadius()+this.get("radius",0)*(e?-1:1)}_updateChildren(){if(super._updateChildren(),this.isDirty("baseRadius")||this.isPrivateDirty("radius")||this.isPrivateDirty("innerRadius")||this.isDirty("labelAngle")||this.isDirty("radius")||this.isDirty("inside")||this.isDirty("orientation")||this.isDirty("textType")){const e=this.get("textType","adjusted"),t=this.get("inside",!1),i=this.get("orientation");let s=c(this.get("labelAngle",0));this._text.set("startAngle",this.get("labelAngle",0)),this._text.set("inside",t);const a=u(s),r=d(s);let l=this.baseRadius(),n=this.radius();if(this._display.angle=0,"circular"==e)this.setAll({paddingTop:0,paddingBottom:0,paddingLeft:0,paddingRight:0}),this._text.set("orientation",i),this._text.set("radius",n);else{0==l&&(s=0,n=0);let t=n*r,o=n*a;"radial"==e?(this.setRaw("x",t),this.setRaw("y",o),s<90||s>270||"auto"!=i?(this._display.angle=s,this._flipped=!1):(this._display.angle=s+180,this._flipped=!0),this._dirty.rotation=!1):"adjusted"==e?(this.setRaw("centerX",g),this.setRaw("centerY",g),this.setRaw("x",t),this.setRaw("y",o)):"regular"==e&&(this.setRaw("x",t),this.setRaw("y",o))}this.markDirtyPosition(),this.markDirtyBounds()}}_updatePosition(){const e=this.get("textType","regular"),t=this.get("inside",!1);let i=0,s=0,a=this.get("labelAngle",0),r=this.localBounds(),l=r.right-r.left,n=r.bottom-r.top;if("radial"==e){if(this._flipped){let e=this.get("centerX");e instanceof p&&(l*=1-2*e.value),i=l*d(a),s=l*u(a)}}else t||"adjusted"!=e||(i=l/2*d(a),s=n/2*u(a));this.setRaw("dx",i),this.setRaw("dy",s),super._updatePosition()}get text(){return this._text}}Object.defineProperty(C,"className",{enumerable:!0,configurable:!0,writable:!0,value:"RadialLabel"}),Object.defineProperty(C,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:o.classNames.concat([C.className])});const j=Math.abs,S=Math.atan2,O=Math.cos,I=Math.max,M=Math.min,B=Math.sin,F=Math.sqrt,X=1e-12,H=Math.PI,Y=H/2,V=2*H;function z(e){return e>1?0:e<-1?H:Math.acos(e)}function W(e){return e>=1?Y:e<=-1?-Y:Math.asin(e)}function U(e){return e.innerRadius}function q(e){return e.outerRadius}function K(e){return e.startAngle}function E(e){return e.endAngle}function G(e){return e&&e.padAngle}function J(e,t,i,s,a,r,l,n){var o=i-e,h=s-t,c=l-a,u=n-r,d=u*o-c*h;if(!(d*d<X))return[e+(d=(c*(t-r)-u*(e-a))/d)*o,t+d*h]}function Q(e,t,i,s,a,r,l){var n=e-i,o=t-s,h=(l?r:-r)/F(n*n+o*o),c=h*o,u=-h*n,d=e+c,g=t+u,p=i+c,y=s+u,b=(d+p)/2,m=(g+y)/2,f=p-d,_=y-g,x=f*f+_*_,v=a-r,w=d*y-p*g,k=(_<0?-1:1)*F(I(0,v*v*x-w*w)),D=(w*_-f*k)/x,R=(-w*f-_*k)/x,A=(w*_+f*k)/x,P=(-w*f+_*k)/x,T=D-b,L=R-m,N=A-b,C=P-m;return T*T+L*L>N*N+C*C&&(D=A,R=P),{cx:D,cy:R,x01:-c,y01:-u,x11:D*(a/v-1),y11:R*(a/v-1)}}function Z(){var e=U,s=q,a=i(0),r=null,l=K,n=E,o=G,h=null,c=t(u);function u(){var t,i,u=+e.apply(this,arguments),d=+s.apply(this,arguments),g=l.apply(this,arguments)-Y,p=n.apply(this,arguments)-Y,y=j(p-g),b=p>g;if(h||(h=t=c()),d<u&&(i=d,d=u,u=i),d>X)if(y>V-X)h.moveTo(d*O(g),d*B(g)),h.arc(0,0,d,g,p,!b),u>X&&(h.moveTo(u*O(p),u*B(p)),h.arc(0,0,u,p,g,b));else{var m,f,_=g,x=p,v=g,w=p,k=y,D=y,R=o.apply(this,arguments)/2,A=R>X&&(r?+r.apply(this,arguments):F(u*u+d*d)),P=M(j(d-u)/2,+a.apply(this,arguments)),T=P,L=P;if(A>X){var N=W(A/u*B(R)),C=W(A/d*B(R));(k-=2*N)>X?(v+=N*=b?1:-1,w-=N):(k=0,v=w=(g+p)/2),(D-=2*C)>X?(_+=C*=b?1:-1,x-=C):(D=0,_=x=(g+p)/2)}var I=d*O(_),U=d*B(_),q=u*O(w),K=u*B(w);if(P>X){var E,G=d*O(x),Z=d*B(x),$=u*O(v),ee=u*B(v);if(y<H)if(E=J(I,U,$,ee,G,Z,q,K)){var te=I-E[0],ie=U-E[1],se=G-E[0],ae=Z-E[1],re=1/B(z((te*se+ie*ae)/(F(te*te+ie*ie)*F(se*se+ae*ae)))/2),le=F(E[0]*E[0]+E[1]*E[1]);T=M(P,(u-le)/(re-1)),L=M(P,(d-le)/(re+1))}else T=L=0}D>X?L>X?(m=Q($,ee,I,U,d,L,b),f=Q(G,Z,q,K,d,L,b),h.moveTo(m.cx+m.x01,m.cy+m.y01),L<P?h.arc(m.cx,m.cy,L,S(m.y01,m.x01),S(f.y01,f.x01),!b):(h.arc(m.cx,m.cy,L,S(m.y01,m.x01),S(m.y11,m.x11),!b),h.arc(0,0,d,S(m.cy+m.y11,m.cx+m.x11),S(f.cy+f.y11,f.cx+f.x11),!b),h.arc(f.cx,f.cy,L,S(f.y11,f.x11),S(f.y01,f.x01),!b))):(h.moveTo(I,U),h.arc(0,0,d,_,x,!b)):h.moveTo(I,U),u>X&&k>X?T>X?(m=Q(q,K,G,Z,u,-T,b),f=Q(I,U,$,ee,u,-T,b),h.lineTo(m.cx+m.x01,m.cy+m.y01),T<P?h.arc(m.cx,m.cy,T,S(m.y01,m.x01),S(f.y01,f.x01),!b):(h.arc(m.cx,m.cy,T,S(m.y01,m.x01),S(m.y11,m.x11),!b),h.arc(0,0,u,S(m.cy+m.y11,m.cx+m.x11),S(f.cy+f.y11,f.cx+f.x11),b),h.arc(f.cx,f.cy,T,S(f.y11,f.x11),S(f.y01,f.x01),!b))):h.arc(0,0,u,w,v,b):h.lineTo(q,K)}else h.moveTo(0,0);if(h.closePath(),t)return h=null,t+""||null}return u.centroid=function(){var t=(+e.apply(this,arguments)+ +s.apply(this,arguments))/2,i=(+l.apply(this,arguments)+ +n.apply(this,arguments))/2-H/2;return[O(i)*t,B(i)*t]},u.innerRadius=function(t){return arguments.length?(e="function"==typeof t?t:i(+t),u):e},u.outerRadius=function(e){return arguments.length?(s="function"==typeof e?e:i(+e),u):s},u.cornerRadius=function(e){return arguments.length?(a="function"==typeof e?e:i(+e),u):a},u.padRadius=function(e){return arguments.length?(r=null==e?null:"function"==typeof e?e:i(+e),u):r},u.startAngle=function(e){return arguments.length?(l="function"==typeof e?e:i(+e),u):l},u.endAngle=function(e){return arguments.length?(n="function"==typeof e?e:i(+e),u):n},u.padAngle=function(e){return arguments.length?(o="function"==typeof e?e:i(+e),u):o},u.context=function(e){return arguments.length?(h=e??null,u):h},u}class $ extends y{constructor(){super(...arguments),Object.defineProperty(this,"ix",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"iy",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_generator",{enumerable:!0,configurable:!0,writable:!0,value:Z()})}_getTooltipPoint(){let e=this.get("tooltipX"),t=this.get("tooltipY"),i=0,s=0;b(e)&&(i=e),b(t)&&(s=t);let a=this.get("radius",0),r=this.get("innerRadius",0);return a+=this.get("dRadius",0),r+=this.get("dInnerRadius",0),r<0&&(r=a+r),e instanceof p&&(i=this.ix*(r+(a-r)*e.value)),t instanceof p&&(s=this.iy*(r+(a-r)*t.value)),this.get("arc")>=360&&0==r&&(i=0,s=0),{x:i,y:s}}_beforeChanged(){super._beforeChanged(),(this.isDirty("radius")||this.isDirty("arc")||this.isDirty("innerRadius")||this.isDirty("startAngle")||this.isDirty("dRadius")||this.isDirty("dInnerRadius")||this.isDirty("cornerRadius"))&&(this._clear=!0)}_changed(){if(super._changed(),this._clear){let e=this.get("startAngle",0),t=this.get("arc",0);const i=this._generator;t<0&&(e+=t,t*=-1),t>.1&&i.cornerRadius(this.get("cornerRadius",0)),i.context(this._display);let s=this.get("radius",0),a=this.get("innerRadius",0);s+=this.get("dRadius",0),a+=this.get("dInnerRadius",0),a<0&&(a=s+a),i({innerRadius:a,outerRadius:s,startAngle:(e+90)*n,endAngle:(e+t+90)*n});let r=e+t/2;this.ix=d(r),this.iy=u(r)}if(this.isDirty("shiftRadius")){const e=this.get("shiftRadius",0);this.setRaw("dx",this.ix*e),this.setRaw("dy",this.iy*e),this.markDirtyPosition()}}}Object.defineProperty($,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Slice"}),Object.defineProperty($,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:y.classNames.concat([$.className])});class ee extends m{setupDefaultRules(){super.setupDefaultRules();const e=this._root.interfaceColors,t=this.rule.bind(this);t("PercentSeries").setAll({legendLabelText:"{category}",legendValueText:"{valuePercentTotal.formatNumber('0.00p')}",colors:T.new(this._root,{}),width:f,height:f}),t("PieChart").setAll({radius:_(80),startAngle:-90,endAngle:270}),t("PieSeries").setAll({alignLabels:!0,startAngle:-90,endAngle:270}),t("PieSeries").states.create("hidden",{endAngle:-90,opacity:0}),t("Slice",["pie"]).setAll({position:"absolute",isMeasured:!1,x:0,y:0,toggleKey:"active",tooltipText:"{category}: {valuePercentTotal.formatNumber('0.00p')}",strokeWidth:1,strokeOpacity:1,role:"figure",lineJoin:"round"}),t("Slice",["pie"]).states.create("active",{shiftRadius:20,scale:1}),t("Slice",["pie"]).states.create("hoverActive",{scale:1.04}),t("Slice",["pie"]).states.create("hover",{scale:1.04}),t("RadialLabel",["pie"]).setAll({textType:"aligned",radius:10,text:"{category}: {valuePercentTotal.formatNumber('0.00p')}",paddingTop:5,paddingBottom:5,populateText:!0}),t("Tick",["pie"]).setAll({location:1}),t("SlicedChart").setAll({paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10}),t("FunnelSeries").setAll({startLocation:0,endLocation:1,orientation:"vertical",alignLabels:!0,sequencedInterpolation:!0}),t("FunnelSlice").setAll({interactive:!0,expandDistance:0}),t("FunnelSlice").states.create("hover",{expandDistance:.15}),t("Label",["funnel"]).setAll({populateText:!0,text:"{category}: {valuePercentTotal.formatNumber('0.00p')}",centerY:g}),t("Label",["funnel","horizontal"]).setAll({centerX:0,centerY:g,rotation:-90}),t("Label",["funnel","vertical"]).setAll({centerY:g,centerX:0}),t("Tick",["funnel"]).setAll({location:1}),t("FunnelSlice",["funnel","link"]).setAll({fillOpacity:.5,strokeOpacity:0,expandDistance:-.1}),t("FunnelSlice",["funnel","link","vertical"]).setAll({height:10}),t("FunnelSlice",["funnel","link","horizontal"]).setAll({width:10}),t("PyramidSeries").setAll({valueIs:"area"}),t("FunnelSlice",["pyramid","link"]).setAll({fillOpacity:.5}),t("FunnelSlice",["pyramid","link","vertical"]).setAll({height:0}),t("FunnelSlice",["pyramid","link","horizontal"]).setAll({width:0}),t("FunnelSlice",["pyramid"]).setAll({interactive:!0,expandDistance:0}),t("FunnelSlice",["pyramid"]).states.create("hover",{expandDistance:.15}),t("Label",["pyramid"]).setAll({populateText:!0,text:"{category}: {valuePercentTotal.formatNumber('0.00p')}",centerY:g}),t("Label",["pyramid","horizontal"]).setAll({centerX:0,centerY:g,rotation:-90}),t("Label",["pyramid","vertical"]).setAll({centerY:g,centerX:0}),t("Tick",["pyramid"]).setAll({location:1}),t("FunnelSlice",["pictorial"]).setAll({interactive:!0,tooltipText:"{category}: {valuePercentTotal.formatNumber('0.00p')}"}),t("Label",["pictorial"]).setAll({populateText:!0,text:"{category}: {valuePercentTotal.formatNumber('0.00p')}",centerY:g}),t("Label",["pictorial","horizontal"]).setAll({centerX:0,centerY:g,rotation:-90}),t("Label",["pictorial","vertical"]).setAll({centerY:g,centerX:0}),t("FunnelSlice",["pictorial","link"]).setAll({fillOpacity:.5,width:0,height:0}),t("Tick",["pictorial"]).setAll({location:.5});{const i=t("Graphics",["pictorial","background"]);i.setAll({fillOpacity:.2}),L(i,"fill",e,"alternativeBackground")}}}class te extends s{_afterNew(){this._defaultThemes.push(ee.new(this._root)),super._afterNew(),this.chartContainer.children.push(this.seriesContainer),this.seriesContainer.children.push(this.bulletsContainer)}_processSeries(e){super._processSeries(e),this.seriesContainer.children.moveValue(this.bulletsContainer,this.seriesContainer.children.length-1)}}Object.defineProperty(te,"className",{enumerable:!0,configurable:!0,writable:!0,value:"PercentChart"}),Object.defineProperty(te,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:s.classNames.concat([te.className])});class ie extends a{constructor(){super(...arguments),Object.defineProperty(this,"slicesContainer",{enumerable:!0,configurable:!0,writable:!0,value:this.children.push(x.new(this._root,{position:"absolute",isMeasured:!1}))}),Object.defineProperty(this,"labelsContainer",{enumerable:!0,configurable:!0,writable:!0,value:this.children.push(x.new(this._root,{position:"absolute",isMeasured:!1}))}),Object.defineProperty(this,"ticksContainer",{enumerable:!0,configurable:!0,writable:!0,value:this.children.push(x.new(this._root,{position:"absolute",isMeasured:!1}))}),Object.defineProperty(this,"_lLabels",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_rLabels",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_hLabels",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"slices",{enumerable:!0,configurable:!0,writable:!0,value:this._makeSlices()}),Object.defineProperty(this,"labels",{enumerable:!0,configurable:!0,writable:!0,value:this._makeLabels()}),Object.defineProperty(this,"ticks",{enumerable:!0,configurable:!0,writable:!0,value:this._makeTicks()})}makeSlice(e){const t=this.slicesContainer.children.push(this.slices.make());return t.on("fill",(()=>{this.updateLegendMarker(e)})),t.on("stroke",(()=>{this.updateLegendMarker(e)})),t._setDataItem(e),e.set("slice",t),this.slices.push(t),t}makeLabel(e){const t=this.labelsContainer.children.push(this.labels.make());return t._setDataItem(e),e.set("label",t),this.labels.push(t),t}_shouldMakeBullet(e){return null!=e.get("value")}makeTick(e){const t=this.ticksContainer.children.push(this.ticks.make());return t._setDataItem(e),e.set("tick",t),this.ticks.push(t),t}_afterNew(){this.fields.push("category","fill"),super._afterNew()}_onDataClear(){const e=this.get("colors");e&&e.reset()}_prepareChildren(){if(super._prepareChildren(),this._lLabels=[],this._rLabels=[],this._hLabels=[],this._valuesDirty){let e=0,t=0,i=0,s=1/0,a=0;v(this._dataItems,(i=>{let s=i.get("valueWorking",0);e+=s,t+=Math.abs(s)})),v(this._dataItems,(e=>{let r=e.get("valueWorking",0);r>i&&(i=r),r<s&&(s=r),a++;let l=r/t;0==t&&(l=0),e.setRaw("valuePercentTotal",100*l)})),this.setPrivateRaw("valueLow",s),this.setPrivateRaw("valueHigh",i),this.setPrivateRaw("valueSum",e),this.setPrivateRaw("valueAverage",e/a),this.setPrivateRaw("valueAbsoluteSum",t)}}show(t){const i=Object.create(null,{show:{get:()=>super.show}});return e(this,void 0,void 0,(function*(){let e=[];e.push(i.show.call(this,t)),e.push(this._sequencedShowHide(!0,t)),yield Promise.all(e)}))}hide(t){const i=Object.create(null,{hide:{get:()=>super.hide}});return e(this,void 0,void 0,(function*(){let e=[];e.push(i.hide.call(this,t)),e.push(this._sequencedShowHide(!1,t)),yield Promise.all(e)}))}_updateChildren(){super._updateChildren(),this._valuesDirty&&v(this._dataItems,(e=>{e.get("label").text.markDirtyText()})),(this.isDirty("legendLabelText")||this.isDirty("legendValueText"))&&v(this._dataItems,(e=>{this.updateLegendValue(e)})),this._arrange()}_arrange(){this._arrangeDown(this._lLabels),this._arrangeUp(this._lLabels),this._arrangeDown(this._rLabels),this._arrangeUp(this._rLabels),this._arrangeLeft(this._hLabels),this._arrangeRight(this._hLabels),v(this.dataItems,(e=>{this._updateTick(e)}))}_afterChanged(){super._afterChanged(),this._arrange()}processDataItem(e){if(super.processDataItem(e),null==e.get("fill")){let t=this.get("colors");t&&e.setRaw("fill",t.next())}}showDataItem(t,i){const s=Object.create(null,{showDataItem:{get:()=>super.showDataItem}});return e(this,void 0,void 0,(function*(){const e=[s.showDataItem.call(this,t,i)];b(i)||(i=this.get("stateAnimationDuration",0));const a=this.get("stateAnimationEasing");let r=t.get("value");const l=t.animate({key:"valueWorking",to:r,duration:i,easing:a});l&&e.push(l.waitForStop());const n=t.get("tick");n&&e.push(n.show(i));const o=t.get("label");o&&e.push(o.show(i));const h=t.get("slice");h&&e.push(h.show(i)),h.get("active")&&h.states.applyAnimate("active"),yield Promise.all(e)}))}hideDataItem(t,i){const s=Object.create(null,{hideDataItem:{get:()=>super.hideDataItem}});return e(this,void 0,void 0,(function*(){const e=[s.hideDataItem.call(this,t,i)],a=this.states.create("hidden",{});b(i)||(i=a.get("stateAnimationDuration",this.get("stateAnimationDuration",0)));const r=a.get("stateAnimationEasing",this.get("stateAnimationEasing")),l=t.animate({key:"valueWorking",to:0,duration:i,easing:r});l&&e.push(l.waitForStop());const n=t.get("tick");n&&e.push(n.hide(i));const o=t.get("label");o&&e.push(o.hide(i));const h=t.get("slice");h.hideTooltip(),h&&e.push(h.hide(i)),yield Promise.all(e)}))}disposeDataItem(e){super.disposeDataItem(e);let t=e.get("label");t&&(this.labels.removeValue(t),t.dispose());let i=e.get("tick");i&&(this.ticks.removeValue(i),i.dispose());let s=e.get("slice");s&&(this.slices.removeValue(s),s.dispose())}hoverDataItem(e){const t=e.get("slice");t&&!t.isHidden()&&t.hover()}unhoverDataItem(e){const t=e.get("slice");t&&t.unhover()}updateLegendMarker(e){if(e){const t=e.get("slice");if(t){const i=e.get("legendDataItem");if(i){const e=i.get("markerRectangle");v(w,(i=>{null!=t.get(i)&&e.set(i,t.get(i))}))}}}}_arrangeDown(e){if(e){let t=this._getNextDown();e.sort(((e,t)=>e.y>t.y?1:e.y<t.y?-1:0)),v(e,(e=>{const i=e.label.adjustedLocalBounds();let s=i.top;e.y+s<t&&(e.y=t-s),e.label.set("y",e.y),t=e.y+i.bottom}))}}_getNextUp(){return this.labelsContainer.maxHeight()}_getNextDown(){return 0}_arrangeUp(e){if(e){let t=this._getNextUp();e.sort(((e,t)=>e.y<t.y?1:e.y>t.y?-1:0)),v(e,(e=>{const i=e.label.adjustedLocalBounds();let s=i.bottom;e.y+s>t&&(e.y=t-s),e.label.set("y",e.y),t=e.y+i.top}))}}_arrangeRight(e){if(e){let t=0;e.sort(((e,t)=>e.y>t.y?1:e.y<t.y?-1:0)),v(e,(e=>{const i=e.label.adjustedLocalBounds();let s=i.left;e.y+s<t&&(e.y=t-s),e.label.set("x",e.y),t=e.y+i.right}))}}_arrangeLeft(e){if(e){let t=this.labelsContainer.maxWidth();e.sort(((e,t)=>e.y<t.y?1:e.y>t.y?-1:0)),v(e,(e=>{const i=e.label.adjustedLocalBounds();let s=i.right;e.y+s>t&&(e.y=t-s),e.label.set("x",e.y),t=e.y+i.left}))}}_updateSize(){super._updateSize(),this.markDirty()}_updateTick(e){}_dispose(){super._dispose();const e=this.chart;e&&e.series.removeValue(this)}}Object.defineProperty(ie,"className",{enumerable:!0,configurable:!0,writable:!0,value:"PercentSeries"}),Object.defineProperty(ie,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:a.classNames.concat([ie.className])});class se extends te{constructor(){super(...arguments),Object.defineProperty(this,"_maxRadius",{enumerable:!0,configurable:!0,writable:!0,value:1})}_afterNew(){super._afterNew(),this.seriesContainer.setAll({x:g,y:g})}_prepareChildren(){super._prepareChildren();const e=this.chartContainer,t=e.innerWidth(),i=e.innerHeight(),s=this.get("startAngle",0),a=this.get("endAngle",0),r=this.get("innerRadius");let l=k(0,0,s,a,1);const n=t/(l.right-l.left),o=i/(l.bottom-l.top);let c={left:0,right:0,top:0,bottom:0};if(r instanceof p){let e=r.value,l=Math.min(n,o);e=Math.max(l*e,l-Math.min(i,t))/l,c=k(0,0,s,a,e),this.setPrivateRaw("irModifyer",e/r.value)}l=D([l,c]);const u=this._maxRadius;this._maxRadius=Math.min(n,o);const d=h(this.get("radius",0),this._maxRadius);this.seriesContainer.setAll({dy:-d*(l.bottom+l.top)/2,dx:-d*(l.right+l.left)/2}),(this.isDirty("startAngle")||this.isDirty("endAngle")||u!=this._maxRadius)&&this.series.each((e=>{e._markDirtyKey("startAngle")})),(this.isDirty("innerRadius")||this.isDirty("radius"))&&this.series.each((e=>{e._markDirtyKey("innerRadius")}))}radius(e){let t=h(this.get("radius",0),this._maxRadius),i=h(this.get("innerRadius",0),t);if(e){let s=this.series.indexOf(e),a=this.series.length,r=e.get("radius");return null!=r?i+h(r,t-i):i+(t-i)/a*(s+1)}return t}innerRadius(e){const t=this.radius();let i=h(this.get("innerRadius",0),t);if(i<0&&(i=t+i),e){let s=this.series.indexOf(e),a=this.series.length,r=e.get("innerRadius");return null!=r?i+h(r,t-i):i+(t-i)/a*s}return i}}Object.defineProperty(se,"className",{enumerable:!0,configurable:!0,writable:!0,value:"PieChart"}),Object.defineProperty(se,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:te.classNames.concat([se.className])});class ae extends ie{_makeSlices(){return new R(A.new({}),(()=>$._new(this._root,{themeTags:P(this.slices.template.get("themeTags",[]),["pie","series"])},[this.slices.template])))}_makeLabels(){return new R(A.new({}),(()=>C._new(this._root,{themeTags:P(this.labels.template.get("themeTags",[]),["pie","series"])},[this.labels.template])))}_makeTicks(){return new R(A.new({}),(()=>r._new(this._root,{themeTags:P(this.ticks.template.get("themeTags",[]),["pie","series"])},[this.ticks.template])))}processDataItem(e){super.processDataItem(e);const t=this.makeSlice(e);t.on("scale",(()=>{this._updateTick(e)})),t.on("shiftRadius",(()=>{this._updateTick(e)})),t.events.on("positionchanged",(()=>{this._updateTick(e)}));const i=this.makeLabel(e);i.events.on("positionchanged",(()=>{this._updateTick(e)})),this.makeTick(e),t.events.on("positionchanged",(()=>{i.markDirty()}))}_getNextUp(){const e=this.chart;return e?e._maxRadius:this.labelsContainer.maxHeight()/2}_getNextDown(){const e=this.chart;return e?-e._maxRadius:-this.labelsContainer.maxHeight()/2}_prepareChildren(){super._prepareChildren();const e=this.chart;if(e){if(this.isDirty("alignLabels")){let e=this.labels.template;if(this.get("alignLabels"))e.set("textType","aligned");else{let t=e.get("textType");null!=t&&"aligned"!=t||e.set("textType","adjusted")}}if(this._valuesDirty||this.isDirty("radius")||this.isDirty("innerRadius")||this.isDirty("startAngle")||this.isDirty("endAngle")||this.isDirty("alignLabels")){this.markDirtyBounds();const t=this.get("startAngle",e.get("startAngle",-90)),i=this.get("endAngle",e.get("endAngle",270))-t;let s=t;const a=e.radius(this);this.setPrivateRaw("radius",a);let r=e.innerRadius(this)*e.getPrivate("irModifyer",1);r<0&&(r=a+r),v(this._dataItems,(e=>{this.updateLegendValue(e);let t=i*e.get("valuePercentTotal")/100;const l=e.get("slice");if(l){l.set("radius",a),l.set("innerRadius",r),l.set("startAngle",s),l.set("arc",t);const i=e.get("fill");l._setDefault("fill",i),l._setDefault("stroke",i)}let n=c(s+t/2);const o=e.get("label");if(o&&(o.setPrivate("radius",a),o.setPrivate("innerRadius",r),o.set("labelAngle",n),"aligned"==o.get("textType"))){let e=a+o.get("radius",0),t=a*u(n);n>90&&n<=270?(o.isHidden()||o.isHiding()||this._lLabels.push({label:o,y:t}),e*=-1,e-=this.labelsContainer.get("paddingLeft",0),o.set("centerX",f),o.setPrivateRaw("left",!0)):(o.isHidden()||o.isHiding()||this._rLabels.push({label:o,y:t}),e+=this.labelsContainer.get("paddingRight",0),o.set("centerX",0),o.setPrivateRaw("left",!1)),o.set("x",e),o.set("y",a*u(n))}s+=t,this._updateTick(e)}))}}}_updateTick(e){const t=e.get("tick"),i=e.get("label"),s=e.get("slice"),a=t.get("location",1);if(t&&i&&s){const e=(s.get("shiftRadius",0)+s.get("radius",0))*s.get("scale",1)*a,r=i.get("labelAngle",0),l=d(r),n=u(r),o=this.labelsContainer,h=o.get("paddingLeft",0),c=o.get("paddingRight",0);let g=0,p=0;if(g=i.x(),p=i.y(),"circular"==i.get("textType")){const e=i.radius()-i.get("paddingBottom",0),t=i.get("labelAngle",0);g=e*d(t),p=e*u(t)}let y=-c;i.getPrivate("left")&&(y=h),t.set("points",[{x:s.x()+e*l,y:s.y()+e*n},{x:g+y,y:p},{x:g,y:p}])}}_positionBullet(e){const t=e.get("sprite");if(t){const i=t.dataItem.get("slice");if(i){const s=i.get("innerRadius",0),a=i.get("radius",0),r=i.get("startAngle",0)+i.get("arc",0)*e.get("locationX",.5),l=s+(a-s)*e.get("locationY",.5);t.setAll({x:d(r)*l,y:u(r)*l})}}}}Object.defineProperty(ae,"className",{enumerable:!0,configurable:!0,writable:!0,value:"PieSeries"}),Object.defineProperty(ae,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:ie.classNames.concat([ae.className])});export{se as PieChartAm5,ae as PieSeriesAm5};
5
+ import{a as e}from"../../../chunks/tslib.es6.js";import{w as t,c as i,S as s,a,T as r}from"../../../chunks/Tick.js";import{ag as l,aJ as n,al as o,az as h,S as c,aK as u,aL as d,ao as g,Q as p,a7 as y,g as b,am as m,a4 as f,R as _,a3 as x,e as v,aM as w,X as k,aN as D,aD as R,aE as A,ak as P}from"../../../chunks/Theme.js";import{C as T}from"../../../chunks/ColorSet.js";import{s as L}from"../../../chunks/DefaultTheme.js";class N extends l{constructor(){super(...arguments),Object.defineProperty(this,"_display",{enumerable:!0,configurable:!0,writable:!0,value:this._root._renderer.makeRadialText("",this.textStyle)})}_afterNew(){super._afterNew()}_beforeChanged(){super._beforeChanged(),this._display.clear(),this.isDirty("textType")&&(this._display.textType=this.get("textType"),this.markDirtyBounds()),this.isDirty("radius")&&(this._display.radius=this.get("radius"),this.markDirtyBounds()),this.isDirty("startAngle")&&(this._display.startAngle=(this.get("startAngle",0)+90)*n,this.markDirtyBounds()),this.isDirty("inside")&&(this._display.inside=this.get("inside"),this.markDirtyBounds()),this.isDirty("orientation")&&(this._display.orientation=this.get("orientation"),this.markDirtyBounds()),this.isDirty("kerning")&&(this._display.kerning=this.get("kerning"),this.markDirtyBounds())}}Object.defineProperty(N,"className",{enumerable:!0,configurable:!0,writable:!0,value:"RadialText"}),Object.defineProperty(N,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:l.classNames.concat([N.className])});class C extends o{constructor(){super(...arguments),Object.defineProperty(this,"_flipped",{enumerable:!0,configurable:!0,writable:!0,value:!1})}_afterNew(){this._textKeys.push("textType","kerning"),super._afterNew()}_makeText(){this._text=this.children.push(N.new(this._root,{}))}baseRadius(){const e=this.getPrivate("radius",0),t=this.getPrivate("innerRadius",0),i=this.get("baseRadius",0);return t+h(i,e-t)}radius(){const e=this.get("inside",!1);return this.baseRadius()+this.get("radius",0)*(e?-1:1)}_updateChildren(){if(super._updateChildren(),this.isDirty("baseRadius")||this.isPrivateDirty("radius")||this.isPrivateDirty("innerRadius")||this.isDirty("labelAngle")||this.isDirty("radius")||this.isDirty("inside")||this.isDirty("orientation")||this.isDirty("textType")){const e=this.get("textType","adjusted"),t=this.get("inside",!1),i=this.get("orientation");let s=c(this.get("labelAngle",0));this._text.set("startAngle",this.get("labelAngle",0)),this._text.set("inside",t);const a=u(s),r=d(s);let l=this.baseRadius(),n=this.radius();if(this._display.angle=0,"circular"==e)this.setAll({paddingTop:0,paddingBottom:0,paddingLeft:0,paddingRight:0}),this._text.set("orientation",i),this._text.set("radius",n);else{0==l&&(s=0,n=0);let t=n*r,o=n*a;"radial"==e?(this.setRaw("x",t),this.setRaw("y",o),s<90||s>270||"auto"!=i?(this._display.angle=s,this._flipped=!1):(this._display.angle=s+180,this._flipped=!0),this._dirty.rotation=!1):"adjusted"==e?(this.setRaw("centerX",g),this.setRaw("centerY",g),this.setRaw("x",t),this.setRaw("y",o)):"regular"==e&&(this.setRaw("x",t),this.setRaw("y",o))}this.markDirtyPosition(),this.markDirtyBounds()}}_updatePosition(){const e=this.get("textType","regular"),t=this.get("inside",!1);let i=0,s=0,a=this.get("labelAngle",0),r=this.localBounds(),l=r.right-r.left,n=r.bottom-r.top;if("radial"==e){if(this._flipped){let e=this.get("centerX");e instanceof p&&(l*=1-2*e.value),i=l*d(a),s=l*u(a)}}else t||"adjusted"!=e||(i=l/2*d(a),s=n/2*u(a));this.setRaw("dx",i),this.setRaw("dy",s),super._updatePosition()}get text(){return this._text}}Object.defineProperty(C,"className",{enumerable:!0,configurable:!0,writable:!0,value:"RadialLabel"}),Object.defineProperty(C,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:o.classNames.concat([C.className])});const j=Math.abs,S=Math.atan2,O=Math.cos,I=Math.max,M=Math.min,B=Math.sin,F=Math.sqrt,X=1e-12,H=Math.PI,Y=H/2,V=2*H;function z(e){return e>1?0:e<-1?H:Math.acos(e)}function W(e){return e>=1?Y:e<=-1?-Y:Math.asin(e)}function U(e){return e.innerRadius}function K(e){return e.outerRadius}function q(e){return e.startAngle}function E(e){return e.endAngle}function J(e){return e&&e.padAngle}function G(e,t,i,s,a,r,l,n){var o=i-e,h=s-t,c=l-a,u=n-r,d=u*o-c*h;if(!(d*d<X))return[e+(d=(c*(t-r)-u*(e-a))/d)*o,t+d*h]}function Q(e,t,i,s,a,r,l){var n=e-i,o=t-s,h=(l?r:-r)/F(n*n+o*o),c=h*o,u=-h*n,d=e+c,g=t+u,p=i+c,y=s+u,b=(d+p)/2,m=(g+y)/2,f=p-d,_=y-g,x=f*f+_*_,v=a-r,w=d*y-p*g,k=(_<0?-1:1)*F(I(0,v*v*x-w*w)),D=(w*_-f*k)/x,R=(-w*f-_*k)/x,A=(w*_+f*k)/x,P=(-w*f+_*k)/x,T=D-b,L=R-m,N=A-b,C=P-m;return T*T+L*L>N*N+C*C&&(D=A,R=P),{cx:D,cy:R,x01:-c,y01:-u,x11:D*(a/v-1),y11:R*(a/v-1)}}function Z(){var e=U,s=K,a=i(0),r=null,l=q,n=E,o=J,h=null,c=t(u);function u(){var t,i,u=+e.apply(this,arguments),d=+s.apply(this,arguments),g=l.apply(this,arguments)-Y,p=n.apply(this,arguments)-Y,y=j(p-g),b=p>g;if(h||(h=t=c()),d<u&&(i=d,d=u,u=i),d>X)if(y>V-X)h.moveTo(d*O(g),d*B(g)),h.arc(0,0,d,g,p,!b),u>X&&(h.moveTo(u*O(p),u*B(p)),h.arc(0,0,u,p,g,b));else{var m,f,_=g,x=p,v=g,w=p,k=y,D=y,R=o.apply(this,arguments)/2,A=R>X&&(r?+r.apply(this,arguments):F(u*u+d*d)),P=M(j(d-u)/2,+a.apply(this,arguments)),T=P,L=P;if(A>X){var N=W(A/u*B(R)),C=W(A/d*B(R));(k-=2*N)>X?(v+=N*=b?1:-1,w-=N):(k=0,v=w=(g+p)/2),(D-=2*C)>X?(_+=C*=b?1:-1,x-=C):(D=0,_=x=(g+p)/2)}var I=d*O(_),U=d*B(_),K=u*O(w),q=u*B(w);if(P>X){var E,J=d*O(x),Z=d*B(x),$=u*O(v),ee=u*B(v);if(y<H)if(E=G(I,U,$,ee,J,Z,K,q)){var te=I-E[0],ie=U-E[1],se=J-E[0],ae=Z-E[1],re=1/B(z((te*se+ie*ae)/(F(te*te+ie*ie)*F(se*se+ae*ae)))/2),le=F(E[0]*E[0]+E[1]*E[1]);T=M(P,(u-le)/(re-1)),L=M(P,(d-le)/(re+1))}else T=L=0}D>X?L>X?(m=Q($,ee,I,U,d,L,b),f=Q(J,Z,K,q,d,L,b),h.moveTo(m.cx+m.x01,m.cy+m.y01),L<P?h.arc(m.cx,m.cy,L,S(m.y01,m.x01),S(f.y01,f.x01),!b):(h.arc(m.cx,m.cy,L,S(m.y01,m.x01),S(m.y11,m.x11),!b),h.arc(0,0,d,S(m.cy+m.y11,m.cx+m.x11),S(f.cy+f.y11,f.cx+f.x11),!b),h.arc(f.cx,f.cy,L,S(f.y11,f.x11),S(f.y01,f.x01),!b))):(h.moveTo(I,U),h.arc(0,0,d,_,x,!b)):h.moveTo(I,U),u>X&&k>X?T>X?(m=Q(K,q,J,Z,u,-T,b),f=Q(I,U,$,ee,u,-T,b),h.lineTo(m.cx+m.x01,m.cy+m.y01),T<P?h.arc(m.cx,m.cy,T,S(m.y01,m.x01),S(f.y01,f.x01),!b):(h.arc(m.cx,m.cy,T,S(m.y01,m.x01),S(m.y11,m.x11),!b),h.arc(0,0,u,S(m.cy+m.y11,m.cx+m.x11),S(f.cy+f.y11,f.cx+f.x11),b),h.arc(f.cx,f.cy,T,S(f.y11,f.x11),S(f.y01,f.x01),!b))):h.arc(0,0,u,w,v,b):h.lineTo(K,q)}else h.moveTo(0,0);if(h.closePath(),t)return h=null,t+""||null}return u.centroid=function(){var t=(+e.apply(this,arguments)+ +s.apply(this,arguments))/2,i=(+l.apply(this,arguments)+ +n.apply(this,arguments))/2-H/2;return[O(i)*t,B(i)*t]},u.innerRadius=function(t){return arguments.length?(e="function"==typeof t?t:i(+t),u):e},u.outerRadius=function(e){return arguments.length?(s="function"==typeof e?e:i(+e),u):s},u.cornerRadius=function(e){return arguments.length?(a="function"==typeof e?e:i(+e),u):a},u.padRadius=function(e){return arguments.length?(r=null==e?null:"function"==typeof e?e:i(+e),u):r},u.startAngle=function(e){return arguments.length?(l="function"==typeof e?e:i(+e),u):l},u.endAngle=function(e){return arguments.length?(n="function"==typeof e?e:i(+e),u):n},u.padAngle=function(e){return arguments.length?(o="function"==typeof e?e:i(+e),u):o},u.context=function(e){return arguments.length?(h=e??null,u):h},u}class $ extends y{constructor(){super(...arguments),Object.defineProperty(this,"ix",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"iy",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"_generator",{enumerable:!0,configurable:!0,writable:!0,value:Z()})}_getTooltipPoint(){let e=this.get("tooltipX"),t=this.get("tooltipY"),i=0,s=0;b(e)&&(i=e),b(t)&&(s=t);let a=this.get("radius",0),r=this.get("innerRadius",0);return a+=this.get("dRadius",0),r+=this.get("dInnerRadius",0),r<0&&(r=a+r),e instanceof p&&(i=this.ix*(r+(a-r)*e.value)),t instanceof p&&(s=this.iy*(r+(a-r)*t.value)),this.get("arc")>=360&&0==r&&(i=0,s=0),{x:i,y:s}}_beforeChanged(){super._beforeChanged(),(this.isDirty("radius")||this.isDirty("arc")||this.isDirty("innerRadius")||this.isDirty("startAngle")||this.isDirty("dRadius")||this.isDirty("dInnerRadius")||this.isDirty("cornerRadius"))&&(this._clear=!0)}_changed(){if(super._changed(),this._clear){let e=this.get("startAngle",0),t=this.get("arc",0);const i=this._generator;t<0&&(e+=t,t*=-1),t>.1&&i.cornerRadius(this.get("cornerRadius",0)),i.context(this._display);let s=this.get("radius",0),a=this.get("innerRadius",0);s+=this.get("dRadius",0),a+=this.get("dInnerRadius",0),a<0&&(a=s+a),i({innerRadius:a,outerRadius:s,startAngle:(e+90)*n,endAngle:(e+t+90)*n});let r=e+t/2;this.ix=d(r),this.iy=u(r)}if(this.isDirty("shiftRadius")){const e=this.get("shiftRadius",0);this.setRaw("dx",this.ix*e),this.setRaw("dy",this.iy*e),this.markDirtyPosition()}}}Object.defineProperty($,"className",{enumerable:!0,configurable:!0,writable:!0,value:"Slice"}),Object.defineProperty($,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:y.classNames.concat([$.className])});class ee extends m{setupDefaultRules(){super.setupDefaultRules();const e=this._root.interfaceColors,t=this.rule.bind(this);t("PercentSeries").setAll({legendLabelText:"{category}",legendValueText:"{valuePercentTotal.formatNumber('0.00p')}",colors:T.new(this._root,{}),width:f,height:f}),t("PieChart").setAll({radius:_(80),startAngle:-90,endAngle:270}),t("PieSeries").setAll({alignLabels:!0,startAngle:-90,endAngle:270}),t("PieSeries").states.create("hidden",{endAngle:-90,opacity:0}),t("Slice",["pie"]).setAll({position:"absolute",isMeasured:!1,x:0,y:0,toggleKey:"active",tooltipText:"{category}: {valuePercentTotal.formatNumber('0.00p')}",strokeWidth:1,strokeOpacity:1,role:"figure",lineJoin:"round"}),t("Slice",["pie"]).states.create("active",{shiftRadius:20,scale:1}),t("Slice",["pie"]).states.create("hoverActive",{scale:1.04}),t("Slice",["pie"]).states.create("hover",{scale:1.04}),t("RadialLabel",["pie"]).setAll({textType:"aligned",radius:10,text:"{category}: {valuePercentTotal.formatNumber('0.00p')}",paddingTop:5,paddingBottom:5,populateText:!0}),t("Tick",["pie"]).setAll({location:1}),t("SlicedChart").setAll({paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10}),t("FunnelSeries").setAll({startLocation:0,endLocation:1,orientation:"vertical",alignLabels:!0,sequencedInterpolation:!0}),t("FunnelSlice").setAll({interactive:!0,expandDistance:0}),t("FunnelSlice").states.create("hover",{expandDistance:.15}),t("Label",["funnel"]).setAll({populateText:!0,text:"{category}: {valuePercentTotal.formatNumber('0.00p')}",centerY:g}),t("Label",["funnel","horizontal"]).setAll({centerX:0,centerY:g,rotation:-90}),t("Label",["funnel","vertical"]).setAll({centerY:g,centerX:0}),t("Tick",["funnel"]).setAll({location:1}),t("FunnelSlice",["funnel","link"]).setAll({fillOpacity:.5,strokeOpacity:0,expandDistance:-.1}),t("FunnelSlice",["funnel","link","vertical"]).setAll({height:10}),t("FunnelSlice",["funnel","link","horizontal"]).setAll({width:10}),t("PyramidSeries").setAll({valueIs:"area"}),t("FunnelSlice",["pyramid","link"]).setAll({fillOpacity:.5}),t("FunnelSlice",["pyramid","link","vertical"]).setAll({height:0}),t("FunnelSlice",["pyramid","link","horizontal"]).setAll({width:0}),t("FunnelSlice",["pyramid"]).setAll({interactive:!0,expandDistance:0}),t("FunnelSlice",["pyramid"]).states.create("hover",{expandDistance:.15}),t("Label",["pyramid"]).setAll({populateText:!0,text:"{category}: {valuePercentTotal.formatNumber('0.00p')}",centerY:g}),t("Label",["pyramid","horizontal"]).setAll({centerX:0,centerY:g,rotation:-90}),t("Label",["pyramid","vertical"]).setAll({centerY:g,centerX:0}),t("Tick",["pyramid"]).setAll({location:1}),t("FunnelSlice",["pictorial"]).setAll({interactive:!0,tooltipText:"{category}: {valuePercentTotal.formatNumber('0.00p')}"}),t("Label",["pictorial"]).setAll({populateText:!0,text:"{category}: {valuePercentTotal.formatNumber('0.00p')}",centerY:g}),t("Label",["pictorial","horizontal"]).setAll({centerX:0,centerY:g,rotation:-90}),t("Label",["pictorial","vertical"]).setAll({centerY:g,centerX:0}),t("FunnelSlice",["pictorial","link"]).setAll({fillOpacity:.5,width:0,height:0}),t("Tick",["pictorial"]).setAll({location:.5});{const i=t("Graphics",["pictorial","background"]);i.setAll({fillOpacity:.2}),L(i,"fill",e,"alternativeBackground")}}}class te extends s{_afterNew(){this._defaultThemes.push(ee.new(this._root)),super._afterNew(),this.chartContainer.children.push(this.seriesContainer),this.seriesContainer.children.push(this.bulletsContainer)}_processSeries(e){super._processSeries(e),this.seriesContainer.children.moveValue(this.bulletsContainer,this.seriesContainer.children.length-1)}}Object.defineProperty(te,"className",{enumerable:!0,configurable:!0,writable:!0,value:"PercentChart"}),Object.defineProperty(te,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:s.classNames.concat([te.className])});class ie extends a{constructor(){super(...arguments),Object.defineProperty(this,"slicesContainer",{enumerable:!0,configurable:!0,writable:!0,value:this.children.push(x.new(this._root,{position:"absolute",isMeasured:!1}))}),Object.defineProperty(this,"labelsContainer",{enumerable:!0,configurable:!0,writable:!0,value:this.children.push(x.new(this._root,{position:"absolute",isMeasured:!1}))}),Object.defineProperty(this,"ticksContainer",{enumerable:!0,configurable:!0,writable:!0,value:this.children.push(x.new(this._root,{position:"absolute",isMeasured:!1}))}),Object.defineProperty(this,"_lLabels",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_rLabels",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"_hLabels",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"slices",{enumerable:!0,configurable:!0,writable:!0,value:this._makeSlices()}),Object.defineProperty(this,"labels",{enumerable:!0,configurable:!0,writable:!0,value:this._makeLabels()}),Object.defineProperty(this,"ticks",{enumerable:!0,configurable:!0,writable:!0,value:this._makeTicks()})}makeSlice(e){const t=this.slicesContainer.children.push(this.slices.make());return t.on("fill",(()=>{this.updateLegendMarker(e)})),t.on("stroke",(()=>{this.updateLegendMarker(e)})),t._setDataItem(e),e.set("slice",t),this.slices.push(t),t}makeLabel(e){const t=this.labelsContainer.children.push(this.labels.make());return t._setDataItem(e),e.set("label",t),this.labels.push(t),t}_shouldMakeBullet(e){return null!=e.get("value")}makeTick(e){const t=this.ticksContainer.children.push(this.ticks.make());return t._setDataItem(e),e.set("tick",t),this.ticks.push(t),t}_afterNew(){this.fields.push("category","fill"),super._afterNew()}_onDataClear(){const e=this.get("colors");e&&e.reset()}_prepareChildren(){if(super._prepareChildren(),this._lLabels=[],this._rLabels=[],this._hLabels=[],this._valuesDirty){let e=0,t=0,i=0,s=1/0,a=0;v(this._dataItems,(i=>{let s=i.get("valueWorking",0);e+=s,t+=Math.abs(s)})),v(this._dataItems,(e=>{let r=e.get("valueWorking",0);r>i&&(i=r),r<s&&(s=r),a++;let l=r/t;0==t&&(l=0),e.setRaw("valuePercentTotal",100*l)})),this.setPrivateRaw("valueLow",s),this.setPrivateRaw("valueHigh",i),this.setPrivateRaw("valueSum",e),this.setPrivateRaw("valueAverage",e/a),this.setPrivateRaw("valueAbsoluteSum",t)}}show(t){const i=Object.create(null,{show:{get:()=>super.show}});return e(this,void 0,void 0,(function*(){let e=[];e.push(i.show.call(this,t)),e.push(this._sequencedShowHide(!0,t)),yield Promise.all(e)}))}hide(t){const i=Object.create(null,{hide:{get:()=>super.hide}});return e(this,void 0,void 0,(function*(){let e=[];e.push(i.hide.call(this,t)),e.push(this._sequencedShowHide(!1,t)),yield Promise.all(e)}))}_updateChildren(){super._updateChildren(),this._valuesDirty&&v(this._dataItems,(e=>{e.get("label").text.markDirtyText()})),(this.isDirty("legendLabelText")||this.isDirty("legendValueText"))&&v(this._dataItems,(e=>{this.updateLegendValue(e)})),this._arrange()}_arrange(){this._arrangeDown(this._lLabels),this._arrangeUp(this._lLabels),this._arrangeDown(this._rLabels),this._arrangeUp(this._rLabels),this._arrangeLeft(this._hLabels),this._arrangeRight(this._hLabels),v(this.dataItems,(e=>{this._updateTick(e)}))}_afterChanged(){super._afterChanged(),this._arrange()}processDataItem(e){if(super.processDataItem(e),null==e.get("fill")){let t=this.get("colors");t&&e.setRaw("fill",t.next())}}showDataItem(t,i){const s=Object.create(null,{showDataItem:{get:()=>super.showDataItem}});return e(this,void 0,void 0,(function*(){const e=[s.showDataItem.call(this,t,i)];b(i)||(i=this.get("stateAnimationDuration",0));const a=this.get("stateAnimationEasing");let r=t.get("value");const l=t.animate({key:"valueWorking",to:r,duration:i,easing:a});l&&e.push(l.waitForStop());const n=t.get("tick");n&&e.push(n.show(i));const o=t.get("label");o&&e.push(o.show(i));const h=t.get("slice");h&&e.push(h.show(i)),h.get("active")&&h.states.applyAnimate("active"),yield Promise.all(e)}))}hideDataItem(t,i){const s=Object.create(null,{hideDataItem:{get:()=>super.hideDataItem}});return e(this,void 0,void 0,(function*(){const e=[s.hideDataItem.call(this,t,i)],a=this.states.create("hidden",{});b(i)||(i=a.get("stateAnimationDuration",this.get("stateAnimationDuration",0)));const r=a.get("stateAnimationEasing",this.get("stateAnimationEasing")),l=t.animate({key:"valueWorking",to:0,duration:i,easing:r});l&&e.push(l.waitForStop());const n=t.get("tick");n&&e.push(n.hide(i));const o=t.get("label");o&&e.push(o.hide(i));const h=t.get("slice");h.hideTooltip(),h&&e.push(h.hide(i)),yield Promise.all(e)}))}disposeDataItem(e){super.disposeDataItem(e);let t=e.get("label");t&&(this.labels.removeValue(t),t.dispose());let i=e.get("tick");i&&(this.ticks.removeValue(i),i.dispose());let s=e.get("slice");s&&(this.slices.removeValue(s),s.dispose())}hoverDataItem(e){const t=e.get("slice");t&&!t.isHidden()&&t.hover()}unhoverDataItem(e){const t=e.get("slice");t&&t.unhover()}updateLegendMarker(e){if(e){const t=e.get("slice");if(t){const i=e.get("legendDataItem");if(i){const e=i.get("markerRectangle");v(w,(i=>{null!=t.get(i)&&e.set(i,t.get(i))}))}}}}_arrangeDown(e){if(e){let t=this._getNextDown();e.sort(((e,t)=>e.y>t.y?1:e.y<t.y?-1:0)),v(e,(e=>{const i=e.label.adjustedLocalBounds();let s=i.top;e.y+s<t&&(e.y=t-s),e.label.set("y",e.y),t=e.y+i.bottom}))}}_getNextUp(){return this.labelsContainer.maxHeight()}_getNextDown(){return 0}_arrangeUp(e){if(e){let t=this._getNextUp();e.sort(((e,t)=>e.y<t.y?1:e.y>t.y?-1:0)),v(e,(e=>{const i=e.label.adjustedLocalBounds();let s=i.bottom;e.y+s>t&&(e.y=t-s),e.label.set("y",e.y),t=e.y+i.top}))}}_arrangeRight(e){if(e){let t=0;e.sort(((e,t)=>e.y>t.y?1:e.y<t.y?-1:0)),v(e,(e=>{const i=e.label.adjustedLocalBounds();let s=i.left;e.y+s<t&&(e.y=t-s),e.label.set("x",e.y),t=e.y+i.right}))}}_arrangeLeft(e){if(e){let t=this.labelsContainer.maxWidth();e.sort(((e,t)=>e.y<t.y?1:e.y>t.y?-1:0)),v(e,(e=>{const i=e.label.adjustedLocalBounds();let s=i.right;e.y+s>t&&(e.y=t-s),e.label.set("x",e.y),t=e.y+i.left}))}}_updateSize(){super._updateSize(),this.markDirty()}_updateTick(e){}_dispose(){super._dispose();const e=this.chart;e&&e.series.removeValue(this)}}Object.defineProperty(ie,"className",{enumerable:!0,configurable:!0,writable:!0,value:"PercentSeries"}),Object.defineProperty(ie,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:a.classNames.concat([ie.className])});class se extends te{constructor(){super(...arguments),Object.defineProperty(this,"_maxRadius",{enumerable:!0,configurable:!0,writable:!0,value:1})}_afterNew(){super._afterNew(),this.seriesContainer.setAll({x:g,y:g})}_prepareChildren(){super._prepareChildren();const e=this.chartContainer,t=e.innerWidth(),i=e.innerHeight(),s=this.get("startAngle",0),a=this.get("endAngle",0),r=this.get("innerRadius");let l=k(0,0,s,a,1);const n=t/(l.right-l.left),o=i/(l.bottom-l.top);let c={left:0,right:0,top:0,bottom:0};if(r instanceof p){let e=r.value,l=Math.min(n,o);e=Math.max(l*e,l-Math.min(i,t))/l,c=k(0,0,s,a,e),this.setPrivateRaw("irModifyer",e/r.value)}l=D([l,c]);const u=this._maxRadius;this._maxRadius=Math.min(n,o);const d=h(this.get("radius",0),this._maxRadius);this.seriesContainer.setAll({dy:-d*(l.bottom+l.top)/2,dx:-d*(l.right+l.left)/2}),(this.isDirty("startAngle")||this.isDirty("endAngle")||u!=this._maxRadius)&&this.series.each((e=>{e._markDirtyKey("startAngle")})),(this.isDirty("innerRadius")||this.isDirty("radius"))&&this.series.each((e=>{e._markDirtyKey("innerRadius")}))}radius(e){let t=h(this.get("radius",0),this._maxRadius),i=h(this.get("innerRadius",0),t);if(e){let s=this.series.indexOf(e),a=this.series.length,r=e.get("radius");return null!=r?i+h(r,t-i):i+(t-i)/a*(s+1)}return t}innerRadius(e){const t=this.radius();let i=h(this.get("innerRadius",0),t);if(i<0&&(i=t+i),e){let s=this.series.indexOf(e),a=this.series.length,r=e.get("innerRadius");return null!=r?i+h(r,t-i):i+(t-i)/a*s}return i}}Object.defineProperty(se,"className",{enumerable:!0,configurable:!0,writable:!0,value:"PieChart"}),Object.defineProperty(se,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:te.classNames.concat([se.className])});class ae extends ie{_makeSlices(){return new R(A.new({}),(()=>$._new(this._root,{themeTags:P(this.slices.template.get("themeTags",[]),["pie","series"])},[this.slices.template])))}_makeLabels(){return new R(A.new({}),(()=>C._new(this._root,{themeTags:P(this.labels.template.get("themeTags",[]),["pie","series"])},[this.labels.template])))}_makeTicks(){return new R(A.new({}),(()=>r._new(this._root,{themeTags:P(this.ticks.template.get("themeTags",[]),["pie","series"])},[this.ticks.template])))}processDataItem(e){super.processDataItem(e);const t=this.makeSlice(e);t.on("scale",(()=>{this._updateTick(e)})),t.on("shiftRadius",(()=>{this._updateTick(e)})),t.events.on("positionchanged",(()=>{this._updateTick(e)}));const i=this.makeLabel(e);i.events.on("positionchanged",(()=>{this._updateTick(e)})),this.makeTick(e),t.events.on("positionchanged",(()=>{i.markDirty()}))}_getNextUp(){const e=this.chart;return e?e._maxRadius:this.labelsContainer.maxHeight()/2}_getNextDown(){const e=this.chart;return e?-e._maxRadius:-this.labelsContainer.maxHeight()/2}_prepareChildren(){super._prepareChildren();const e=this.chart;if(e){if(this.isDirty("alignLabels")){let e=this.labels.template;if(this.get("alignLabels"))e.set("textType","aligned");else{let t=e.get("textType");null!=t&&"aligned"!=t||e.set("textType","adjusted")}}if(this._valuesDirty||this.isDirty("radius")||this.isDirty("innerRadius")||this.isDirty("startAngle")||this.isDirty("endAngle")||this.isDirty("alignLabels")){this.markDirtyBounds();const t=this.get("startAngle",e.get("startAngle",-90)),i=this.get("endAngle",e.get("endAngle",270))-t;let s=t;const a=e.radius(this);this.setPrivateRaw("radius",a);let r=e.innerRadius(this)*e.getPrivate("irModifyer",1);r<0&&(r=a+r),v(this._dataItems,(e=>{this.updateLegendValue(e);let t=i*e.get("valuePercentTotal")/100;const l=e.get("slice");if(l){l.set("radius",a),l.set("innerRadius",r),l.set("startAngle",s),l.set("arc",t);const i=e.get("fill");l._setDefault("fill",i),l._setDefault("stroke",i)}let n=c(s+t/2);const o=e.get("label");if(o&&(o.setPrivate("radius",a),o.setPrivate("innerRadius",r),o.set("labelAngle",n),"aligned"==o.get("textType"))){let e=a+o.get("radius",0),t=a*u(n);n>90&&n<=270?(o.isHidden()||o.isHiding()||this._lLabels.push({label:o,y:t}),e*=-1,e-=this.labelsContainer.get("paddingLeft",0),o.set("centerX",f),o.setPrivateRaw("left",!0)):(o.isHidden()||o.isHiding()||this._rLabels.push({label:o,y:t}),e+=this.labelsContainer.get("paddingRight",0),o.set("centerX",0),o.setPrivateRaw("left",!1)),o.set("x",e),o.set("y",a*u(n))}s+=t,this._updateTick(e)}))}}}_updateTick(e){const t=e.get("tick"),i=e.get("label"),s=e.get("slice"),a=t.get("location",1);if(t&&i&&s){const e=(s.get("shiftRadius",0)+s.get("radius",0))*s.get("scale",1)*a,r=i.get("labelAngle",0),l=d(r),n=u(r),o=this.labelsContainer,h=o.get("paddingLeft",0),c=o.get("paddingRight",0);let g=0,p=0;if(g=i.x(),p=i.y(),"circular"==i.get("textType")){const e=i.radius()-i.get("paddingBottom",0),t=i.get("labelAngle",0);g=e*d(t),p=e*u(t)}let y=-c;i.getPrivate("left")&&(y=h),t.set("points",[{x:s.x()+e*l,y:s.y()+e*n},{x:g+y,y:p},{x:g,y:p}])}}_positionBullet(e){const t=e.get("sprite");if(t){const i=t.dataItem.get("slice");if(i){const s=i.get("innerRadius",0),a=i.get("radius",0),r=i.get("startAngle",0)+i.get("arc",0)*e.get("locationX",.5),l=s+(a-s)*e.get("locationY",.5);t.setAll({x:d(r)*l,y:u(r)*l})}}}}Object.defineProperty(ae,"className",{enumerable:!0,configurable:!0,writable:!0,value:"PieSeries"}),Object.defineProperty(ae,"classNames",{enumerable:!0,configurable:!0,writable:!0,value:ie.classNames.concat([ae.className])});export{se as PieChartAm5,ae as PieSeriesAm5};