@arcgis/charts-components 5.1.0-next.80 → 5.1.0-next.82

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 (271) hide show
  1. package/dist/cdn/2ADFKCPA.js +2 -0
  2. package/dist/cdn/2BAQEPCK.js +2 -0
  3. package/dist/cdn/3G26ZRB7.js +2 -0
  4. package/dist/cdn/4ASFVM5K.js +2 -0
  5. package/dist/cdn/4SRUJNYL.js +2 -0
  6. package/dist/cdn/5GD3PE32.js +2 -0
  7. package/dist/cdn/5U2X7LKH.js +2 -0
  8. package/dist/cdn/623QYMIQ.js +2 -0
  9. package/dist/cdn/6AUW6C3P.js +2 -0
  10. package/dist/cdn/6OUQ7ORF.js +2 -0
  11. package/dist/cdn/7CVRX5TJ.js +2 -0
  12. package/dist/cdn/7QYOWBFU.js +2 -0
  13. package/dist/cdn/7R3FEB3R.js +2 -0
  14. package/dist/cdn/7ZK3YGN6.js +2 -0
  15. package/dist/cdn/{4LH6RELA.js → A3N7FAEK.js} +1 -1
  16. package/dist/cdn/AVUM7BWA.js +2 -0
  17. package/dist/cdn/AZLVOWWT.js +99 -0
  18. package/dist/cdn/B7RU4X5Z.js +2 -0
  19. package/dist/cdn/BHFEFC6X.js +2 -0
  20. package/dist/cdn/BJAQIZB3.js +2 -0
  21. package/dist/cdn/BO7RCJZB.js +2 -0
  22. package/dist/cdn/{2NN5AE5D.js → CJ7NTZVC.js} +1 -1
  23. package/dist/cdn/CV3MN2OB.js +2 -0
  24. package/dist/cdn/D5EMJRBB.js +2 -0
  25. package/dist/cdn/DS42P2EG.js +2 -0
  26. package/dist/cdn/EE7MSNVY.js +2 -0
  27. package/dist/cdn/{LHNPAXRS.js → EFXQZRUY.js} +1 -1
  28. package/dist/cdn/EQ3IZDDQ.js +2 -0
  29. package/dist/cdn/{45P5JEKC.js → F5NS6O5R.js} +1 -1
  30. package/dist/cdn/{GPXGV2W3.js → FK52K255.js} +1 -1
  31. package/dist/cdn/FUFEC4JX.js +2 -0
  32. package/dist/cdn/FUHOULT2.js +2 -0
  33. package/dist/cdn/{HESIIJTB.js → FUOCURYO.js} +1 -1
  34. package/dist/cdn/FX754GOP.js +2 -0
  35. package/dist/cdn/{EEBFNI6X.js → G63R4TEN.js} +1 -1
  36. package/dist/cdn/{47WDNO2P.js → GEXUXKE2.js} +1 -1
  37. package/dist/cdn/GVBLRXKE.js +2 -0
  38. package/dist/cdn/HJRYXAVR.js +2 -0
  39. package/dist/cdn/HKGGDNSY.js +2 -0
  40. package/dist/cdn/HLSO5KDC.js +2 -0
  41. package/dist/cdn/{VOR2H3D7.js → IEPVBL2M.js} +1 -1
  42. package/dist/cdn/IY7457CX.js +2 -0
  43. package/dist/cdn/J6J3DXQC.js +2 -0
  44. package/dist/cdn/K4DKNVD7.js +2 -0
  45. package/dist/cdn/K76KZ3TY.js +2 -0
  46. package/dist/cdn/KCILWIMQ.js +2 -0
  47. package/dist/cdn/KGLVHBMW.js +2 -0
  48. package/dist/cdn/KZOJBRI6.js +2 -0
  49. package/dist/cdn/L4Y3GEOG.js +2 -0
  50. package/dist/cdn/LJU5JLT7.js +2 -0
  51. package/dist/cdn/LYZNGXSF.js +2 -0
  52. package/dist/cdn/{KFBMPA6U.js → MIYIXPXS.js} +1 -1
  53. package/dist/cdn/MUHGSAN5.js +2 -0
  54. package/dist/cdn/{PV4ROV2W.js → N2RUZDL5.js} +1 -1
  55. package/dist/cdn/{IVWZLS7W.js → NWRE6XI6.js} +1 -1
  56. package/dist/cdn/O4645DWG.js +2 -0
  57. package/dist/cdn/{MBC2KQUK.js → OLODR474.js} +1 -1
  58. package/dist/cdn/OOHBEF67.js +2 -0
  59. package/dist/cdn/OTMPMNL4.js +2 -0
  60. package/dist/cdn/OWRWKXFL.js +2 -0
  61. package/dist/cdn/{HWJIFGRR.js → PMFA3GVU.js} +1 -1
  62. package/dist/cdn/PORI3GND.js +2 -0
  63. package/dist/cdn/PQZYONXN.js +2 -0
  64. package/dist/cdn/PSCAEQLN.js +2 -0
  65. package/dist/cdn/PWCAXPNP.js +2 -0
  66. package/dist/cdn/QILOZFO7.js +58 -0
  67. package/dist/cdn/QOJZM6EZ.js +2 -0
  68. package/dist/cdn/{FOYNQPWL.js → QX3TWFL2.js} +1 -1
  69. package/dist/cdn/R2BGMXLL.js +2 -0
  70. package/dist/cdn/{ZEQ6Q5SM.js → RCAB2G52.js} +1 -1
  71. package/dist/cdn/RN72ZH7K.js +2 -0
  72. package/dist/cdn/RS6N2KGI.js +2 -0
  73. package/dist/cdn/S2H4RCXL.js +2 -0
  74. package/dist/cdn/S5FXOTG4.js +2 -0
  75. package/dist/cdn/SZKVED6M.js +2 -0
  76. package/dist/cdn/{ICCNKIGD.js → TCGJR6OG.js} +1 -1
  77. package/dist/cdn/TITJWWP7.js +2 -0
  78. package/dist/cdn/{IZCUAYGW.js → TKTNTVES.js} +1 -1
  79. package/dist/cdn/UBI26YGI.js +2 -0
  80. package/dist/cdn/UC2KHUNN.js +2 -0
  81. package/dist/cdn/{MGIPPTHG.js → UMXNCRW5.js} +1 -1
  82. package/dist/cdn/UOC3SKN2.js +2 -0
  83. package/dist/cdn/UR6A4VM5.js +2 -0
  84. package/dist/cdn/UWIRHZ3N.js +2 -0
  85. package/dist/cdn/V7CMOKQQ.js +2 -0
  86. package/dist/cdn/VDZ5R7WX.js +2 -0
  87. package/dist/cdn/VPVFOEEH.js +2 -0
  88. package/dist/cdn/{SYV4I4MD.js → WFGGTYWP.js} +2 -2
  89. package/dist/cdn/WG43MAVJ.js +2 -0
  90. package/dist/cdn/WRNEDEFZ.js +2 -0
  91. package/dist/cdn/WY264B2J.js +2 -0
  92. package/dist/cdn/X7ENJ4HH.js +2 -0
  93. package/dist/cdn/XBBP6DN4.js +2 -0
  94. package/dist/cdn/XHVWL7MY.js +2 -0
  95. package/dist/cdn/XR44W6VF.js +2 -0
  96. package/dist/cdn/YCXOS27R.js +2 -0
  97. package/dist/cdn/YGCLG2LA.js +2 -0
  98. package/dist/cdn/YJXIGYX6.js +2 -0
  99. package/dist/cdn/YUN4XIA2.js +2 -0
  100. package/dist/cdn/YWFHR2KJ.js +2 -0
  101. package/dist/cdn/ZC6NYZDM.js +2 -0
  102. package/dist/cdn/ZKVDUGFR.js +2 -0
  103. package/dist/cdn/index.js +1 -1
  104. package/dist/chunks/action-bar-utils.js +12 -15
  105. package/dist/chunks/bar-chart-model.js +6 -9
  106. package/dist/chunks/bar-chart-series.js +8 -10
  107. package/dist/chunks/box-plot-data.js +51 -53
  108. package/dist/chunks/box-plot-model.js +16 -15
  109. package/dist/chunks/chart-model.js +50 -53
  110. package/dist/chunks/chart-ui-utils2.js +51 -54
  111. package/dist/chunks/class-breaks.js +1 -1
  112. package/dist/chunks/combo-bar-line-chart-model.js +20 -19
  113. package/dist/chunks/data.js +10 -13
  114. package/dist/chunks/gauge-model.js +10 -13
  115. package/dist/chunks/generate-x-axis-title.js +8 -11
  116. package/dist/chunks/heat-chart-model.js +6 -9
  117. package/dist/chunks/histogram-data.js +37 -40
  118. package/dist/chunks/index.js +4382 -5208
  119. package/dist/chunks/index2.js +28 -27
  120. package/dist/chunks/index4.js +95 -63
  121. package/dist/chunks/index5.js +66 -0
  122. package/dist/chunks/line-chart-model.js +1 -1
  123. package/dist/chunks/model-setter.js +21 -24
  124. package/dist/chunks/model-with-guides.js +8 -10
  125. package/dist/chunks/model-with-tooltips.js +26 -29
  126. package/dist/chunks/model-with-y-guides.js +0 -3
  127. package/dist/chunks/negative-values-stacked-to-baseline.js +48 -50
  128. package/dist/chunks/pie-chart-data.js +57 -60
  129. package/dist/chunks/pie-chart-model.js +1 -4
  130. package/dist/chunks/radar-chart-model.js +6 -9
  131. package/dist/chunks/rotated-state.js +7 -10
  132. package/dist/chunks/scatterplot-model.js +9 -12
  133. package/dist/chunks/serial-chart-data.js +187 -189
  134. package/dist/chunks/serial-chart-model.js +12 -14
  135. package/dist/chunks/series-length.js +4 -7
  136. package/dist/chunks/series.js +6 -9
  137. package/dist/chunks/utils.js +58 -60
  138. package/dist/chunks/utils2.js +22 -25
  139. package/dist/chunks/web-component-utils.js +19 -19
  140. package/dist/components/arcgis-chart/customElement.js +8753 -8065
  141. package/dist/components/arcgis-charts-action-bar/customElement.js +1 -1
  142. package/dist/components/arcgis-charts-config-bar-chart/customElement.js +7 -9
  143. package/dist/components/arcgis-charts-config-bar-chart-data/customElement.js +4 -7
  144. package/dist/components/arcgis-charts-config-bar-chart-popover/customElement.js +9 -12
  145. package/dist/components/arcgis-charts-config-bar-chart-series/customElement.js +1 -4
  146. package/dist/components/arcgis-charts-config-bar-chart-series-popover/customElement.js +5 -8
  147. package/dist/components/arcgis-charts-config-box-plot/customElement.js +5 -7
  148. package/dist/components/arcgis-charts-config-box-plot-data/customElement.js +0 -3
  149. package/dist/components/arcgis-charts-config-box-plot-popover/customElement.js +1 -4
  150. package/dist/components/arcgis-charts-config-box-plot-series/customElement.js +0 -3
  151. package/dist/components/arcgis-charts-config-box-plot-series-popover/customElement.js +1 -4
  152. package/dist/components/arcgis-charts-config-chart-rename-popover/customElement.js +9 -12
  153. package/dist/components/arcgis-charts-config-create-flow/customElement.js +11 -14
  154. package/dist/components/arcgis-charts-config-font-style/customElement.js +0 -3
  155. package/dist/components/arcgis-charts-config-format/customElement.js +2 -4
  156. package/dist/components/arcgis-charts-config-format-popover/customElement.js +0 -3
  157. package/dist/components/arcgis-charts-config-general/customElement.js +1 -4
  158. package/dist/components/arcgis-charts-config-guide/customElement.js +12 -14
  159. package/dist/components/arcgis-charts-config-guide-popover/customElement.js +3 -6
  160. package/dist/components/arcgis-charts-config-guides-type-popover/customElement.js +3 -6
  161. package/dist/components/arcgis-charts-config-heat-chart/customElement.js +7 -9
  162. package/dist/components/arcgis-charts-config-heat-chart-data/customElement.js +12 -15
  163. package/dist/components/arcgis-charts-config-heat-chart-popover/customElement.js +10 -13
  164. package/dist/components/arcgis-charts-config-histogram/customElement.js +11 -13
  165. package/dist/components/arcgis-charts-config-histogram-data/customElement.js +7 -10
  166. package/dist/components/arcgis-charts-config-histogram-popover/customElement.js +20 -23
  167. package/dist/components/arcgis-charts-config-line-chart/customElement.js +6 -8
  168. package/dist/components/arcgis-charts-config-line-chart-data/customElement.js +1 -4
  169. package/dist/components/arcgis-charts-config-line-chart-popover/customElement.js +3 -6
  170. package/dist/components/arcgis-charts-config-line-chart-series/customElement.js +0 -3
  171. package/dist/components/arcgis-charts-config-line-chart-series-popover/customElement.js +1 -4
  172. package/dist/components/arcgis-charts-config-pie-chart/customElement.js +5 -7
  173. package/dist/components/arcgis-charts-config-pie-chart-data/customElement.js +0 -3
  174. package/dist/components/arcgis-charts-config-pie-chart-popover/customElement.js +5 -8
  175. package/dist/components/arcgis-charts-config-pie-chart-slices/customElement.js +1 -4
  176. package/dist/components/arcgis-charts-config-pie-chart-slices-popover/customElement.js +1 -4
  177. package/dist/components/arcgis-charts-config-scatter-plot/customElement.js +6 -8
  178. package/dist/components/arcgis-charts-config-scatter-plot-data/customElement.js +1 -4
  179. package/dist/components/arcgis-charts-config-scatter-plot-popover/customElement.js +9 -12
  180. package/dist/components/arcgis-charts-config-select-chart-type-popover/customElement.js +1 -4
  181. package/dist/components/arcgis-charts-config-view-charts/customElement.js +0 -3
  182. package/dist/components/arcgis-charts-info-modal/customElement.js +1 -4
  183. package/dist/docs/api.json +1 -1
  184. package/dist/docs/docs.json +1 -1
  185. package/dist/docs/vscode.html-custom-data.json +1 -1
  186. package/dist/docs/web-types.json +1 -1
  187. package/dist/index.js +305 -304
  188. package/package.json +3 -3
  189. package/dist/cdn/2EFFPZSB.js +0 -2
  190. package/dist/cdn/3AIE3FUA.js +0 -2
  191. package/dist/cdn/3LYW7DPP.js +0 -2
  192. package/dist/cdn/3MHB5VAM.js +0 -37
  193. package/dist/cdn/3VEQ7HMG.js +0 -2
  194. package/dist/cdn/4GCUO37L.js +0 -2
  195. package/dist/cdn/4IYPGSMC.js +0 -2
  196. package/dist/cdn/4YZHTVL7.js +0 -2
  197. package/dist/cdn/52XNA2DH.js +0 -2
  198. package/dist/cdn/57CR5SOU.js +0 -2
  199. package/dist/cdn/5ZYCFKFX.js +0 -2
  200. package/dist/cdn/66KEM4LG.js +0 -2
  201. package/dist/cdn/6DGQQ4V4.js +0 -2
  202. package/dist/cdn/6FB455E4.js +0 -2
  203. package/dist/cdn/6P6HFKV2.js +0 -2
  204. package/dist/cdn/7GWVJEAI.js +0 -2
  205. package/dist/cdn/7I2D5SVD.js +0 -2
  206. package/dist/cdn/7ICRLJ5R.js +0 -2
  207. package/dist/cdn/7K2V6YNA.js +0 -2
  208. package/dist/cdn/7X23S5SF.js +0 -2
  209. package/dist/cdn/A4FCRGKH.js +0 -2
  210. package/dist/cdn/ALMGT4ZN.js +0 -2
  211. package/dist/cdn/BBBLK7RI.js +0 -2
  212. package/dist/cdn/BCPVUKSF.js +0 -2
  213. package/dist/cdn/CXSNVG3M.js +0 -2
  214. package/dist/cdn/DYQRIA4G.js +0 -2
  215. package/dist/cdn/E5P3LY6E.js +0 -2
  216. package/dist/cdn/E6S67HXA.js +0 -2
  217. package/dist/cdn/FPBBWTJ7.js +0 -2
  218. package/dist/cdn/G2EWR4OS.js +0 -2
  219. package/dist/cdn/GDTHQBCP.js +0 -2
  220. package/dist/cdn/H32MCV7J.js +0 -2
  221. package/dist/cdn/HNRWEWFM.js +0 -2
  222. package/dist/cdn/IKRCUXIB.js +0 -2
  223. package/dist/cdn/IO7TJZDW.js +0 -2
  224. package/dist/cdn/IXGXDRYR.js +0 -2
  225. package/dist/cdn/JB527BEY.js +0 -2
  226. package/dist/cdn/JLFVNF5U.js +0 -2
  227. package/dist/cdn/JZPDA4LD.js +0 -2
  228. package/dist/cdn/KC5H5WGK.js +0 -2
  229. package/dist/cdn/KFIYYH54.js +0 -2
  230. package/dist/cdn/KQD5PSPV.js +0 -2
  231. package/dist/cdn/KRGZLJM5.js +0 -2
  232. package/dist/cdn/KUO2EPUE.js +0 -2
  233. package/dist/cdn/LD2K2FUM.js +0 -2
  234. package/dist/cdn/LNTDBU7W.js +0 -2
  235. package/dist/cdn/LPGL66XP.js +0 -2
  236. package/dist/cdn/LT4HKSXR.js +0 -2
  237. package/dist/cdn/LX5QI6J3.js +0 -2
  238. package/dist/cdn/MFIKF7RC.js +0 -2
  239. package/dist/cdn/NFBNUOS2.js +0 -2
  240. package/dist/cdn/NHN6CQRE.js +0 -2
  241. package/dist/cdn/OQLV6YYT.js +0 -2
  242. package/dist/cdn/P2MVLEZ7.js +0 -2
  243. package/dist/cdn/Q3YDW4V6.js +0 -2
  244. package/dist/cdn/QF7PCBW5.js +0 -2
  245. package/dist/cdn/QGLWCPMB.js +0 -2
  246. package/dist/cdn/QJKJNE7A.js +0 -2
  247. package/dist/cdn/RI65IJRW.js +0 -2
  248. package/dist/cdn/SJWEUS4D.js +0 -2
  249. package/dist/cdn/SLB3Y7Q2.js +0 -2
  250. package/dist/cdn/SUUMGHCO.js +0 -2
  251. package/dist/cdn/T47JP5N6.js +0 -2
  252. package/dist/cdn/TJ3ALCTV.js +0 -2
  253. package/dist/cdn/TZG37HE4.js +0 -2
  254. package/dist/cdn/UM7JZ2DY.js +0 -2
  255. package/dist/cdn/V45SCYTC.js +0 -2
  256. package/dist/cdn/VPLVBL2P.js +0 -2
  257. package/dist/cdn/WTQDFRE7.js +0 -2
  258. package/dist/cdn/X234G7PD.js +0 -2
  259. package/dist/cdn/X7FQPP5T.js +0 -2
  260. package/dist/cdn/XJFKEIB4.js +0 -2
  261. package/dist/cdn/XLHQQCTU.js +0 -2
  262. package/dist/cdn/XSH2YEV4.js +0 -2
  263. package/dist/cdn/Y3E4HJZ6.js +0 -2
  264. package/dist/cdn/Y5KIJ6GX.js +0 -120
  265. package/dist/cdn/YKJO6KSB.js +0 -2
  266. package/dist/cdn/YSZU65DU.js +0 -2
  267. package/dist/cdn/ZMVYIIG4.js +0 -2
  268. package/dist/chunks/bg_BG2.js +0 -10
  269. package/dist/chunks/sk_SK.js +0 -10
  270. /package/dist/cdn/{ZRULG7VV.js → GKNEQGLI.js} +0 -0
  271. /package/dist/cdn/{J6TUXYMO.js → S5OM65RV.js} +0 -0
@@ -0,0 +1,99 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
+ import{D as et,E as _r,a as ha,d as ma,g as Vr,k as Dn,l as ir,n as Do,r as Bn,t as ce,u as gr,v as Qt,w as Zt,x as be,y as Le,z as we}from"./Y7IQV44J.js";import{c as No,d as Nn,f as qt,g as gt}from"./MIYIXPXS.js";import{a as g,b as j,c as Ae,e as _i,f as bt,h as je,i as zi,j as Bo,k as G,l as vt,n as dt,o as $e,p as Mo,q as yr,s as $o,t as qo,v as ut,y as K}from"./ETLJKITO.js";import{H as $t}from"./GKNEQGLI.js";import{b as Y,d as Af}from"./QPIMTXPL.js";export default $arcgis.t(([{computeStatisticsHistograms:Hg,fetchPixelFeatureSet:Gg,computeRasterAttributeTable:Qg},np,so,Zg,Kg,Jg,Yg,Xg,eb,tb,sp,rb,oo,hn,op,ib,Di,Rc,ab,kc,nb,{substitute:Re},{sqlLiteral:sb},lo,ob,lb,db])=>{var Rd=Y((Va,qd)=>{(function(t,e){typeof Va=="object"&&typeof qd<"u"?e(Va):typeof define=="function"&&define.amd?define(["exports"],e):e(t.URI=t.URI||{})})(Va,(function(t){"use strict";function e(){for(var T=arguments.length,w=Array(T),I=0;I<T;I++)w[I]=arguments[I];if(w.length>1){w[0]=w[0].slice(0,-1);for(var L=w.length-1,D=1;D<L;++D)w[D]=w[D].slice(1,-1);return w[L]=w[L].slice(1),w.join("")}else return w[0]}function r(T){return"(?:"+T+")"}function a(T){return T===void 0?"undefined":T===null?"null":Object.prototype.toString.call(T).split(" ").pop().split("]").shift().toLowerCase()}function i(T){return T.toUpperCase()}function n(T){return T!=null?T instanceof Array?T:typeof T.length!="number"||T.split||T.setInterval||T.call?[T]:Array.prototype.slice.call(T):[]}function s(T,w){var I=T;if(w)for(var L in w)I[L]=w[L];return I}function o(T){var w="[A-Za-z]",I="[\\x0D]",L="[0-9]",D="[\\x22]",z=e(L,"[A-Fa-f]"),ee="[\\x0A]",ue="[\\x20]",ye=r(r("%[EFef]"+z+"%"+z+z+"%"+z+z)+"|"+r("%[89A-Fa-f]"+z+"%"+z+z)+"|"+r("%"+z+z)),Ve="[\\:\\/\\?\\#\\[\\]\\@]",le="[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",De=e(Ve,le),_e=T?"[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]":"[]",Ee=T?"[\\uE000-\\uF8FF]":"[]",pe=e(w,L,"[\\-\\.\\_\\~]",_e),Be=r(w+e(w,L,"[\\+\\-\\.]")+"*"),Se=r(r(ye+"|"+e(pe,le,"[\\:]"))+"*"),kr=r(r("25[0-5]")+"|"+r("2[0-4]"+L)+"|"+r("1"+L+L)+"|"+r("[1-9]"+L)+"|"+L),mt=r(r("25[0-5]")+"|"+r("2[0-4]"+L)+"|"+r("1"+L+L)+"|"+r("0?[1-9]"+L)+"|0?0?"+L),Ot=r(mt+"\\."+mt+"\\."+mt+"\\."+mt),Ce=r(z+"{1,4}"),yt=r(r(Ce+"\\:"+Ce)+"|"+Ot),At=r(r(Ce+"\\:")+"{6}"+yt),Gt=r("\\:\\:"+r(Ce+"\\:")+"{5}"+yt),jr=r(r(Ce)+"?\\:\\:"+r(Ce+"\\:")+"{4}"+yt),er=r(r(r(Ce+"\\:")+"{0,1}"+Ce)+"?\\:\\:"+r(Ce+"\\:")+"{3}"+yt),Ri=r(r(r(Ce+"\\:")+"{0,2}"+Ce)+"?\\:\\:"+r(Ce+"\\:")+"{2}"+yt),ca=r(r(r(Ce+"\\:")+"{0,3}"+Ce)+"?\\:\\:"+Ce+"\\:"+yt),pa=r(r(r(Ce+"\\:")+"{0,4}"+Ce)+"?\\:\\:"+yt),ni=r(r(r(Ce+"\\:")+"{0,5}"+Ce)+"?\\:\\:"+Ce),si=r(r(r(Ce+"\\:")+"{0,6}"+Ce)+"?\\:\\:"),tr=r([At,Gt,jr,er,Ri,ca,pa,ni,si].join("|")),oi=r(r(pe+"|"+ye)+"+"),En=r(tr+"\\%25"+oi),Wr=r(tr+r("\\%25|\\%(?!"+z+"{2})")+oi),wf=r("[vV]"+z+"+\\."+e(pe,le,"[\\:]")+"+"),xf=r("\\["+r(Wr+"|"+tr+"|"+wf)+"\\]"),Ao=r(r(ye+"|"+e(pe,le))+"*"),ki=r(xf+"|"+Ot+"(?!"+Ao+")|"+Ao),ji=r(L+"*"),Po=r(r(Se+"@")+"?"+ki+r("\\:"+ji)+"?"),Wi=r(ye+"|"+e(pe,le,"[\\:\\@]")),Cf=r(Wi+"*"),Eo=r(Wi+"+"),Tf=r(r(ye+"|"+e(pe,le,"[\\@]"))+"+"),rr=r(r("\\/"+Cf)+"*"),li=r("\\/"+r(Eo+rr)+"?"),Ln=r(Tf+rr),fa=r(Eo+rr),di="(?!"+Wi+")",Rx=r(rr+"|"+li+"|"+Ln+"|"+fa+"|"+di),ui=r(r(Wi+"|"+e("[\\/\\?]",Ee))+"*"),Vi=r(r(Wi+"|[\\/\\?]")+"*"),Lo=r(r("\\/\\/"+Po+rr)+"|"+li+"|"+fa+"|"+di),Ff=r(Be+"\\:"+Lo+r("\\?"+ui)+"?"+r("\\#"+Vi)+"?"),If=r(r("\\/\\/"+Po+rr)+"|"+li+"|"+Ln+"|"+di),Of=r(If+r("\\?"+ui)+"?"+r("\\#"+Vi)+"?"),kx=r(Ff+"|"+Of),jx=r(Be+"\\:"+Lo+r("\\?"+ui)+"?"),Wx="^("+Be+")\\:"+r(r("\\/\\/("+r("("+Se+")@")+"?("+ki+")"+r("\\:("+ji+")")+"?)")+"?("+rr+"|"+li+"|"+fa+"|"+di+")")+r("\\?("+ui+")")+"?"+r("\\#("+Vi+")")+"?$",Vx="^(){0}"+r(r("\\/\\/("+r("("+Se+")@")+"?("+ki+")"+r("\\:("+ji+")")+"?)")+"?("+rr+"|"+li+"|"+Ln+"|"+di+")")+r("\\?("+ui+")")+"?"+r("\\#("+Vi+")")+"?$",_x="^("+Be+")\\:"+r(r("\\/\\/("+r("("+Se+")@")+"?("+ki+")"+r("\\:("+ji+")")+"?)")+"?("+rr+"|"+li+"|"+fa+"|"+di+")")+r("\\?("+ui+")")+"?$",zx="^"+r("\\#("+Vi+")")+"?$",Ux="^"+r("("+Se+")@")+"?("+ki+")"+r("\\:("+ji+")")+"?$";return{NOT_SCHEME:new RegExp(e("[^]",w,L,"[\\+\\-\\.]"),"g"),NOT_USERINFO:new RegExp(e("[^\\%\\:]",pe,le),"g"),NOT_HOST:new RegExp(e("[^\\%\\[\\]\\:]",pe,le),"g"),NOT_PATH:new RegExp(e("[^\\%\\/\\:\\@]",pe,le),"g"),NOT_PATH_NOSCHEME:new RegExp(e("[^\\%\\/\\@]",pe,le),"g"),NOT_QUERY:new RegExp(e("[^\\%]",pe,le,"[\\:\\@\\/\\?]",Ee),"g"),NOT_FRAGMENT:new RegExp(e("[^\\%]",pe,le,"[\\:\\@\\/\\?]"),"g"),ESCAPE:new RegExp(e("[^]",pe,le),"g"),UNRESERVED:new RegExp(pe,"g"),OTHER_CHARS:new RegExp(e("[^\\%]",pe,De),"g"),PCT_ENCODED:new RegExp(ye,"g"),IPV4ADDRESS:new RegExp("^("+Ot+")$"),IPV6ADDRESS:new RegExp("^\\[?("+tr+")"+r(r("\\%25|\\%(?!"+z+"{2})")+"("+oi+")")+"?\\]?$")}}var l=o(!1),d=o(!0),u=(function(){function T(w,I){var L=[],D=!0,z=!1,ee=void 0;try{for(var ue=w[Symbol.iterator](),ye;!(D=(ye=ue.next()).done)&&(L.push(ye.value),!(I&&L.length===I));D=!0);}catch(Ve){z=!0,ee=Ve}finally{try{!D&&ue.return&&ue.return()}finally{if(z)throw ee}}return L}return function(w,I){if(Array.isArray(w))return w;if(Symbol.iterator in Object(w))return T(w,I);throw new TypeError("Invalid attempt to destructure non-iterable instance")}})(),c=function(T){if(Array.isArray(T)){for(var w=0,I=Array(T.length);w<T.length;w++)I[w]=T[w];return I}else return Array.from(T)},f=2147483647,p=36,h=1,m=26,y=38,b=700,v=72,S=128,C="-",F=/^xn--/,O=/[^\0-\x7E]/,N=/[\x2E\u3002\uFF0E\uFF61]/g,E={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},P=p-h,R=Math.floor,$=String.fromCharCode;function q(T){throw new RangeError(E[T])}function B(T,w){for(var I=[],L=T.length;L--;)I[L]=w(T[L]);return I}function k(T,w){var I=T.split("@"),L="";I.length>1&&(L=I[0]+"@",T=I[1]),T=T.replace(N,".");var D=T.split("."),z=B(D,w).join(".");return L+z}function M(T){for(var w=[],I=0,L=T.length;I<L;){var D=T.charCodeAt(I++);if(D>=55296&&D<=56319&&I<L){var z=T.charCodeAt(I++);(z&64512)==56320?w.push(((D&1023)<<10)+(z&1023)+65536):(w.push(D),I--)}else w.push(D)}return w}var _=function(w){return String.fromCodePoint.apply(String,c(w))},Q=function(w){return w-48<10?w-22:w-65<26?w-65:w-97<26?w-97:p},V=function(w,I){return w+22+75*(w<26)-((I!=0)<<5)},Z=function(w,I,L){var D=0;for(w=L?R(w/b):w>>1,w+=R(w/I);w>P*m>>1;D+=p)w=R(w/P);return R(D+(P+1)*w/(w+y))},U=function(w){var I=[],L=w.length,D=0,z=S,ee=v,ue=w.lastIndexOf(C);ue<0&&(ue=0);for(var ye=0;ye<ue;++ye)w.charCodeAt(ye)>=128&&q("not-basic"),I.push(w.charCodeAt(ye));for(var Ve=ue>0?ue+1:0;Ve<L;){for(var le=D,De=1,_e=p;;_e+=p){Ve>=L&&q("invalid-input");var Ee=Q(w.charCodeAt(Ve++));(Ee>=p||Ee>R((f-D)/De))&&q("overflow"),D+=Ee*De;var pe=_e<=ee?h:_e>=ee+m?m:_e-ee;if(Ee<pe)break;var Be=p-pe;De>R(f/Be)&&q("overflow"),De*=Be}var Se=I.length+1;ee=Z(D-le,Se,le==0),R(D/Se)>f-z&&q("overflow"),z+=R(D/Se),D%=Se,I.splice(D++,0,z)}return String.fromCodePoint.apply(String,I)},oe=function(w){var I=[];w=M(w);var L=w.length,D=S,z=0,ee=v,ue=!0,ye=!1,Ve=void 0;try{for(var le=w[Symbol.iterator](),De;!(ue=(De=le.next()).done);ue=!0){var _e=De.value;_e<128&&I.push($(_e))}}catch(Wr){ye=!0,Ve=Wr}finally{try{!ue&&le.return&&le.return()}finally{if(ye)throw Ve}}var Ee=I.length,pe=Ee;for(Ee&&I.push(C);pe<L;){var Be=f,Se=!0,kr=!1,mt=void 0;try{for(var Ot=w[Symbol.iterator](),Ce;!(Se=(Ce=Ot.next()).done);Se=!0){var yt=Ce.value;yt>=D&&yt<Be&&(Be=yt)}}catch(Wr){kr=!0,mt=Wr}finally{try{!Se&&Ot.return&&Ot.return()}finally{if(kr)throw mt}}var At=pe+1;Be-D>R((f-z)/At)&&q("overflow"),z+=(Be-D)*At,D=Be;var Gt=!0,jr=!1,er=void 0;try{for(var Ri=w[Symbol.iterator](),ca;!(Gt=(ca=Ri.next()).done);Gt=!0){var pa=ca.value;if(pa<D&&++z>f&&q("overflow"),pa==D){for(var ni=z,si=p;;si+=p){var tr=si<=ee?h:si>=ee+m?m:si-ee;if(ni<tr)break;var oi=ni-tr,En=p-tr;I.push($(V(tr+oi%En,0))),ni=R(oi/En)}I.push($(V(ni,0))),ee=Z(z,At,pe==Ee),z=0,++pe}}}catch(Wr){jr=!0,er=Wr}finally{try{!Gt&&Ri.return&&Ri.return()}finally{if(jr)throw er}}++z,++D}return I.join("")},Fe=function(w){return k(w,function(I){return F.test(I)?U(I.slice(4).toLowerCase()):I})},ke=function(w){return k(w,function(I){return O.test(I)?"xn--"+oe(I):I})},te={version:"2.1.0",ucs2:{decode:M,encode:_},decode:U,encode:oe,toASCII:ke,toUnicode:Fe},ve={};function Ie(T){var w=T.charCodeAt(0),I=void 0;return w<16?I="%0"+w.toString(16).toUpperCase():w<128?I="%"+w.toString(16).toUpperCase():w<2048?I="%"+(w>>6|192).toString(16).toUpperCase()+"%"+(w&63|128).toString(16).toUpperCase():I="%"+(w>>12|224).toString(16).toUpperCase()+"%"+(w>>6&63|128).toString(16).toUpperCase()+"%"+(w&63|128).toString(16).toUpperCase(),I}function We(T){for(var w="",I=0,L=T.length;I<L;){var D=parseInt(T.substr(I+1,2),16);if(D<128)w+=String.fromCharCode(D),I+=3;else if(D>=194&&D<224){if(L-I>=6){var z=parseInt(T.substr(I+4,2),16);w+=String.fromCharCode((D&31)<<6|z&63)}else w+=T.substr(I,6);I+=6}else if(D>=224){if(L-I>=9){var ee=parseInt(T.substr(I+4,2),16),ue=parseInt(T.substr(I+7,2),16);w+=String.fromCharCode((D&15)<<12|(ee&63)<<6|ue&63)}else w+=T.substr(I,9);I+=9}else w+=T.substr(I,3),I+=3}return w}function Tt(T,w){function I(L){var D=We(L);return D.match(w.UNRESERVED)?D:L}return T.scheme&&(T.scheme=String(T.scheme).replace(w.PCT_ENCODED,I).toLowerCase().replace(w.NOT_SCHEME,"")),T.userinfo!==void 0&&(T.userinfo=String(T.userinfo).replace(w.PCT_ENCODED,I).replace(w.NOT_USERINFO,Ie).replace(w.PCT_ENCODED,i)),T.host!==void 0&&(T.host=String(T.host).replace(w.PCT_ENCODED,I).toLowerCase().replace(w.NOT_HOST,Ie).replace(w.PCT_ENCODED,i)),T.path!==void 0&&(T.path=String(T.path).replace(w.PCT_ENCODED,I).replace(T.scheme?w.NOT_PATH:w.NOT_PATH_NOSCHEME,Ie).replace(w.PCT_ENCODED,i)),T.query!==void 0&&(T.query=String(T.query).replace(w.PCT_ENCODED,I).replace(w.NOT_QUERY,Ie).replace(w.PCT_ENCODED,i)),T.fragment!==void 0&&(T.fragment=String(T.fragment).replace(w.PCT_ENCODED,I).replace(w.NOT_FRAGMENT,Ie).replace(w.PCT_ENCODED,i)),T}function ot(T){return T.replace(/^0*(.*)/,"$1")||"0"}function Oe(T,w){var I=T.match(w.IPV4ADDRESS)||[],L=u(I,2),D=L[1];return D?D.split(".").map(ot).join("."):T}function xe(T,w){var I=T.match(w.IPV6ADDRESS)||[],L=u(I,3),D=L[1],z=L[2];if(D){for(var ee=D.toLowerCase().split("::").reverse(),ue=u(ee,2),ye=ue[0],Ve=ue[1],le=Ve?Ve.split(":").map(ot):[],De=ye.split(":").map(ot),_e=w.IPV4ADDRESS.test(De[De.length-1]),Ee=_e?7:8,pe=De.length-Ee,Be=Array(Ee),Se=0;Se<Ee;++Se)Be[Se]=le[Se]||De[pe+Se]||"";_e&&(Be[Ee-1]=Oe(Be[Ee-1],w));var kr=Be.reduce(function(At,Gt,jr){if(!Gt||Gt==="0"){var er=At[At.length-1];er&&er.index+er.length===jr?er.length++:At.push({index:jr,length:1})}return At},[]),mt=kr.sort(function(At,Gt){return Gt.length-At.length})[0],Ot=void 0;if(mt&&mt.length>1){var Ce=Be.slice(0,mt.index),yt=Be.slice(mt.index+mt.length);Ot=Ce.join(":")+"::"+yt.join(":")}else Ot=Be.join(":");return z&&(Ot+="%"+z),Ot}else return T}var Ft=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,Ge="".match(/(){0}/)[1]===void 0;function fe(T){var w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},I={},L=w.iri!==!1?d:l;w.reference==="suffix"&&(T=(w.scheme?w.scheme+":":"")+"//"+T);var D=T.match(Ft);if(D){Ge?(I.scheme=D[1],I.userinfo=D[3],I.host=D[4],I.port=parseInt(D[5],10),I.path=D[6]||"",I.query=D[7],I.fragment=D[8],isNaN(I.port)&&(I.port=D[5])):(I.scheme=D[1]||void 0,I.userinfo=T.indexOf("@")!==-1?D[3]:void 0,I.host=T.indexOf("//")!==-1?D[4]:void 0,I.port=parseInt(D[5],10),I.path=D[6]||"",I.query=T.indexOf("?")!==-1?D[7]:void 0,I.fragment=T.indexOf("#")!==-1?D[8]:void 0,isNaN(I.port)&&(I.port=T.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?D[4]:void 0)),I.host&&(I.host=xe(Oe(I.host,L),L)),I.scheme===void 0&&I.userinfo===void 0&&I.host===void 0&&I.port===void 0&&!I.path&&I.query===void 0?I.reference="same-document":I.scheme===void 0?I.reference="relative":I.fragment===void 0?I.reference="absolute":I.reference="uri",w.reference&&w.reference!=="suffix"&&w.reference!==I.reference&&(I.error=I.error||"URI is not a "+w.reference+" reference.");var z=ve[(w.scheme||I.scheme||"").toLowerCase()];if(!w.unicodeSupport&&(!z||!z.unicodeSupport)){if(I.host&&(w.domainHost||z&&z.domainHost))try{I.host=te.toASCII(I.host.replace(L.PCT_ENCODED,We).toLowerCase())}catch(ee){I.error=I.error||"Host's domain name can not be converted to ASCII via punycode: "+ee}Tt(I,l)}else Tt(I,L);z&&z.parse&&z.parse(I,w)}else I.error=I.error||"URI can not be parsed.";return I}function mr(T,w){var I=w.iri!==!1?d:l,L=[];return T.userinfo!==void 0&&(L.push(T.userinfo),L.push("@")),T.host!==void 0&&L.push(xe(Oe(String(T.host),I),I).replace(I.IPV6ADDRESS,function(D,z,ee){return"["+z+(ee?"%25"+ee:"")+"]"})),(typeof T.port=="number"||typeof T.port=="string")&&(L.push(":"),L.push(String(T.port))),L.length?L.join(""):void 0}var Xt=/^\.\.?\//,qr=/^\/\.(\/|$)/,Rr=/^\/\.\.(\/|$)/,Je=/^\/?(?:.|\n)*?(?=\/|$)/;function It(T){for(var w=[];T.length;)if(T.match(Xt))T=T.replace(Xt,"");else if(T.match(qr))T=T.replace(qr,"/");else if(T.match(Rr))T=T.replace(Rr,"/"),w.pop();else if(T==="."||T==="..")T="";else{var I=T.match(Je);if(I){var L=I[0];T=T.slice(L.length),w.push(L)}else throw new Error("Unexpected dot segment condition")}return w.join("")}function lt(T){var w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},I=w.iri?d:l,L=[],D=ve[(w.scheme||T.scheme||"").toLowerCase()];if(D&&D.serialize&&D.serialize(T,w),T.host&&!I.IPV6ADDRESS.test(T.host)){if(w.domainHost||D&&D.domainHost)try{T.host=w.iri?te.toUnicode(T.host):te.toASCII(T.host.replace(I.PCT_ENCODED,We).toLowerCase())}catch(ue){T.error=T.error||"Host's domain name can not be converted to "+(w.iri?"Unicode":"ASCII")+" via punycode: "+ue}}Tt(T,I),w.reference!=="suffix"&&T.scheme&&(L.push(T.scheme),L.push(":"));var z=mr(T,w);if(z!==void 0&&(w.reference!=="suffix"&&L.push("//"),L.push(z),T.path&&T.path.charAt(0)!=="/"&&L.push("/")),T.path!==void 0){var ee=T.path;!w.absolutePath&&(!D||!D.absolutePath)&&(ee=It(ee)),z===void 0&&(ee=ee.replace(/^\/\//,"/%2F")),L.push(ee)}return T.query!==void 0&&(L.push("?"),L.push(T.query)),T.fragment!==void 0&&(L.push("#"),L.push(T.fragment)),L.join("")}function it(T,w){var I=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},L=arguments[3],D={};return L||(T=fe(lt(T,I),I),w=fe(lt(w,I),I)),I=I||{},!I.tolerant&&w.scheme?(D.scheme=w.scheme,D.userinfo=w.userinfo,D.host=w.host,D.port=w.port,D.path=It(w.path||""),D.query=w.query):(w.userinfo!==void 0||w.host!==void 0||w.port!==void 0?(D.userinfo=w.userinfo,D.host=w.host,D.port=w.port,D.path=It(w.path||""),D.query=w.query):(w.path?(w.path.charAt(0)==="/"?D.path=It(w.path):((T.userinfo!==void 0||T.host!==void 0||T.port!==void 0)&&!T.path?D.path="/"+w.path:T.path?D.path=T.path.slice(0,T.path.lastIndexOf("/")+1)+w.path:D.path=w.path,D.path=It(D.path)),D.query=w.query):(D.path=T.path,w.query!==void 0?D.query=w.query:D.query=T.query),D.userinfo=T.userinfo,D.host=T.host,D.port=T.port),D.scheme=T.scheme),D.fragment=w.fragment,D}function Ut(T,w,I){var L=s({scheme:"null"},I);return lt(it(fe(T,L),fe(w,L),L,!0),L)}function ht(T,w){return typeof T=="string"?T=lt(fe(T,w),w):a(T)==="object"&&(T=fe(lt(T,w),w)),T}function ua(T,w,I){return typeof T=="string"?T=lt(fe(T,I),I):a(T)==="object"&&(T=lt(T,I)),typeof w=="string"?w=lt(fe(w,I),I):a(w)==="object"&&(w=lt(w,I)),T===w}function An(T,w){return T&&T.toString().replace(!w||!w.iri?l.ESCAPE:d.ESCAPE,Ie)}function Mt(T,w){return T&&T.toString().replace(!w||!w.iri?l.PCT_ENCODED:d.PCT_ENCODED,We)}var $i={scheme:"http",domainHost:!0,parse:function(w,I){return w.host||(w.error=w.error||"HTTP URIs must have a host."),w},serialize:function(w,I){var L=String(w.scheme).toLowerCase()==="https";return(w.port===(L?443:80)||w.port==="")&&(w.port=void 0),w.path||(w.path="/"),w}},So={scheme:"https",domainHost:$i.domainHost,parse:$i.parse,serialize:$i.serialize};function wo(T){return typeof T.secure=="boolean"?T.secure:String(T.scheme).toLowerCase()==="wss"}var qi={scheme:"ws",domainHost:!0,parse:function(w,I){var L=w;return L.secure=wo(L),L.resourceName=(L.path||"/")+(L.query?"?"+L.query:""),L.path=void 0,L.query=void 0,L},serialize:function(w,I){if((w.port===(wo(w)?443:80)||w.port==="")&&(w.port=void 0),typeof w.secure=="boolean"&&(w.scheme=w.secure?"wss":"ws",w.secure=void 0),w.resourceName){var L=w.resourceName.split("?"),D=u(L,2),z=D[0],ee=D[1];w.path=z&&z!=="/"?z:void 0,w.query=ee,w.resourceName=void 0}return w.fragment=void 0,w}},xo={scheme:"wss",domainHost:qi.domainHost,parse:qi.parse,serialize:qi.serialize},df={},uf=!0,Co="[A-Za-z0-9\\-\\.\\_\\~"+(uf?"\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF":"")+"]",Ht="[0-9A-Fa-f]",cf=r(r("%[EFef]"+Ht+"%"+Ht+Ht+"%"+Ht+Ht)+"|"+r("%[89A-Fa-f]"+Ht+"%"+Ht+Ht)+"|"+r("%"+Ht+Ht)),pf="[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]",ff="[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",hf=e(ff,'[\\"\\\\]'),mf="[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]",yf=new RegExp(Co,"g"),ai=new RegExp(cf,"g"),gf=new RegExp(e("[^]",pf,"[\\.]",'[\\"]',hf),"g"),To=new RegExp(e("[^]",Co,mf),"g"),bf=To;function Pn(T){var w=We(T);return w.match(yf)?w:T}var Fo={scheme:"mailto",parse:function(w,I){var L=w,D=L.to=L.path?L.path.split(","):[];if(L.path=void 0,L.query){for(var z=!1,ee={},ue=L.query.split("&"),ye=0,Ve=ue.length;ye<Ve;++ye){var le=ue[ye].split("=");switch(le[0]){case"to":for(var De=le[1].split(","),_e=0,Ee=De.length;_e<Ee;++_e)D.push(De[_e]);break;case"subject":L.subject=Mt(le[1],I);break;case"body":L.body=Mt(le[1],I);break;default:z=!0,ee[Mt(le[0],I)]=Mt(le[1],I);break}}z&&(L.headers=ee)}L.query=void 0;for(var pe=0,Be=D.length;pe<Be;++pe){var Se=D[pe].split("@");if(Se[0]=Mt(Se[0]),I.unicodeSupport)Se[1]=Mt(Se[1],I).toLowerCase();else try{Se[1]=te.toASCII(Mt(Se[1],I).toLowerCase())}catch(kr){L.error=L.error||"Email address's domain name can not be converted to ASCII via punycode: "+kr}D[pe]=Se.join("@")}return L},serialize:function(w,I){var L=w,D=n(w.to);if(D){for(var z=0,ee=D.length;z<ee;++z){var ue=String(D[z]),ye=ue.lastIndexOf("@"),Ve=ue.slice(0,ye).replace(ai,Pn).replace(ai,i).replace(gf,Ie),le=ue.slice(ye+1);try{le=I.iri?te.toUnicode(le):te.toASCII(Mt(le,I).toLowerCase())}catch(pe){L.error=L.error||"Email address's domain name can not be converted to "+(I.iri?"Unicode":"ASCII")+" via punycode: "+pe}D[z]=Ve+"@"+le}L.path=D.join(",")}var De=w.headers=w.headers||{};w.subject&&(De.subject=w.subject),w.body&&(De.body=w.body);var _e=[];for(var Ee in De)De[Ee]!==df[Ee]&&_e.push(Ee.replace(ai,Pn).replace(ai,i).replace(To,Ie)+"="+De[Ee].replace(ai,Pn).replace(ai,i).replace(bf,Ie));return _e.length&&(L.query=_e.join("&")),L}},vf=/^([^\:]+)\:(.*)/,Io={scheme:"urn",parse:function(w,I){var L=w.path&&w.path.match(vf),D=w;if(L){var z=I.scheme||D.scheme||"urn",ee=L[1].toLowerCase(),ue=L[2],ye=z+":"+(I.nid||ee),Ve=ve[ye];D.nid=ee,D.nss=ue,D.path=void 0,Ve&&(D=Ve.parse(D,I))}else D.error=D.error||"URN can not be parsed.";return D},serialize:function(w,I){var L=I.scheme||w.scheme||"urn",D=w.nid,z=L+":"+(I.nid||D),ee=ve[z];ee&&(w=ee.serialize(w,I));var ue=w,ye=w.nss;return ue.path=(D||I.nid)+":"+ye,ue}},Sf=/^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/,Oo={scheme:"urn:uuid",parse:function(w,I){var L=w;return L.uuid=L.nss,L.nss=void 0,!I.tolerant&&(!L.uuid||!L.uuid.match(Sf))&&(L.error=L.error||"UUID is not valid."),L},serialize:function(w,I){var L=w;return L.nss=(w.uuid||"").toLowerCase(),L}};ve[$i.scheme]=$i,ve[So.scheme]=So,ve[qi.scheme]=qi,ve[xo.scheme]=xo,ve[Fo.scheme]=Fo,ve[Io.scheme]=Io,ve[Oo.scheme]=Oo,t.SCHEMES=ve,t.pctEncChar=Ie,t.pctDecChars=We,t.parse=fe,t.removeDotSegments=It,t.serialize=lt,t.resolveComponents=it,t.resolve=Ut,t.normalize=ht,t.equal=ua,t.escapeComponent=An,t.unescapeComponent=Mt,Object.defineProperty(t,"__esModule",{value:!0})}))});var _a=Y((Yx,kd)=>{"use strict";kd.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var a,i,n;if(Array.isArray(e)){if(a=e.length,a!=r.length)return!1;for(i=a;i--!==0;)if(!t(e[i],r[i]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(n=Object.keys(e),a=n.length,a!==Object.keys(r).length)return!1;for(i=a;i--!==0;)if(!Object.prototype.hasOwnProperty.call(r,n[i]))return!1;for(i=a;i--!==0;){var s=n[i];if(!t(e[s],r[s]))return!1}return!0}return e!==e&&r!==r}});var Wd=Y((Xx,jd)=>{"use strict";jd.exports=function(e){for(var r=0,a=e.length,i=0,n;i<a;)r++,n=e.charCodeAt(i++),n>=55296&&n<=56319&&i<a&&(n=e.charCodeAt(i),(n&64512)==56320&&i++);return r}});var Zr=Y((eC,zd)=>{"use strict";zd.exports={copy:hy,checkDataType:Ss,checkDataTypes:my,coerceToTypes:yy,toHash:xs,getProperty:Cs,escapeQuotes:Ts,equal:_a(),ucs2length:Wd(),varOccurences:vy,varReplace:Sy,schemaHasRules:wy,schemaHasRulesExcept:xy,schemaUnknownRules:Cy,toQuotedString:ws,getPathExpr:Ty,getPath:Fy,getData:Ay,unescapeFragment:Py,unescapeJsonPointer:Is,escapeFragment:Ey,escapeJsonPointer:Fs};function hy(t,e){e=e||{};for(var r in t)e[r]=t[r];return e}function Ss(t,e,r,a){var i=a?" !== ":" === ",n=a?" || ":" && ",s=a?"!":"",o=a?"":"!";switch(t){case"null":return e+i+"null";case"array":return s+"Array.isArray("+e+")";case"object":return"("+s+e+n+"typeof "+e+i+'"object"'+n+o+"Array.isArray("+e+"))";case"integer":return"(typeof "+e+i+'"number"'+n+o+"("+e+" % 1)"+n+e+i+e+(r?n+s+"isFinite("+e+")":"")+")";case"number":return"(typeof "+e+i+'"'+t+'"'+(r?n+s+"isFinite("+e+")":"")+")";default:return"typeof "+e+i+'"'+t+'"'}}function my(t,e,r){switch(t.length){case 1:return Ss(t[0],e,r,!0);default:var a="",i=xs(t);i.array&&i.object&&(a=i.null?"(":"(!"+e+" || ",a+="typeof "+e+' !== "object")',delete i.null,delete i.array,delete i.object),i.number&&delete i.integer;for(var n in i)a+=(a?" && ":"")+Ss(n,e,r,!0);return a}}var Vd=xs(["string","number","integer","boolean","null"]);function yy(t,e){if(Array.isArray(e)){for(var r=[],a=0;a<e.length;a++){var i=e[a];(Vd[i]||t==="array"&&i==="array")&&(r[r.length]=i)}if(r.length)return r}else{if(Vd[e])return[e];if(t==="array"&&e==="array")return["array"]}}function xs(t){for(var e={},r=0;r<t.length;r++)e[t[r]]=!0;return e}var gy=/^[a-z$_][a-z$_0-9]*$/i,by=/'|\\/g;function Cs(t){return typeof t=="number"?"["+t+"]":gy.test(t)?"."+t:"['"+Ts(t)+"']"}function Ts(t){return t.replace(by,"\\$&").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\f/g,"\\f").replace(/\t/g,"\\t")}function vy(t,e){e+="[^0-9]";var r=t.match(new RegExp(e,"g"));return r?r.length:0}function Sy(t,e,r){return e+="([^0-9])",r=r.replace(/\$/g,"$$$$"),t.replace(new RegExp(e,"g"),r+"$1")}function wy(t,e){if(typeof t=="boolean")return!t;for(var r in t)if(e[r])return!0}function xy(t,e,r){if(typeof t=="boolean")return!t&&r!="not";for(var a in t)if(a!=r&&e[a])return!0}function Cy(t,e){if(typeof t!="boolean"){for(var r in t)if(!e[r])return r}}function ws(t){return"'"+Ts(t)+"'"}function Ty(t,e,r,a){var i=r?"'/' + "+e+(a?"":".replace(/~/g, '~0').replace(/\\//g, '~1')"):a?"'[' + "+e+" + ']'":"'[\\'' + "+e+" + '\\']'";return _d(t,i)}function Fy(t,e,r){var a=ws(r?"/"+Fs(e):Cs(e));return _d(t,a)}var Iy=/^\/(?:[^~]|~0|~1)*$/,Oy=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Ay(t,e,r){var a,i,n,s;if(t==="")return"rootData";if(t[0]=="/"){if(!Iy.test(t))throw new Error("Invalid JSON-pointer: "+t);i=t,n="rootData"}else{if(s=t.match(Oy),!s)throw new Error("Invalid JSON-pointer: "+t);if(a=+s[1],i=s[2],i=="#"){if(a>=e)throw new Error("Cannot access property/index "+a+" levels up, current level is "+e);return r[e-a]}if(a>e)throw new Error("Cannot access data "+a+" levels up, current level is "+e);if(n="data"+(e-a||""),!i)return n}for(var o=n,l=i.split("/"),d=0;d<l.length;d++){var u=l[d];u&&(n+=Cs(Is(u)),o+=" && "+n)}return o}function _d(t,e){return t=='""'?e:(t+" + "+e).replace(/([^\\])' \+ '/g,"$1")}function Py(t){return Is(decodeURIComponent(t))}function Ey(t){return encodeURIComponent(Fs(t))}function Fs(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}function Is(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}});var Os=Y((tC,Ud)=>{"use strict";var Ly=Zr();Ud.exports=Ny;function Ny(t){Ly.copy(t,this)}});var Gd=Y((rC,Hd)=>{"use strict";var Tr=Hd.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var a=typeof r=="function"?r:r.pre||function(){},i=r.post||function(){};za(e,a,i,t,"",t)};Tr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0};Tr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Tr.propsKeywords={definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Tr.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function za(t,e,r,a,i,n,s,o,l,d){if(a&&typeof a=="object"&&!Array.isArray(a)){e(a,i,n,s,o,l,d);for(var u in a){var c=a[u];if(Array.isArray(c)){if(u in Tr.arrayKeywords)for(var f=0;f<c.length;f++)za(t,e,r,c[f],i+"/"+u+"/"+f,n,i,u,a,f)}else if(u in Tr.propsKeywords){if(c&&typeof c=="object")for(var p in c)za(t,e,r,c[p],i+"/"+u+"/"+Dy(p),n,i,u,a,p)}else(u in Tr.keywords||t.allKeys&&!(u in Tr.skipKeywords))&&za(t,e,r,c,i+"/"+u,n,i,u,a)}r(a,i,n,s,o,l,d)}}function Dy(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Ka=Y((iC,Jd)=>{"use strict";var ta=Rd(),Qd=_a(),Qa=Zr(),Ua=Os(),By=Gd();Jd.exports=Ir;Ir.normalizeId=Fr;Ir.fullPath=Ha;Ir.url=Ga;Ir.ids=ky;Ir.inlineRef=As;Ir.schema=Za;function Ir(t,e,r){var a=this._refs[r];if(typeof a=="string")if(this._refs[a])a=this._refs[a];else return Ir.call(this,t,e,a);if(a=a||this._schemas[r],a instanceof Ua)return As(a.schema,this._opts.inlineRefs)?a.schema:a.validate||this._compile(a);var i=Za.call(this,e,r),n,s,o;return i&&(n=i.schema,e=i.root,o=i.baseId),n instanceof Ua?s=n.validate||t.call(this,n.schema,e,void 0,o):n!==void 0&&(s=As(n,this._opts.inlineRefs)?n:t.call(this,n,e,void 0,o)),s}function Za(t,e){var r=ta.parse(e),a=Kd(r),i=Ha(this._getId(t.schema));if(Object.keys(t.schema).length===0||a!==i){var n=Fr(a),s=this._refs[n];if(typeof s=="string")return My.call(this,t,s,r);if(s instanceof Ua)s.validate||this._compile(s),t=s;else if(s=this._schemas[n],s instanceof Ua){if(s.validate||this._compile(s),n==Fr(e))return{schema:s,root:t,baseId:i};t=s}else return;if(!t.schema)return;i=Ha(this._getId(t.schema))}return Zd.call(this,r,i,t.schema,t)}function My(t,e,r){var a=Za.call(this,t,e);if(a){var i=a.schema,n=a.baseId;t=a.root;var s=this._getId(i);return s&&(n=Ga(n,s)),Zd.call(this,r,n,i,t)}}var $y=Qa.toHash(["properties","patternProperties","enum","dependencies","definitions"]);function Zd(t,e,r,a){if(t.fragment=t.fragment||"",t.fragment.slice(0,1)=="/"){for(var i=t.fragment.split("/"),n=1;n<i.length;n++){var s=i[n];if(s){if(s=Qa.unescapeFragment(s),r=r[s],r===void 0)break;var o;if(!$y[s]&&(o=this._getId(r),o&&(e=Ga(e,o)),r.$ref)){var l=Ga(e,r.$ref),d=Za.call(this,a,l);d&&(r=d.schema,a=d.root,e=d.baseId)}}}if(r!==void 0&&r!==a.schema)return{schema:r,root:a,baseId:e}}}var qy=Qa.toHash(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum"]);function As(t,e){if(e===!1)return!1;if(e===void 0||e===!0)return Ps(t);if(e)return Es(t)<=e}function Ps(t){var e;if(Array.isArray(t)){for(var r=0;r<t.length;r++)if(e=t[r],typeof e=="object"&&!Ps(e))return!1}else for(var a in t)if(a=="$ref"||(e=t[a],typeof e=="object"&&!Ps(e)))return!1;return!0}function Es(t){var e=0,r;if(Array.isArray(t)){for(var a=0;a<t.length;a++)if(r=t[a],typeof r=="object"&&(e+=Es(r)),e==1/0)return 1/0}else for(var i in t){if(i=="$ref")return 1/0;if(qy[i])e++;else if(r=t[i],typeof r=="object"&&(e+=Es(r)+1),e==1/0)return 1/0}return e}function Ha(t,e){e!==!1&&(t=Fr(t));var r=ta.parse(t);return Kd(r)}function Kd(t){return ta.serialize(t).split("#")[0]+"#"}var Ry=/#\/?$/;function Fr(t){return t?t.replace(Ry,""):""}function Ga(t,e){return e=Fr(e),ta.resolve(t,e)}function ky(t){var e=Fr(this._getId(t)),r={"":e},a={"":Ha(e,!1)},i={},n=this;return By(t,{allKeys:!0},function(s,o,l,d,u,c,f){if(o!==""){var p=n._getId(s),h=r[d],m=a[d]+"/"+u;if(f!==void 0&&(m+="/"+(typeof f=="number"?f:Qa.escapeFragment(f))),typeof p=="string"){p=h=Fr(h?ta.resolve(h,p):p);var y=n._refs[p];if(typeof y=="string"&&(y=n._refs[y]),y&&y.schema){if(!Qd(s,y.schema))throw new Error('id "'+p+'" resolves to more than one schema')}else if(p!=Fr(m))if(p[0]=="#"){if(i[p]&&!Qd(s,i[p]))throw new Error('id "'+p+'" resolves to more than one schema');i[p]=s}else n._refs[p]=m}r[o]=h,a[o]=m}}),i}});var Ja=Y((aC,Xd)=>{"use strict";var Ls=Ka();Xd.exports={Validation:Yd(jy),MissingRef:Yd(Ns)};function jy(t){this.message="validation failed",this.errors=t,this.ajv=this.validation=!0}Ns.message=function(t,e){return"can't resolve reference "+e+" from id "+t};function Ns(t,e,r){this.message=r||Ns.message(t,e),this.missingRef=Ls.url(t,e),this.missingSchema=Ls.normalizeId(Ls.fullPath(this.missingRef))}function Yd(t){return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}});var Ds=Y((nC,eu)=>{"use strict";eu.exports=function(t,e){e||(e={}),typeof e=="function"&&(e={cmp:e});var r=typeof e.cycles=="boolean"?e.cycles:!1,a=e.cmp&&(function(n){return function(s){return function(o,l){var d={key:o,value:s[o]},u={key:l,value:s[l]};return n(d,u)}}})(e.cmp),i=[];return(function n(s){if(s&&s.toJSON&&typeof s.toJSON=="function"&&(s=s.toJSON()),s!==void 0){if(typeof s=="number")return isFinite(s)?""+s:"null";if(typeof s!="object")return JSON.stringify(s);var o,l;if(Array.isArray(s)){for(l="[",o=0;o<s.length;o++)o&&(l+=","),l+=n(s[o])||"null";return l+"]"}if(s===null)return"null";if(i.indexOf(s)!==-1){if(r)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var d=i.push(s)-1,u=Object.keys(s).sort(a&&a(s));for(l="",o=0;o<u.length;o++){var c=u[o],f=n(s[c]);f&&(l&&(l+=","),l+=JSON.stringify(c)+":"+f)}return i.splice(d,1),"{"+l+"}"}})(t)}});var Bs=Y((sC,tu)=>{"use strict";tu.exports=function(e,r,a){var i="",n=e.schema.$async===!0,s=e.util.schemaHasRulesExcept(e.schema,e.RULES.all,"$ref"),o=e.self._getId(e.schema);if(e.opts.strictKeywords){var l=e.util.schemaUnknownRules(e.schema,e.RULES.keywords);if(l){var d="unknown keyword: "+l;if(e.opts.strictKeywords==="log")e.logger.warn(d);else throw new Error(d)}}if(e.isTop&&(i+=" var validate = ",n&&(e.async=!0,i+="async "),i+="function(data, dataPath, parentData, parentDataProperty, rootData) { 'use strict'; ",o&&(e.opts.sourceCode||e.opts.processCode)&&(i+=" "+("/*# sourceURL="+o+" */")+" ")),typeof e.schema=="boolean"||!(s||e.schema.$ref)){var r="false schema",u=e.level,c=e.dataLevel,f=e.schema[r],p=e.schemaPath+e.util.getProperty(r),h=e.errSchemaPath+"/"+r,F=!e.opts.allErrors,E,m="data"+(c||""),C="valid"+u;if(e.schema===!1){e.isTop?F=!0:i+=" var "+C+" = false; ";var y=y||[];y.push(i),i="",e.createErrors!==!1?(i+=" { keyword: '"+(E||"false schema")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(h)+" , params: {} ",e.opts.messages!==!1&&(i+=" , message: 'boolean schema is false' "),e.opts.verbose&&(i+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+m+" "),i+=" } "):i+=" {} ";var b=i;i=y.pop(),!e.compositeRule&&F?e.async?i+=" throw new ValidationError(["+b+"]); ":i+=" validate.errors = ["+b+"]; return false; ":i+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else e.isTop?n?i+=" return data; ":i+=" validate.errors = null; return true; ":i+=" var "+C+" = true; ";return e.isTop&&(i+=" }; return validate; "),i}if(e.isTop){var v=e.isTop,u=e.level=0,c=e.dataLevel=0,m="data";if(e.rootId=e.resolve.fullPath(e.self._getId(e.root.schema)),e.baseId=e.baseId||e.rootId,delete e.isTop,e.dataPathArr=[""],e.schema.default!==void 0&&e.opts.useDefaults&&e.opts.strictDefaults){var S="default is ignored in the schema root";if(e.opts.strictDefaults==="log")e.logger.warn(S);else throw new Error(S)}i+=" var vErrors = null; ",i+=" var errors = 0; ",i+=" if (rootData === undefined) rootData = data; "}else{var u=e.level,c=e.dataLevel,m="data"+(c||"");if(o&&(e.baseId=e.resolve.url(e.baseId,o)),n&&!e.async)throw new Error("async schema in sync schema");i+=" var errs_"+u+" = errors;"}var C="valid"+u,F=!e.opts.allErrors,O="",N="",E,P=e.schema.type,R=Array.isArray(P);if(P&&e.opts.nullable&&e.schema.nullable===!0&&(R?P.indexOf("null")==-1&&(P=P.concat("null")):P!="null"&&(P=[P,"null"],R=!0)),R&&P.length==1&&(P=P[0],R=!1),e.schema.$ref&&s){if(e.opts.extendRefs=="fail")throw new Error('$ref: validation keywords used in schema at path "'+e.errSchemaPath+'" (see option extendRefs)');e.opts.extendRefs!==!0&&(s=!1,e.logger.warn('$ref: keywords ignored in schema at path "'+e.errSchemaPath+'"'))}if(e.schema.$comment&&e.opts.$comment&&(i+=" "+e.RULES.all.$comment.code(e,"$comment")),P){if(e.opts.coerceTypes)var $=e.util.coerceToTypes(e.opts.coerceTypes,P);var q=e.RULES.types[P];if($||R||q===!0||q&&!Je(q)){var p=e.schemaPath+".type",h=e.errSchemaPath+"/type",p=e.schemaPath+".type",h=e.errSchemaPath+"/type",B=R?"checkDataTypes":"checkDataType";if(i+=" if ("+e.util[B](P,m,e.opts.strictNumbers,!0)+") { ",$){var k="dataType"+u,M="coerced"+u;i+=" var "+k+" = typeof "+m+"; var "+M+" = undefined; ",e.opts.coerceTypes=="array"&&(i+=" if ("+k+" == 'object' && Array.isArray("+m+") && "+m+".length == 1) { "+m+" = "+m+"[0]; "+k+" = typeof "+m+"; if ("+e.util.checkDataType(e.schema.type,m,e.opts.strictNumbers)+") "+M+" = "+m+"; } "),i+=" if ("+M+" !== undefined) ; ";var _=$;if(_)for(var Q,V=-1,Z=_.length-1;V<Z;)Q=_[V+=1],Q=="string"?i+=" else if ("+k+" == 'number' || "+k+" == 'boolean') "+M+" = '' + "+m+"; else if ("+m+" === null) "+M+" = ''; ":Q=="number"||Q=="integer"?(i+=" else if ("+k+" == 'boolean' || "+m+" === null || ("+k+" == 'string' && "+m+" && "+m+" == +"+m+" ",Q=="integer"&&(i+=" && !("+m+" % 1)"),i+=")) "+M+" = +"+m+"; "):Q=="boolean"?i+=" else if ("+m+" === 'false' || "+m+" === 0 || "+m+" === null) "+M+" = false; else if ("+m+" === 'true' || "+m+" === 1) "+M+" = true; ":Q=="null"?i+=" else if ("+m+" === '' || "+m+" === 0 || "+m+" === false) "+M+" = null; ":e.opts.coerceTypes=="array"&&Q=="array"&&(i+=" else if ("+k+" == 'string' || "+k+" == 'number' || "+k+" == 'boolean' || "+m+" == null) "+M+" = ["+m+"]; ");i+=" else { ";var y=y||[];y.push(i),i="",e.createErrors!==!1?(i+=" { keyword: '"+(E||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(h)+" , params: { type: '",R?i+=""+P.join(","):i+=""+P,i+="' } ",e.opts.messages!==!1&&(i+=" , message: 'should be ",R?i+=""+P.join(","):i+=""+P,i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+p+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+m+" "),i+=" } "):i+=" {} ";var b=i;i=y.pop(),!e.compositeRule&&F?e.async?i+=" throw new ValidationError(["+b+"]); ":i+=" validate.errors = ["+b+"]; return false; ":i+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } if ("+M+" !== undefined) { ";var U=c?"data"+(c-1||""):"parentData",oe=c?e.dataPathArr[c]:"parentDataProperty";i+=" "+m+" = "+M+"; ",c||(i+="if ("+U+" !== undefined)"),i+=" "+U+"["+oe+"] = "+M+"; } "}else{var y=y||[];y.push(i),i="",e.createErrors!==!1?(i+=" { keyword: '"+(E||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(h)+" , params: { type: '",R?i+=""+P.join(","):i+=""+P,i+="' } ",e.opts.messages!==!1&&(i+=" , message: 'should be ",R?i+=""+P.join(","):i+=""+P,i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+p+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+m+" "),i+=" } "):i+=" {} ";var b=i;i=y.pop(),!e.compositeRule&&F?e.async?i+=" throw new ValidationError(["+b+"]); ":i+=" validate.errors = ["+b+"]; return false; ":i+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}i+=" } "}}if(e.schema.$ref&&!s)i+=" "+e.RULES.all.$ref.code(e,"$ref")+" ",F&&(i+=" } if (errors === ",v?i+="0":i+="errs_"+u,i+=") { ",N+="}");else{var Fe=e.RULES;if(Fe){for(var q,ke=-1,te=Fe.length-1;ke<te;)if(q=Fe[ke+=1],Je(q)){if(q.type&&(i+=" if ("+e.util.checkDataType(q.type,m,e.opts.strictNumbers)+") { "),e.opts.useDefaults){if(q.type=="object"&&e.schema.properties){var f=e.schema.properties,ve=Object.keys(f),Ie=ve;if(Ie)for(var We,Tt=-1,ot=Ie.length-1;Tt<ot;){We=Ie[Tt+=1];var Oe=f[We];if(Oe.default!==void 0){var xe=m+e.util.getProperty(We);if(e.compositeRule){if(e.opts.strictDefaults){var S="default is ignored for: "+xe;if(e.opts.strictDefaults==="log")e.logger.warn(S);else throw new Error(S)}}else i+=" if ("+xe+" === undefined ",e.opts.useDefaults=="empty"&&(i+=" || "+xe+" === null || "+xe+" === '' "),i+=" ) "+xe+" = ",e.opts.useDefaults=="shared"?i+=" "+e.useDefault(Oe.default)+" ":i+=" "+JSON.stringify(Oe.default)+" ",i+="; "}}}else if(q.type=="array"&&Array.isArray(e.schema.items)){var Ft=e.schema.items;if(Ft){for(var Oe,V=-1,Ge=Ft.length-1;V<Ge;)if(Oe=Ft[V+=1],Oe.default!==void 0){var xe=m+"["+V+"]";if(e.compositeRule){if(e.opts.strictDefaults){var S="default is ignored for: "+xe;if(e.opts.strictDefaults==="log")e.logger.warn(S);else throw new Error(S)}}else i+=" if ("+xe+" === undefined ",e.opts.useDefaults=="empty"&&(i+=" || "+xe+" === null || "+xe+" === '' "),i+=" ) "+xe+" = ",e.opts.useDefaults=="shared"?i+=" "+e.useDefault(Oe.default)+" ":i+=" "+JSON.stringify(Oe.default)+" ",i+="; "}}}}var fe=q.rules;if(fe){for(var mr,Xt=-1,qr=fe.length-1;Xt<qr;)if(mr=fe[Xt+=1],It(mr)){var Rr=mr.code(e,mr.keyword,q.type);Rr&&(i+=" "+Rr+" ",F&&(O+="}"))}}if(F&&(i+=" "+O+" ",O=""),q.type&&(i+=" } ",P&&P===q.type&&!$)){i+=" else { ";var p=e.schemaPath+".type",h=e.errSchemaPath+"/type",y=y||[];y.push(i),i="",e.createErrors!==!1?(i+=" { keyword: '"+(E||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(h)+" , params: { type: '",R?i+=""+P.join(","):i+=""+P,i+="' } ",e.opts.messages!==!1&&(i+=" , message: 'should be ",R?i+=""+P.join(","):i+=""+P,i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+p+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+m+" "),i+=" } "):i+=" {} ";var b=i;i=y.pop(),!e.compositeRule&&F?e.async?i+=" throw new ValidationError(["+b+"]); ":i+=" validate.errors = ["+b+"]; return false; ":i+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } "}F&&(i+=" if (errors === ",v?i+="0":i+="errs_"+u,i+=") { ",N+="}")}}}F&&(i+=" "+N+" "),v?(n?(i+=" if (errors === 0) return data; ",i+=" else throw new ValidationError(vErrors); "):(i+=" validate.errors = vErrors; ",i+=" return errors === 0; "),i+=" }; return validate;"):i+=" var "+C+" = errors === errs_"+u+";";function Je(it){for(var Ut=it.rules,ht=0;ht<Ut.length;ht++)if(It(Ut[ht]))return!0}function It(it){return e.schema[it.keyword]!==void 0||it.implements&&lt(it)}function lt(it){for(var Ut=it.implements,ht=0;ht<Ut.length;ht++)if(e.schema[Ut[ht]]!==void 0)return!0}return i}});var su=Y((oC,nu)=>{"use strict";var Ya=Ka(),en=Zr(),iu=Ja(),Wy=Ds(),ru=Bs(),Vy=en.ucs2length,_y=_a(),zy=iu.Validation;nu.exports=Ms;function Ms(t,e,r,a){var i=this,n=this._opts,s=[void 0],o={},l=[],d={},u=[],c={},f=[];e=e||{schema:t,refVal:s,refs:o};var p=Uy.call(this,t,e,a),h=this._compilations[p.index];if(p.compiling)return h.callValidate=S;var m=this._formats,y=this.RULES;try{var b=C(t,e,r,a);h.validate=b;var v=h.callValidate;return v&&(v.schema=b.schema,v.errors=null,v.refs=b.refs,v.refVal=b.refVal,v.root=b.root,v.$async=b.$async,n.sourceCode&&(v.source=b.source)),b}finally{Hy.call(this,t,e,a)}function S(){var B=h.validate,k=B.apply(this,arguments);return S.errors=B.errors,k}function C(B,k,M,_){var Q=!k||k&&k.schema==B;if(k.schema!=e.schema)return Ms.call(i,B,k,M,_);var V=B.$async===!0,Z=ru({isTop:!0,schema:B,isRoot:Q,baseId:_,root:k,schemaPath:"",errSchemaPath:"#",errorPath:'""',MissingRefError:iu.MissingRef,RULES:y,validate:ru,util:en,resolve:Ya,resolveRef:F,usePattern:R,useDefault:$,useCustomRule:q,opts:n,formats:m,logger:i.logger,self:i});Z=Xa(s,Zy)+Xa(l,Gy)+Xa(u,Qy)+Xa(f,Ky)+Z,n.processCode&&(Z=n.processCode(Z,B));var U;try{var oe=new Function("self","RULES","formats","root","refVal","defaults","customRules","equal","ucs2length","ValidationError",Z);U=oe(i,y,m,e,s,u,f,_y,Vy,zy),s[0]=U}catch(Fe){throw i.logger.error("Error compiling schema, function code:",Z),Fe}return U.schema=B,U.errors=null,U.refs=o,U.refVal=s,U.root=Q?U:k,V&&(U.$async=!0),n.sourceCode===!0&&(U.source={code:Z,patterns:l,defaults:u}),U}function F(B,k,M){k=Ya.url(B,k);var _=o[k],Q,V;if(_!==void 0)return Q=s[_],V="refVal["+_+"]",P(Q,V);if(!M&&e.refs){var Z=e.refs[k];if(Z!==void 0)return Q=e.refVal[Z],V=O(k,Q),P(Q,V)}V=O(k);var U=Ya.call(i,C,e,k);if(U===void 0){var oe=r&&r[k];oe&&(U=Ya.inlineRef(oe,n.inlineRefs)?oe:Ms.call(i,oe,e,r,B))}if(U===void 0)N(k);else return E(k,U),P(U,V)}function O(B,k){var M=s.length;return s[M]=k,o[B]=M,"refVal"+M}function N(B){delete o[B]}function E(B,k){var M=o[B];s[M]=k}function P(B,k){return typeof B=="object"||typeof B=="boolean"?{code:k,schema:B,inline:!0}:{code:k,$async:B&&!!B.$async}}function R(B){var k=d[B];return k===void 0&&(k=d[B]=l.length,l[k]=B),"pattern"+k}function $(B){switch(typeof B){case"boolean":case"number":return""+B;case"string":return en.toQuotedString(B);case"object":if(B===null)return"null";var k=Wy(B),M=c[k];return M===void 0&&(M=c[k]=u.length,u[M]=B),"default"+M}}function q(B,k,M,_){if(i._opts.validateSchema!==!1){var Q=B.definition.dependencies;if(Q&&!Q.every(function(Ie){return Object.prototype.hasOwnProperty.call(M,Ie)}))throw new Error("parent schema must have all required keywords: "+Q.join(","));var V=B.definition.validateSchema;if(V){var Z=V(k);if(!Z){var U="keyword schema is invalid: "+i.errorsText(V.errors);if(i._opts.validateSchema=="log")i.logger.error(U);else throw new Error(U)}}}var oe=B.definition.compile,Fe=B.definition.inline,ke=B.definition.macro,te;if(oe)te=oe.call(i,k,M,_);else if(ke)te=ke.call(i,k,M,_),n.validateSchema!==!1&&i.validateSchema(te,!0);else if(Fe)te=Fe.call(i,_,B.keyword,k,M);else if(te=B.definition.validate,!te)return;if(te===void 0)throw new Error('custom keyword "'+B.keyword+'"failed to compile');var ve=f.length;return f[ve]=te,{code:"customRule"+ve,validate:te}}}function Uy(t,e,r){var a=au.call(this,t,e,r);return a>=0?{index:a,compiling:!0}:(a=this._compilations.length,this._compilations[a]={schema:t,root:e,baseId:r},{index:a,compiling:!1})}function Hy(t,e,r){var a=au.call(this,t,e,r);a>=0&&this._compilations.splice(a,1)}function au(t,e,r){for(var a=0;a<this._compilations.length;a++){var i=this._compilations[a];if(i.schema==t&&i.root==e&&i.baseId==r)return a}return-1}function Gy(t,e){return"var pattern"+t+" = new RegExp("+en.toQuotedString(e[t])+");"}function Qy(t){return"var default"+t+" = defaults["+t+"];"}function Zy(t,e){return e[t]===void 0?"":"var refVal"+t+" = refVal["+t+"];"}function Ky(t){return"var customRule"+t+" = customRules["+t+"];"}function Xa(t,e){if(!t.length)return"";for(var r="",a=0;a<t.length;a++)r+=e(a,t);return r}});var lu=Y((lC,ou)=>{"use strict";var tn=ou.exports=function(){this._cache={}};tn.prototype.put=function(e,r){this._cache[e]=r};tn.prototype.get=function(e){return this._cache[e]};tn.prototype.del=function(e){delete this._cache[e]};tn.prototype.clear=function(){this._cache={}}});var Su=Y((dC,vu)=>{"use strict";var Jy=Zr(),Yy=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,Xy=[0,31,28,31,30,31,30,31,31,30,31,30,31],eg=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,du=/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,tg=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,rg=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,uu=/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,cu=/^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i,pu=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,fu=/^(?:\/(?:[^~/]|~0|~1)*)*$/,hu=/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,mu=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;vu.exports=rn;function rn(t){return t=t=="full"?"full":"fast",Jy.copy(rn[t])}rn.fast={date:/^\d\d\d\d-[0-1]\d-[0-3]\d$/,time:/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,"date-time":/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,"uri-template":uu,url:cu,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,hostname:du,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:bu,uuid:pu,"json-pointer":fu,"json-pointer-uri-fragment":hu,"relative-json-pointer":mu};rn.full={date:yu,time:gu,"date-time":ng,uri:og,"uri-reference":rg,"uri-template":uu,url:cu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:du,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:bu,uuid:pu,"json-pointer":fu,"json-pointer-uri-fragment":hu,"relative-json-pointer":mu};function ig(t){return t%4===0&&(t%100!==0||t%400===0)}function yu(t){var e=t.match(Yy);if(!e)return!1;var r=+e[1],a=+e[2],i=+e[3];return a>=1&&a<=12&&i>=1&&i<=(a==2&&ig(r)?29:Xy[a])}function gu(t,e){var r=t.match(eg);if(!r)return!1;var a=r[1],i=r[2],n=r[3],s=r[5];return(a<=23&&i<=59&&n<=59||a==23&&i==59&&n==60)&&(!e||s)}var ag=/t|\s/i;function ng(t){var e=t.split(ag);return e.length==2&&yu(e[0])&&gu(e[1],!0)}var sg=/\/|:/;function og(t){return sg.test(t)&&tg.test(t)}var lg=/[^\\]\\Z/;function bu(t){if(lg.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var xu=Y((uC,wu)=>{"use strict";wu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.errSchemaPath+"/"+r,d=!e.opts.allErrors,u="data"+(s||""),c="valid"+n,f,p;if(o=="#"||o=="#/")e.isRoot?(f=e.async,p="validate"):(f=e.root.schema.$async===!0,p="root.refVal[0]");else{var h=e.resolveRef(e.baseId,o,e.isRoot);if(h===void 0){var m=e.MissingRefError.message(e.baseId,o);if(e.opts.missingRefs=="fail"){e.logger.error(m);var y=y||[];y.push(i),i="",e.createErrors!==!1?(i+=" { keyword: '$ref' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { ref: '"+e.util.escapeQuotes(o)+"' } ",e.opts.messages!==!1&&(i+=" , message: 'can\\'t resolve reference "+e.util.escapeQuotes(o)+"' "),e.opts.verbose&&(i+=" , schema: "+e.util.toQuotedString(o)+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),i+=" } "):i+=" {} ";var b=i;i=y.pop(),!e.compositeRule&&d?e.async?i+=" throw new ValidationError(["+b+"]); ":i+=" validate.errors = ["+b+"]; return false; ":i+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",d&&(i+=" if (false) { ")}else if(e.opts.missingRefs=="ignore")e.logger.warn(m),d&&(i+=" if (true) { ");else throw new e.MissingRefError(e.baseId,o,m)}else if(h.inline){var v=e.util.copy(e);v.level++;var S="valid"+v.level;v.schema=h.schema,v.schemaPath="",v.errSchemaPath=o;var C=e.validate(v).replace(/validate\.schema/g,h.code);i+=" "+C+" ",d&&(i+=" if ("+S+") { ")}else f=h.$async===!0||e.async&&h.$async!==!1,p=h.code}if(p){var y=y||[];y.push(i),i="",e.opts.passContext?i+=" "+p+".call(this, ":i+=" "+p+"( ",i+=" "+u+", (dataPath || '')",e.errorPath!='""'&&(i+=" + "+e.errorPath);var F=s?"data"+(s-1||""):"parentData",O=s?e.dataPathArr[s]:"parentDataProperty";i+=" , "+F+" , "+O+", rootData) ";var N=i;if(i=y.pop(),f){if(!e.async)throw new Error("async schema referenced by sync schema");d&&(i+=" var "+c+"; "),i+=" try { await "+N+"; ",d&&(i+=" "+c+" = true; "),i+=" } catch (e) { if (!(e instanceof ValidationError)) throw e; if (vErrors === null) vErrors = e.errors; else vErrors = vErrors.concat(e.errors); errors = vErrors.length; ",d&&(i+=" "+c+" = false; "),i+=" } ",d&&(i+=" if ("+c+") { ")}else i+=" if (!"+N+") { if (vErrors === null) vErrors = "+p+".errors; else vErrors = vErrors.concat("+p+".errors); errors = vErrors.length; } ",d&&(i+=" else { ")}return i}});var Tu=Y((cC,Cu)=>{"use strict";Cu.exports=function(e,r,a){var i=" ",n=e.schema[r],s=e.schemaPath+e.util.getProperty(r),o=e.errSchemaPath+"/"+r,l=!e.opts.allErrors,d=e.util.copy(e),u="";d.level++;var c="valid"+d.level,f=d.baseId,p=!0,h=n;if(h)for(var m,y=-1,b=h.length-1;y<b;)m=h[y+=1],(e.opts.strictKeywords?typeof m=="object"&&Object.keys(m).length>0||m===!1:e.util.schemaHasRules(m,e.RULES.all))&&(p=!1,d.schema=m,d.schemaPath=s+"["+y+"]",d.errSchemaPath=o+"/"+y,i+=" "+e.validate(d)+" ",d.baseId=f,l&&(i+=" if ("+c+") { ",u+="}"));return l&&(p?i+=" if (true) { ":i+=" "+u.slice(0,-1)+" "),i}});var Iu=Y((pC,Fu)=>{"use strict";Fu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="valid"+n,p="errs__"+n,h=e.util.copy(e),m="";h.level++;var y="valid"+h.level,b=o.every(function(E){return e.opts.strictKeywords?typeof E=="object"&&Object.keys(E).length>0||E===!1:e.util.schemaHasRules(E,e.RULES.all)});if(b){var v=h.baseId;i+=" var "+p+" = errors; var "+f+" = false; ";var S=e.compositeRule;e.compositeRule=h.compositeRule=!0;var C=o;if(C)for(var F,O=-1,N=C.length-1;O<N;)F=C[O+=1],h.schema=F,h.schemaPath=l+"["+O+"]",h.errSchemaPath=d+"/"+O,i+=" "+e.validate(h)+" ",h.baseId=v,i+=" "+f+" = "+f+" || "+y+"; if (!"+f+") { ",m+="}";e.compositeRule=h.compositeRule=S,i+=" "+m+" if (!"+f+") { var err = ",e.createErrors!==!1?(i+=" { keyword: 'anyOf' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: {} ",e.opts.messages!==!1&&(i+=" , message: 'should match some schema in anyOf' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&u&&(e.async?i+=" throw new ValidationError(vErrors); ":i+=" validate.errors = vErrors; return false; "),i+=" } else { errors = "+p+"; if (vErrors !== null) { if ("+p+") vErrors.length = "+p+"; else vErrors = null; } ",e.opts.allErrors&&(i+=" } ")}else u&&(i+=" if (true) { ");return i}});var Au=Y((fC,Ou)=>{"use strict";Ou.exports=function(e,r,a){var i=" ",n=e.schema[r],s=e.errSchemaPath+"/"+r,o=!e.opts.allErrors,l=e.util.toQuotedString(n);return e.opts.$comment===!0?i+=" console.log("+l+");":typeof e.opts.$comment=="function"&&(i+=" self._opts.$comment("+l+", "+e.util.toQuotedString(s)+", validate.root.schema);"),i}});var Eu=Y((hC,Pu)=>{"use strict";Pu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="valid"+n,p=e.opts.$data&&o&&o.$data,h;p?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",h="schema"+n):h=o,p||(i+=" var schema"+n+" = validate.schema"+l+";"),i+="var "+f+" = equal("+c+", schema"+n+"); if (!"+f+") { ";var m=m||[];m.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'const' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { allowedValue: schema"+n+" } ",e.opts.messages!==!1&&(i+=" , message: 'should be equal to constant' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var y=i;return i=m.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+y+"]); ":i+=" validate.errors = ["+y+"]; return false; ":i+=" var err = "+y+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" }",u&&(i+=" else { "),i}});var Nu=Y((mC,Lu)=>{"use strict";Lu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="valid"+n,p="errs__"+n,h=e.util.copy(e),m="";h.level++;var y="valid"+h.level,b="i"+n,v=h.dataLevel=e.dataLevel+1,S="data"+v,C=e.baseId,F=e.opts.strictKeywords?typeof o=="object"&&Object.keys(o).length>0||o===!1:e.util.schemaHasRules(o,e.RULES.all);if(i+="var "+p+" = errors;var "+f+";",F){var O=e.compositeRule;e.compositeRule=h.compositeRule=!0,h.schema=o,h.schemaPath=l,h.errSchemaPath=d,i+=" var "+y+" = false; for (var "+b+" = 0; "+b+" < "+c+".length; "+b+"++) { ",h.errorPath=e.util.getPathExpr(e.errorPath,b,e.opts.jsonPointers,!0);var N=c+"["+b+"]";h.dataPathArr[v]=b;var E=e.validate(h);h.baseId=C,e.util.varOccurences(E,S)<2?i+=" "+e.util.varReplace(E,S,N)+" ":i+=" var "+S+" = "+N+"; "+E+" ",i+=" if ("+y+") break; } ",e.compositeRule=h.compositeRule=O,i+=" "+m+" if (!"+y+") {"}else i+=" if ("+c+".length == 0) {";var P=P||[];P.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'contains' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: {} ",e.opts.messages!==!1&&(i+=" , message: 'should contain a valid item' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var R=i;return i=P.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+R+"]); ":i+=" validate.errors = ["+R+"]; return false; ":i+=" var err = "+R+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { ",F&&(i+=" errors = "+p+"; if (vErrors !== null) { if ("+p+") vErrors.length = "+p+"; else vErrors = null; } "),e.opts.allErrors&&(i+=" } "),i}});var Bu=Y((yC,Du)=>{"use strict";Du.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="errs__"+n,p=e.util.copy(e),h="";p.level++;var m="valid"+p.level,y={},b={},v=e.opts.ownProperties;for(O in o)if(O!="__proto__"){var S=o[O],C=Array.isArray(S)?b:y;C[O]=S}i+="var "+f+" = errors;";var F=e.errorPath;i+="var missing"+n+";";for(var O in b)if(C=b[O],C.length){if(i+=" if ( "+c+e.util.getProperty(O)+" !== undefined ",v&&(i+=" && Object.prototype.hasOwnProperty.call("+c+", '"+e.util.escapeQuotes(O)+"') "),u){i+=" && ( ";var N=C;if(N)for(var E,P=-1,R=N.length-1;P<R;){E=N[P+=1],P&&(i+=" || ");var $=e.util.getProperty(E),q=c+$;i+=" ( ( "+q+" === undefined ",v&&(i+=" || ! Object.prototype.hasOwnProperty.call("+c+", '"+e.util.escapeQuotes(E)+"') "),i+=") && (missing"+n+" = "+e.util.toQuotedString(e.opts.jsonPointers?E:$)+") ) "}i+=")) { ";var B="missing"+n,k="' + "+B+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.opts.jsonPointers?e.util.getPathExpr(F,B,!0):F+" + "+B);var M=M||[];M.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { property: '"+e.util.escapeQuotes(O)+"', missingProperty: '"+k+"', depsCount: "+C.length+", deps: '"+e.util.escapeQuotes(C.length==1?C[0]:C.join(", "))+"' } ",e.opts.messages!==!1&&(i+=" , message: 'should have ",C.length==1?i+="property "+e.util.escapeQuotes(C[0]):i+="properties "+e.util.escapeQuotes(C.join(", ")),i+=" when property "+e.util.escapeQuotes(O)+" is present' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var _=i;i=M.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+_+"]); ":i+=" validate.errors = ["+_+"]; return false; ":i+=" var err = "+_+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else{i+=" ) { ";var Q=C;if(Q)for(var E,V=-1,Z=Q.length-1;V<Z;){E=Q[V+=1];var $=e.util.getProperty(E),k=e.util.escapeQuotes(E),q=c+$;e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(F,E,e.opts.jsonPointers)),i+=" if ( "+q+" === undefined ",v&&(i+=" || ! Object.prototype.hasOwnProperty.call("+c+", '"+e.util.escapeQuotes(E)+"') "),i+=") { var err = ",e.createErrors!==!1?(i+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { property: '"+e.util.escapeQuotes(O)+"', missingProperty: '"+k+"', depsCount: "+C.length+", deps: '"+e.util.escapeQuotes(C.length==1?C[0]:C.join(", "))+"' } ",e.opts.messages!==!1&&(i+=" , message: 'should have ",C.length==1?i+="property "+e.util.escapeQuotes(C[0]):i+="properties "+e.util.escapeQuotes(C.join(", ")),i+=" when property "+e.util.escapeQuotes(O)+" is present' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}i+=" } ",u&&(h+="}",i+=" else { ")}e.errorPath=F;var U=p.baseId;for(var O in y){var S=y[O];(e.opts.strictKeywords?typeof S=="object"&&Object.keys(S).length>0||S===!1:e.util.schemaHasRules(S,e.RULES.all))&&(i+=" "+m+" = true; if ( "+c+e.util.getProperty(O)+" !== undefined ",v&&(i+=" && Object.prototype.hasOwnProperty.call("+c+", '"+e.util.escapeQuotes(O)+"') "),i+=") { ",p.schema=S,p.schemaPath=l+e.util.getProperty(O),p.errSchemaPath=d+"/"+e.util.escapeFragment(O),i+=" "+e.validate(p)+" ",p.baseId=U,i+=" } ",u&&(i+=" if ("+m+") { ",h+="}"))}return u&&(i+=" "+h+" if ("+f+" == errors) {"),i}});var $u=Y((gC,Mu)=>{"use strict";Mu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="valid"+n,p=e.opts.$data&&o&&o.$data,h;p?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",h="schema"+n):h=o;var m="i"+n,y="schema"+n;p||(i+=" var "+y+" = validate.schema"+l+";"),i+="var "+f+";",p&&(i+=" if (schema"+n+" === undefined) "+f+" = true; else if (!Array.isArray(schema"+n+")) "+f+" = false; else {"),i+=""+f+" = false;for (var "+m+"=0; "+m+"<"+y+".length; "+m+"++) if (equal("+c+", "+y+"["+m+"])) { "+f+" = true; break; }",p&&(i+=" } "),i+=" if (!"+f+") { ";var b=b||[];b.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'enum' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { allowedValues: schema"+n+" } ",e.opts.messages!==!1&&(i+=" , message: 'should be equal to one of the allowed values' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var v=i;return i=b.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+v+"]); ":i+=" validate.errors = ["+v+"]; return false; ":i+=" var err = "+v+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" }",u&&(i+=" else { "),i}});var Ru=Y((bC,qu)=>{"use strict";qu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||"");if(e.opts.format===!1)return u&&(i+=" if (true) { "),i;var f=e.opts.$data&&o&&o.$data,p;f?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",p="schema"+n):p=o;var h=e.opts.unknownFormats,m=Array.isArray(h);if(f){var y="format"+n,b="isObject"+n,v="formatType"+n;i+=" var "+y+" = formats["+p+"]; var "+b+" = typeof "+y+" == 'object' && !("+y+" instanceof RegExp) && "+y+".validate; var "+v+" = "+b+" && "+y+".type || 'string'; if ("+b+") { ",e.async&&(i+=" var async"+n+" = "+y+".async; "),i+=" "+y+" = "+y+".validate; } if ( ",f&&(i+=" ("+p+" !== undefined && typeof "+p+" != 'string') || "),i+=" (",h!="ignore"&&(i+=" ("+p+" && !"+y+" ",m&&(i+=" && self._opts.unknownFormats.indexOf("+p+") == -1 "),i+=") || "),i+=" ("+y+" && "+v+" == '"+a+"' && !(typeof "+y+" == 'function' ? ",e.async?i+=" (async"+n+" ? await "+y+"("+c+") : "+y+"("+c+")) ":i+=" "+y+"("+c+") ",i+=" : "+y+".test("+c+"))))) {"}else{var y=e.formats[o];if(!y){if(h=="ignore")return e.logger.warn('unknown format "'+o+'" ignored in schema at path "'+e.errSchemaPath+'"'),u&&(i+=" if (true) { "),i;if(m&&h.indexOf(o)>=0)return u&&(i+=" if (true) { "),i;throw new Error('unknown format "'+o+'" is used in schema at path "'+e.errSchemaPath+'"')}var b=typeof y=="object"&&!(y instanceof RegExp)&&y.validate,v=b&&y.type||"string";if(b){var S=y.async===!0;y=y.validate}if(v!=a)return u&&(i+=" if (true) { "),i;if(S){if(!e.async)throw new Error("async format in sync schema");var C="formats"+e.util.getProperty(o)+".validate";i+=" if (!(await "+C+"("+c+"))) { "}else{i+=" if (! ";var C="formats"+e.util.getProperty(o);b&&(C+=".validate"),typeof y=="function"?i+=" "+C+"("+c+") ":i+=" "+C+".test("+c+") ",i+=") { "}}var F=F||[];F.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'format' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { format: ",f?i+=""+p:i+=""+e.util.toQuotedString(o),i+=" } ",e.opts.messages!==!1&&(i+=` , message: 'should match format "`,f?i+="' + "+p+" + '":i+=""+e.util.escapeQuotes(o),i+=`"' `),e.opts.verbose&&(i+=" , schema: ",f?i+="validate.schema"+l:i+=""+e.util.toQuotedString(o),i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var O=i;return i=F.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+O+"]); ":i+=" validate.errors = ["+O+"]; return false; ":i+=" var err = "+O+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",u&&(i+=" else { "),i}});var ju=Y((vC,ku)=>{"use strict";ku.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="valid"+n,p="errs__"+n,h=e.util.copy(e);h.level++;var m="valid"+h.level,y=e.schema.then,b=e.schema.else,v=y!==void 0&&(e.opts.strictKeywords?typeof y=="object"&&Object.keys(y).length>0||y===!1:e.util.schemaHasRules(y,e.RULES.all)),S=b!==void 0&&(e.opts.strictKeywords?typeof b=="object"&&Object.keys(b).length>0||b===!1:e.util.schemaHasRules(b,e.RULES.all)),C=h.baseId;if(v||S){var F;h.createErrors=!1,h.schema=o,h.schemaPath=l,h.errSchemaPath=d,i+=" var "+p+" = errors; var "+f+" = true; ";var O=e.compositeRule;e.compositeRule=h.compositeRule=!0,i+=" "+e.validate(h)+" ",h.baseId=C,h.createErrors=!0,i+=" errors = "+p+"; if (vErrors !== null) { if ("+p+") vErrors.length = "+p+"; else vErrors = null; } ",e.compositeRule=h.compositeRule=O,v?(i+=" if ("+m+") { ",h.schema=e.schema.then,h.schemaPath=e.schemaPath+".then",h.errSchemaPath=e.errSchemaPath+"/then",i+=" "+e.validate(h)+" ",h.baseId=C,i+=" "+f+" = "+m+"; ",v&&S?(F="ifClause"+n,i+=" var "+F+" = 'then'; "):F="'then'",i+=" } ",S&&(i+=" else { ")):i+=" if (!"+m+") { ",S&&(h.schema=e.schema.else,h.schemaPath=e.schemaPath+".else",h.errSchemaPath=e.errSchemaPath+"/else",i+=" "+e.validate(h)+" ",h.baseId=C,i+=" "+f+" = "+m+"; ",v&&S?(F="ifClause"+n,i+=" var "+F+" = 'else'; "):F="'else'",i+=" } "),i+=" if (!"+f+") { var err = ",e.createErrors!==!1?(i+=" { keyword: 'if' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { failingKeyword: "+F+" } ",e.opts.messages!==!1&&(i+=` , message: 'should match "' + `+F+` + '" schema' `),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&u&&(e.async?i+=" throw new ValidationError(vErrors); ":i+=" validate.errors = vErrors; return false; "),i+=" } ",u&&(i+=" else { ")}else u&&(i+=" if (true) { ");return i}});var Vu=Y((SC,Wu)=>{"use strict";Wu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="valid"+n,p="errs__"+n,h=e.util.copy(e),m="";h.level++;var y="valid"+h.level,b="i"+n,v=h.dataLevel=e.dataLevel+1,S="data"+v,C=e.baseId;if(i+="var "+p+" = errors;var "+f+";",Array.isArray(o)){var F=e.schema.additionalItems;if(F===!1){i+=" "+f+" = "+c+".length <= "+o.length+"; ";var O=d;d=e.errSchemaPath+"/additionalItems",i+=" if (!"+f+") { ";var N=N||[];N.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'additionalItems' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { limit: "+o.length+" } ",e.opts.messages!==!1&&(i+=" , message: 'should NOT have more than "+o.length+" items' "),e.opts.verbose&&(i+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var E=i;i=N.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+E+"]); ":i+=" validate.errors = ["+E+"]; return false; ":i+=" var err = "+E+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",d=O,u&&(m+="}",i+=" else { ")}var P=o;if(P){for(var R,$=-1,q=P.length-1;$<q;)if(R=P[$+=1],e.opts.strictKeywords?typeof R=="object"&&Object.keys(R).length>0||R===!1:e.util.schemaHasRules(R,e.RULES.all)){i+=" "+y+" = true; if ("+c+".length > "+$+") { ";var B=c+"["+$+"]";h.schema=R,h.schemaPath=l+"["+$+"]",h.errSchemaPath=d+"/"+$,h.errorPath=e.util.getPathExpr(e.errorPath,$,e.opts.jsonPointers,!0),h.dataPathArr[v]=$;var k=e.validate(h);h.baseId=C,e.util.varOccurences(k,S)<2?i+=" "+e.util.varReplace(k,S,B)+" ":i+=" var "+S+" = "+B+"; "+k+" ",i+=" } ",u&&(i+=" if ("+y+") { ",m+="}")}}if(typeof F=="object"&&(e.opts.strictKeywords?typeof F=="object"&&Object.keys(F).length>0||F===!1:e.util.schemaHasRules(F,e.RULES.all))){h.schema=F,h.schemaPath=e.schemaPath+".additionalItems",h.errSchemaPath=e.errSchemaPath+"/additionalItems",i+=" "+y+" = true; if ("+c+".length > "+o.length+") { for (var "+b+" = "+o.length+"; "+b+" < "+c+".length; "+b+"++) { ",h.errorPath=e.util.getPathExpr(e.errorPath,b,e.opts.jsonPointers,!0);var B=c+"["+b+"]";h.dataPathArr[v]=b;var k=e.validate(h);h.baseId=C,e.util.varOccurences(k,S)<2?i+=" "+e.util.varReplace(k,S,B)+" ":i+=" var "+S+" = "+B+"; "+k+" ",u&&(i+=" if (!"+y+") break; "),i+=" } } ",u&&(i+=" if ("+y+") { ",m+="}")}}else if(e.opts.strictKeywords?typeof o=="object"&&Object.keys(o).length>0||o===!1:e.util.schemaHasRules(o,e.RULES.all)){h.schema=o,h.schemaPath=l,h.errSchemaPath=d,i+=" for (var "+b+" = 0; "+b+" < "+c+".length; "+b+"++) { ",h.errorPath=e.util.getPathExpr(e.errorPath,b,e.opts.jsonPointers,!0);var B=c+"["+b+"]";h.dataPathArr[v]=b;var k=e.validate(h);h.baseId=C,e.util.varOccurences(k,S)<2?i+=" "+e.util.varReplace(k,S,B)+" ":i+=" var "+S+" = "+B+"; "+k+" ",u&&(i+=" if (!"+y+") break; "),i+=" }"}return u&&(i+=" "+m+" if ("+p+" == errors) {"),i}});var $s=Y((wC,_u)=>{"use strict";_u.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,C,c="data"+(s||""),f=e.opts.$data&&o&&o.$data,p;f?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",p="schema"+n):p=o;var h=r=="maximum",m=h?"exclusiveMaximum":"exclusiveMinimum",y=e.schema[m],b=e.opts.$data&&y&&y.$data,v=h?"<":">",S=h?">":"<",C=void 0;if(!(f||typeof o=="number"||o===void 0))throw new Error(r+" must be number");if(!(b||y===void 0||typeof y=="number"||typeof y=="boolean"))throw new Error(m+" must be number or boolean");if(b){var F=e.util.getData(y.$data,s,e.dataPathArr),O="exclusive"+n,N="exclType"+n,E="exclIsNumber"+n,P="op"+n,R="' + "+P+" + '";i+=" var schemaExcl"+n+" = "+F+"; ",F="schemaExcl"+n,i+=" var "+O+"; var "+N+" = typeof "+F+"; if ("+N+" != 'boolean' && "+N+" != 'undefined' && "+N+" != 'number') { ";var C=m,$=$||[];$.push(i),i="",e.createErrors!==!1?(i+=" { keyword: '"+(C||"_exclusiveLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: {} ",e.opts.messages!==!1&&(i+=" , message: '"+m+" should be boolean' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var q=i;i=$.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+q+"]); ":i+=" validate.errors = ["+q+"]; return false; ":i+=" var err = "+q+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else if ( ",f&&(i+=" ("+p+" !== undefined && typeof "+p+" != 'number') || "),i+=" "+N+" == 'number' ? ( ("+O+" = "+p+" === undefined || "+F+" "+v+"= "+p+") ? "+c+" "+S+"= "+F+" : "+c+" "+S+" "+p+" ) : ( ("+O+" = "+F+" === true) ? "+c+" "+S+"= "+p+" : "+c+" "+S+" "+p+" ) || "+c+" !== "+c+") { var op"+n+" = "+O+" ? '"+v+"' : '"+v+"='; ",o===void 0&&(C=m,d=e.errSchemaPath+"/"+m,p=F,f=b)}else{var E=typeof y=="number",R=v;if(E&&f){var P="'"+R+"'";i+=" if ( ",f&&(i+=" ("+p+" !== undefined && typeof "+p+" != 'number') || "),i+=" ( "+p+" === undefined || "+y+" "+v+"= "+p+" ? "+c+" "+S+"= "+y+" : "+c+" "+S+" "+p+" ) || "+c+" !== "+c+") { "}else{E&&o===void 0?(O=!0,C=m,d=e.errSchemaPath+"/"+m,p=y,S+="="):(E&&(p=Math[h?"min":"max"](y,o)),y===(E?p:!0)?(O=!0,C=m,d=e.errSchemaPath+"/"+m,S+="="):(O=!1,R+="="));var P="'"+R+"'";i+=" if ( ",f&&(i+=" ("+p+" !== undefined && typeof "+p+" != 'number') || "),i+=" "+c+" "+S+" "+p+" || "+c+" !== "+c+") { "}}C=C||r;var $=$||[];$.push(i),i="",e.createErrors!==!1?(i+=" { keyword: '"+(C||"_limit")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { comparison: "+P+", limit: "+p+", exclusive: "+O+" } ",e.opts.messages!==!1&&(i+=" , message: 'should be "+R+" ",f?i+="' + "+p:i+=""+p+"'"),e.opts.verbose&&(i+=" , schema: ",f?i+="validate.schema"+l:i+=""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var q=i;return i=$.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+q+"]); ":i+=" validate.errors = ["+q+"]; return false; ":i+=" var err = "+q+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",u&&(i+=" else { "),i}});var qs=Y((xC,zu)=>{"use strict";zu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,m,c="data"+(s||""),f=e.opts.$data&&o&&o.$data,p;if(f?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",p="schema"+n):p=o,!(f||typeof o=="number"))throw new Error(r+" must be number");var h=r=="maxItems"?">":"<";i+="if ( ",f&&(i+=" ("+p+" !== undefined && typeof "+p+" != 'number') || "),i+=" "+c+".length "+h+" "+p+") { ";var m=r,y=y||[];y.push(i),i="",e.createErrors!==!1?(i+=" { keyword: '"+(m||"_limitItems")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { limit: "+p+" } ",e.opts.messages!==!1&&(i+=" , message: 'should NOT have ",r=="maxItems"?i+="more":i+="fewer",i+=" than ",f?i+="' + "+p+" + '":i+=""+o,i+=" items' "),e.opts.verbose&&(i+=" , schema: ",f?i+="validate.schema"+l:i+=""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var b=i;return i=y.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+b+"]); ":i+=" validate.errors = ["+b+"]; return false; ":i+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",u&&(i+=" else { "),i}});var Rs=Y((CC,Uu)=>{"use strict";Uu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,m,c="data"+(s||""),f=e.opts.$data&&o&&o.$data,p;if(f?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",p="schema"+n):p=o,!(f||typeof o=="number"))throw new Error(r+" must be number");var h=r=="maxLength"?">":"<";i+="if ( ",f&&(i+=" ("+p+" !== undefined && typeof "+p+" != 'number') || "),e.opts.unicode===!1?i+=" "+c+".length ":i+=" ucs2length("+c+") ",i+=" "+h+" "+p+") { ";var m=r,y=y||[];y.push(i),i="",e.createErrors!==!1?(i+=" { keyword: '"+(m||"_limitLength")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { limit: "+p+" } ",e.opts.messages!==!1&&(i+=" , message: 'should NOT be ",r=="maxLength"?i+="longer":i+="shorter",i+=" than ",f?i+="' + "+p+" + '":i+=""+o,i+=" characters' "),e.opts.verbose&&(i+=" , schema: ",f?i+="validate.schema"+l:i+=""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var b=i;return i=y.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+b+"]); ":i+=" validate.errors = ["+b+"]; return false; ":i+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",u&&(i+=" else { "),i}});var ks=Y((TC,Hu)=>{"use strict";Hu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,m,c="data"+(s||""),f=e.opts.$data&&o&&o.$data,p;if(f?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",p="schema"+n):p=o,!(f||typeof o=="number"))throw new Error(r+" must be number");var h=r=="maxProperties"?">":"<";i+="if ( ",f&&(i+=" ("+p+" !== undefined && typeof "+p+" != 'number') || "),i+=" Object.keys("+c+").length "+h+" "+p+") { ";var m=r,y=y||[];y.push(i),i="",e.createErrors!==!1?(i+=" { keyword: '"+(m||"_limitProperties")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { limit: "+p+" } ",e.opts.messages!==!1&&(i+=" , message: 'should NOT have ",r=="maxProperties"?i+="more":i+="fewer",i+=" than ",f?i+="' + "+p+" + '":i+=""+o,i+=" properties' "),e.opts.verbose&&(i+=" , schema: ",f?i+="validate.schema"+l:i+=""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var b=i;return i=y.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+b+"]); ":i+=" validate.errors = ["+b+"]; return false; ":i+=" var err = "+b+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",u&&(i+=" else { "),i}});var Qu=Y((FC,Gu)=>{"use strict";Gu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f=e.opts.$data&&o&&o.$data,p;if(f?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",p="schema"+n):p=o,!(f||typeof o=="number"))throw new Error(r+" must be number");i+="var division"+n+";if (",f&&(i+=" "+p+" !== undefined && ( typeof "+p+" != 'number' || "),i+=" (division"+n+" = "+c+" / "+p+", ",e.opts.multipleOfPrecision?i+=" Math.abs(Math.round(division"+n+") - division"+n+") > 1e-"+e.opts.multipleOfPrecision+" ":i+=" division"+n+" !== parseInt(division"+n+") ",i+=" ) ",f&&(i+=" ) "),i+=" ) { ";var h=h||[];h.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'multipleOf' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { multipleOf: "+p+" } ",e.opts.messages!==!1&&(i+=" , message: 'should be multiple of ",f?i+="' + "+p:i+=""+p+"'"),e.opts.verbose&&(i+=" , schema: ",f?i+="validate.schema"+l:i+=""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var m=i;return i=h.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+m+"]); ":i+=" validate.errors = ["+m+"]; return false; ":i+=" var err = "+m+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",u&&(i+=" else { "),i}});var Ku=Y((IC,Zu)=>{"use strict";Zu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="errs__"+n,p=e.util.copy(e);p.level++;var h="valid"+p.level;if(e.opts.strictKeywords?typeof o=="object"&&Object.keys(o).length>0||o===!1:e.util.schemaHasRules(o,e.RULES.all)){p.schema=o,p.schemaPath=l,p.errSchemaPath=d,i+=" var "+f+" = errors; ";var m=e.compositeRule;e.compositeRule=p.compositeRule=!0,p.createErrors=!1;var y;p.opts.allErrors&&(y=p.opts.allErrors,p.opts.allErrors=!1),i+=" "+e.validate(p)+" ",p.createErrors=!0,y&&(p.opts.allErrors=y),e.compositeRule=p.compositeRule=m,i+=" if ("+h+") { ";var b=b||[];b.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'not' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: {} ",e.opts.messages!==!1&&(i+=" , message: 'should NOT be valid' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var v=i;i=b.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+v+"]); ":i+=" validate.errors = ["+v+"]; return false; ":i+=" var err = "+v+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { errors = "+f+"; if (vErrors !== null) { if ("+f+") vErrors.length = "+f+"; else vErrors = null; } ",e.opts.allErrors&&(i+=" } ")}else i+=" var err = ",e.createErrors!==!1?(i+=" { keyword: 'not' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: {} ",e.opts.messages!==!1&&(i+=" , message: 'should NOT be valid' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",u&&(i+=" if (false) { ");return i}});var Yu=Y((OC,Ju)=>{"use strict";Ju.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="valid"+n,p="errs__"+n,h=e.util.copy(e),m="";h.level++;var y="valid"+h.level,b=h.baseId,v="prevValid"+n,S="passingSchemas"+n;i+="var "+p+" = errors , "+v+" = false , "+f+" = false , "+S+" = null; ";var C=e.compositeRule;e.compositeRule=h.compositeRule=!0;var F=o;if(F)for(var O,N=-1,E=F.length-1;N<E;)O=F[N+=1],(e.opts.strictKeywords?typeof O=="object"&&Object.keys(O).length>0||O===!1:e.util.schemaHasRules(O,e.RULES.all))?(h.schema=O,h.schemaPath=l+"["+N+"]",h.errSchemaPath=d+"/"+N,i+=" "+e.validate(h)+" ",h.baseId=b):i+=" var "+y+" = true; ",N&&(i+=" if ("+y+" && "+v+") { "+f+" = false; "+S+" = ["+S+", "+N+"]; } else { ",m+="}"),i+=" if ("+y+") { "+f+" = "+v+" = true; "+S+" = "+N+"; }";return e.compositeRule=h.compositeRule=C,i+=""+m+"if (!"+f+") { var err = ",e.createErrors!==!1?(i+=" { keyword: 'oneOf' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { passingSchemas: "+S+" } ",e.opts.messages!==!1&&(i+=" , message: 'should match exactly one schema in oneOf' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&u&&(e.async?i+=" throw new ValidationError(vErrors); ":i+=" validate.errors = vErrors; return false; "),i+="} else { errors = "+p+"; if (vErrors !== null) { if ("+p+") vErrors.length = "+p+"; else vErrors = null; }",e.opts.allErrors&&(i+=" } "),i}});var ec=Y((AC,Xu)=>{"use strict";Xu.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f=e.opts.$data&&o&&o.$data,p;f?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",p="schema"+n):p=o;var h=f?"(new RegExp("+p+"))":e.usePattern(o);i+="if ( ",f&&(i+=" ("+p+" !== undefined && typeof "+p+" != 'string') || "),i+=" !"+h+".test("+c+") ) { ";var m=m||[];m.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'pattern' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { pattern: ",f?i+=""+p:i+=""+e.util.toQuotedString(o),i+=" } ",e.opts.messages!==!1&&(i+=` , message: 'should match pattern "`,f?i+="' + "+p+" + '":i+=""+e.util.escapeQuotes(o),i+=`"' `),e.opts.verbose&&(i+=" , schema: ",f?i+="validate.schema"+l:i+=""+e.util.toQuotedString(o),i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var y=i;return i=m.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+y+"]); ":i+=" validate.errors = ["+y+"]; return false; ":i+=" var err = "+y+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+="} ",u&&(i+=" else { "),i}});var rc=Y((PC,tc)=>{"use strict";tc.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="errs__"+n,p=e.util.copy(e),h="";p.level++;var m="valid"+p.level,y="key"+n,b="idx"+n,v=p.dataLevel=e.dataLevel+1,S="data"+v,C="dataProperties"+n,F=Object.keys(o||{}).filter(V),O=e.schema.patternProperties||{},N=Object.keys(O).filter(V),E=e.schema.additionalProperties,P=F.length||N.length,R=E===!1,$=typeof E=="object"&&Object.keys(E).length,q=e.opts.removeAdditional,B=R||$||q,k=e.opts.ownProperties,M=e.baseId,_=e.schema.required;if(_&&!(e.opts.$data&&_.$data)&&_.length<e.opts.loopRequired)var Q=e.util.toHash(_);function V(Mt){return Mt!=="__proto__"}if(i+="var "+f+" = errors;var "+m+" = true;",k&&(i+=" var "+C+" = undefined;"),B){if(k?i+=" "+C+" = "+C+" || Object.keys("+c+"); for (var "+b+"=0; "+b+"<"+C+".length; "+b+"++) { var "+y+" = "+C+"["+b+"]; ":i+=" for (var "+y+" in "+c+") { ",P){if(i+=" var isAdditional"+n+" = !(false ",F.length)if(F.length>8)i+=" || validate.schema"+l+".hasOwnProperty("+y+") ";else{var Z=F;if(Z)for(var U,oe=-1,Fe=Z.length-1;oe<Fe;)U=Z[oe+=1],i+=" || "+y+" == "+e.util.toQuotedString(U)+" "}if(N.length){var ke=N;if(ke)for(var te,ve=-1,Ie=ke.length-1;ve<Ie;)te=ke[ve+=1],i+=" || "+e.usePattern(te)+".test("+y+") "}i+=" ); if (isAdditional"+n+") { "}if(q=="all")i+=" delete "+c+"["+y+"]; ";else{var We=e.errorPath,Tt="' + "+y+" + '";if(e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(e.errorPath,y,e.opts.jsonPointers)),R)if(q)i+=" delete "+c+"["+y+"]; ";else{i+=" "+m+" = false; ";var ot=d;d=e.errSchemaPath+"/additionalProperties";var Oe=Oe||[];Oe.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'additionalProperties' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { additionalProperty: '"+Tt+"' } ",e.opts.messages!==!1&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is an invalid additional property":i+="should NOT have additional properties",i+="' "),e.opts.verbose&&(i+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var xe=i;i=Oe.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+xe+"]); ":i+=" validate.errors = ["+xe+"]; return false; ":i+=" var err = "+xe+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",d=ot,u&&(i+=" break; ")}else if($)if(q=="failing"){i+=" var "+f+" = errors; ";var Ft=e.compositeRule;e.compositeRule=p.compositeRule=!0,p.schema=E,p.schemaPath=e.schemaPath+".additionalProperties",p.errSchemaPath=e.errSchemaPath+"/additionalProperties",p.errorPath=e.opts._errorDataPathProperty?e.errorPath:e.util.getPathExpr(e.errorPath,y,e.opts.jsonPointers);var Ge=c+"["+y+"]";p.dataPathArr[v]=y;var fe=e.validate(p);p.baseId=M,e.util.varOccurences(fe,S)<2?i+=" "+e.util.varReplace(fe,S,Ge)+" ":i+=" var "+S+" = "+Ge+"; "+fe+" ",i+=" if (!"+m+") { errors = "+f+"; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete "+c+"["+y+"]; } ",e.compositeRule=p.compositeRule=Ft}else{p.schema=E,p.schemaPath=e.schemaPath+".additionalProperties",p.errSchemaPath=e.errSchemaPath+"/additionalProperties",p.errorPath=e.opts._errorDataPathProperty?e.errorPath:e.util.getPathExpr(e.errorPath,y,e.opts.jsonPointers);var Ge=c+"["+y+"]";p.dataPathArr[v]=y;var fe=e.validate(p);p.baseId=M,e.util.varOccurences(fe,S)<2?i+=" "+e.util.varReplace(fe,S,Ge)+" ":i+=" var "+S+" = "+Ge+"; "+fe+" ",u&&(i+=" if (!"+m+") break; ")}e.errorPath=We}P&&(i+=" } "),i+=" } ",u&&(i+=" if ("+m+") { ",h+="}")}var mr=e.opts.useDefaults&&!e.compositeRule;if(F.length){var Xt=F;if(Xt)for(var U,qr=-1,Rr=Xt.length-1;qr<Rr;){U=Xt[qr+=1];var Je=o[U];if(e.opts.strictKeywords?typeof Je=="object"&&Object.keys(Je).length>0||Je===!1:e.util.schemaHasRules(Je,e.RULES.all)){var It=e.util.getProperty(U),Ge=c+It,lt=mr&&Je.default!==void 0;p.schema=Je,p.schemaPath=l+It,p.errSchemaPath=d+"/"+e.util.escapeFragment(U),p.errorPath=e.util.getPath(e.errorPath,U,e.opts.jsonPointers),p.dataPathArr[v]=e.util.toQuotedString(U);var fe=e.validate(p);if(p.baseId=M,e.util.varOccurences(fe,S)<2){fe=e.util.varReplace(fe,S,Ge);var it=Ge}else{var it=S;i+=" var "+S+" = "+Ge+"; "}if(lt)i+=" "+fe+" ";else{if(Q&&Q[U]){i+=" if ( "+it+" === undefined ",k&&(i+=" || ! Object.prototype.hasOwnProperty.call("+c+", '"+e.util.escapeQuotes(U)+"') "),i+=") { "+m+" = false; ";var We=e.errorPath,ot=d,Ut=e.util.escapeQuotes(U);e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(We,U,e.opts.jsonPointers)),d=e.errSchemaPath+"/required";var Oe=Oe||[];Oe.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { missingProperty: '"+Ut+"' } ",e.opts.messages!==!1&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+Ut+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var xe=i;i=Oe.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+xe+"]); ":i+=" validate.errors = ["+xe+"]; return false; ":i+=" var err = "+xe+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",d=ot,e.errorPath=We,i+=" } else { "}else u?(i+=" if ( "+it+" === undefined ",k&&(i+=" || ! Object.prototype.hasOwnProperty.call("+c+", '"+e.util.escapeQuotes(U)+"') "),i+=") { "+m+" = true; } else { "):(i+=" if ("+it+" !== undefined ",k&&(i+=" && Object.prototype.hasOwnProperty.call("+c+", '"+e.util.escapeQuotes(U)+"') "),i+=" ) { ");i+=" "+fe+" } "}}u&&(i+=" if ("+m+") { ",h+="}")}}if(N.length){var ht=N;if(ht)for(var te,ua=-1,An=ht.length-1;ua<An;){te=ht[ua+=1];var Je=O[te];if(e.opts.strictKeywords?typeof Je=="object"&&Object.keys(Je).length>0||Je===!1:e.util.schemaHasRules(Je,e.RULES.all)){p.schema=Je,p.schemaPath=e.schemaPath+".patternProperties"+e.util.getProperty(te),p.errSchemaPath=e.errSchemaPath+"/patternProperties/"+e.util.escapeFragment(te),k?i+=" "+C+" = "+C+" || Object.keys("+c+"); for (var "+b+"=0; "+b+"<"+C+".length; "+b+"++) { var "+y+" = "+C+"["+b+"]; ":i+=" for (var "+y+" in "+c+") { ",i+=" if ("+e.usePattern(te)+".test("+y+")) { ",p.errorPath=e.util.getPathExpr(e.errorPath,y,e.opts.jsonPointers);var Ge=c+"["+y+"]";p.dataPathArr[v]=y;var fe=e.validate(p);p.baseId=M,e.util.varOccurences(fe,S)<2?i+=" "+e.util.varReplace(fe,S,Ge)+" ":i+=" var "+S+" = "+Ge+"; "+fe+" ",u&&(i+=" if (!"+m+") break; "),i+=" } ",u&&(i+=" else "+m+" = true; "),i+=" } ",u&&(i+=" if ("+m+") { ",h+="}")}}}return u&&(i+=" "+h+" if ("+f+" == errors) {"),i}});var ac=Y((EC,ic)=>{"use strict";ic.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="errs__"+n,p=e.util.copy(e),h="";p.level++;var m="valid"+p.level;if(i+="var "+f+" = errors;",e.opts.strictKeywords?typeof o=="object"&&Object.keys(o).length>0||o===!1:e.util.schemaHasRules(o,e.RULES.all)){p.schema=o,p.schemaPath=l,p.errSchemaPath=d;var y="key"+n,b="idx"+n,v="i"+n,S="' + "+y+" + '",C=p.dataLevel=e.dataLevel+1,F="data"+C,O="dataProperties"+n,N=e.opts.ownProperties,E=e.baseId;N&&(i+=" var "+O+" = undefined; "),N?i+=" "+O+" = "+O+" || Object.keys("+c+"); for (var "+b+"=0; "+b+"<"+O+".length; "+b+"++) { var "+y+" = "+O+"["+b+"]; ":i+=" for (var "+y+" in "+c+") { ",i+=" var startErrs"+n+" = errors; ";var P=y,R=e.compositeRule;e.compositeRule=p.compositeRule=!0;var $=e.validate(p);p.baseId=E,e.util.varOccurences($,F)<2?i+=" "+e.util.varReplace($,F,P)+" ":i+=" var "+F+" = "+P+"; "+$+" ",e.compositeRule=p.compositeRule=R,i+=" if (!"+m+") { for (var "+v+"=startErrs"+n+"; "+v+"<errors; "+v+"++) { vErrors["+v+"].propertyName = "+y+"; } var err = ",e.createErrors!==!1?(i+=" { keyword: 'propertyNames' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { propertyName: '"+S+"' } ",e.opts.messages!==!1&&(i+=" , message: 'property name \\'"+S+"\\' is invalid' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&u&&(e.async?i+=" throw new ValidationError(vErrors); ":i+=" validate.errors = vErrors; return false; "),u&&(i+=" break; "),i+=" } }"}return u&&(i+=" "+h+" if ("+f+" == errors) {"),i}});var sc=Y((LC,nc)=>{"use strict";nc.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="valid"+n,p=e.opts.$data&&o&&o.$data,h;p?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",h="schema"+n):h=o;var m="schema"+n;if(!p)if(o.length<e.opts.loopRequired&&e.schema.properties&&Object.keys(e.schema.properties).length){var y=[],b=o;if(b)for(var v,S=-1,C=b.length-1;S<C;){v=b[S+=1];var F=e.schema.properties[v];F&&(e.opts.strictKeywords?typeof F=="object"&&Object.keys(F).length>0||F===!1:e.util.schemaHasRules(F,e.RULES.all))||(y[y.length]=v)}}else var y=o;if(p||y.length){var O=e.errorPath,N=p||y.length>=e.opts.loopRequired,E=e.opts.ownProperties;if(u)if(i+=" var missing"+n+"; ",N){p||(i+=" var "+m+" = validate.schema"+l+"; ");var P="i"+n,R="schema"+n+"["+P+"]",$="' + "+R+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(O,R,e.opts.jsonPointers)),i+=" var "+f+" = true; ",p&&(i+=" if (schema"+n+" === undefined) "+f+" = true; else if (!Array.isArray(schema"+n+")) "+f+" = false; else {"),i+=" for (var "+P+" = 0; "+P+" < "+m+".length; "+P+"++) { "+f+" = "+c+"["+m+"["+P+"]] !== undefined ",E&&(i+=" && Object.prototype.hasOwnProperty.call("+c+", "+m+"["+P+"]) "),i+="; if (!"+f+") break; } ",p&&(i+=" } "),i+=" if (!"+f+") { ";var q=q||[];q.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { missingProperty: '"+$+"' } ",e.opts.messages!==!1&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+$+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var B=i;i=q.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+B+"]); ":i+=" validate.errors = ["+B+"]; return false; ":i+=" var err = "+B+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { "}else{i+=" if ( ";var k=y;if(k)for(var M,P=-1,_=k.length-1;P<_;){M=k[P+=1],P&&(i+=" || ");var Q=e.util.getProperty(M),V=c+Q;i+=" ( ( "+V+" === undefined ",E&&(i+=" || ! Object.prototype.hasOwnProperty.call("+c+", '"+e.util.escapeQuotes(M)+"') "),i+=") && (missing"+n+" = "+e.util.toQuotedString(e.opts.jsonPointers?M:Q)+") ) "}i+=") { ";var R="missing"+n,$="' + "+R+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.opts.jsonPointers?e.util.getPathExpr(O,R,!0):O+" + "+R);var q=q||[];q.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { missingProperty: '"+$+"' } ",e.opts.messages!==!1&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+$+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var B=i;i=q.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+B+"]); ":i+=" validate.errors = ["+B+"]; return false; ":i+=" var err = "+B+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } else { "}else if(N){p||(i+=" var "+m+" = validate.schema"+l+"; ");var P="i"+n,R="schema"+n+"["+P+"]",$="' + "+R+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(O,R,e.opts.jsonPointers)),p&&(i+=" if ("+m+" && !Array.isArray("+m+")) { var err = ",e.createErrors!==!1?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { missingProperty: '"+$+"' } ",e.opts.messages!==!1&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+$+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if ("+m+" !== undefined) { "),i+=" for (var "+P+" = 0; "+P+" < "+m+".length; "+P+"++) { if ("+c+"["+m+"["+P+"]] === undefined ",E&&(i+=" || ! Object.prototype.hasOwnProperty.call("+c+", "+m+"["+P+"]) "),i+=") { var err = ",e.createErrors!==!1?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { missingProperty: '"+$+"' } ",e.opts.messages!==!1&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+$+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } ",p&&(i+=" } ")}else{var Z=y;if(Z)for(var M,U=-1,oe=Z.length-1;U<oe;){M=Z[U+=1];var Q=e.util.getProperty(M),$=e.util.escapeQuotes(M),V=c+Q;e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(O,M,e.opts.jsonPointers)),i+=" if ( "+V+" === undefined ",E&&(i+=" || ! Object.prototype.hasOwnProperty.call("+c+", '"+e.util.escapeQuotes(M)+"') "),i+=") { var err = ",e.createErrors!==!1?(i+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { missingProperty: '"+$+"' } ",e.opts.messages!==!1&&(i+=" , message: '",e.opts._errorDataPathProperty?i+="is a required property":i+="should have required property \\'"+$+"\\'",i+="' "),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}e.errorPath=O}else u&&(i+=" if (true) {");return i}});var lc=Y((NC,oc)=>{"use strict";oc.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c="data"+(s||""),f="valid"+n,p=e.opts.$data&&o&&o.$data,h;if(p?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",h="schema"+n):h=o,(o||p)&&e.opts.uniqueItems!==!1){p&&(i+=" var "+f+"; if ("+h+" === false || "+h+" === undefined) "+f+" = true; else if (typeof "+h+" != 'boolean') "+f+" = false; else { "),i+=" var i = "+c+".length , "+f+" = true , j; if (i > 1) { ";var m=e.schema.items&&e.schema.items.type,y=Array.isArray(m);if(!m||m=="object"||m=="array"||y&&(m.indexOf("object")>=0||m.indexOf("array")>=0))i+=" outer: for (;i--;) { for (j = i; j--;) { if (equal("+c+"[i], "+c+"[j])) { "+f+" = false; break outer; } } } ";else{i+=" var itemIndices = {}, item; for (;i--;) { var item = "+c+"[i]; ";var b="checkDataType"+(y?"s":"");i+=" if ("+e.util[b](m,"item",e.opts.strictNumbers,!0)+") continue; ",y&&(i+=` if (typeof item == 'string') item = '"' + item; `),i+=" if (typeof itemIndices[item] == 'number') { "+f+" = false; j = itemIndices[item]; break; } itemIndices[item] = i; } "}i+=" } ",p&&(i+=" } "),i+=" if (!"+f+") { ";var v=v||[];v.push(i),i="",e.createErrors!==!1?(i+=" { keyword: 'uniqueItems' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { i: i, j: j } ",e.opts.messages!==!1&&(i+=" , message: 'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)' "),e.opts.verbose&&(i+=" , schema: ",p?i+="validate.schema"+l:i+=""+o,i+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),i+=" } "):i+=" {} ";var S=i;i=v.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+S+"]); ":i+=" validate.errors = ["+S+"]; return false; ":i+=" var err = "+S+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",i+=" } ",u&&(i+=" else { ")}else u&&(i+=" if (true) { ");return i}});var uc=Y((DC,dc)=>{"use strict";dc.exports={$ref:xu(),allOf:Tu(),anyOf:Iu(),$comment:Au(),const:Eu(),contains:Nu(),dependencies:Bu(),enum:$u(),format:Ru(),if:ju(),items:Vu(),maximum:$s(),minimum:$s(),maxItems:qs(),minItems:qs(),maxLength:Rs(),minLength:Rs(),maxProperties:ks(),minProperties:ks(),multipleOf:Qu(),not:Ku(),oneOf:Yu(),pattern:ec(),properties:rc(),propertyNames:ac(),required:sc(),uniqueItems:lc(),validate:Bs()}});var fc=Y((BC,pc)=>{"use strict";var cc=uc(),js=Zr().toHash;pc.exports=function(){var e=[{type:"number",rules:[{maximum:["exclusiveMaximum"]},{minimum:["exclusiveMinimum"]},"multipleOf","format"]},{type:"string",rules:["maxLength","minLength","pattern","format"]},{type:"array",rules:["maxItems","minItems","items","contains","uniqueItems"]},{type:"object",rules:["maxProperties","minProperties","required","dependencies","propertyNames",{properties:["additionalProperties","patternProperties"]}]},{rules:["$ref","const","enum","not","anyOf","oneOf","allOf","if"]}],r=["type","$comment"],a=["$schema","$id","id","$data","$async","title","description","default","definitions","examples","readOnly","writeOnly","contentMediaType","contentEncoding","additionalItems","then","else"],i=["number","integer","string","array","object","boolean","null"];return e.all=js(r),e.types=js(i),e.forEach(function(n){n.rules=n.rules.map(function(s){var o;if(typeof s=="object"){var l=Object.keys(s)[0];o=s[l],s=l,o.forEach(function(u){r.push(u),e.all[u]=!0})}r.push(s);var d=e.all[s]={keyword:s,code:cc[s],implements:o};return d}),e.all.$comment={keyword:"$comment",code:cc.$comment},n.type&&(e.types[n.type]=n)}),e.keywords=js(r.concat(a)),e.custom={},e}});var yc=Y((MC,mc)=>{"use strict";var hc=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum","maxLength","minLength","pattern","additionalItems","maxItems","minItems","uniqueItems","maxProperties","minProperties","required","additionalProperties","enum","format","const"];mc.exports=function(t,e){for(var r=0;r<e.length;r++){t=JSON.parse(JSON.stringify(t));var a=e[r].split("/"),i=t,n;for(n=1;n<a.length;n++)i=i[a[n]];for(n=0;n<hc.length;n++){var s=hc[n],o=i[s];o&&(i[s]={anyOf:[o,{$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"}]})}}return t}});var vc=Y(($C,bc)=>{"use strict";var dg=Ja().MissingRef;bc.exports=gc;function gc(t,e,r){var a=this;if(typeof this._opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");typeof e=="function"&&(r=e,e=void 0);var i=n(t).then(function(){var o=a._addSchema(t,void 0,e);return o.validate||s(o)});return r&&i.then(function(o){r(null,o)},r),i;function n(o){var l=o.$schema;return l&&!a.getSchema(l)?gc.call(a,{$ref:l},!0):Promise.resolve()}function s(o){try{return a._compile(o)}catch(d){if(d instanceof dg)return l(d);throw d}function l(d){var u=d.missingSchema;if(p(u))throw new Error("Schema "+u+" is loaded but "+d.missingRef+" cannot be resolved");var c=a._loadingSchemas[u];return c||(c=a._loadingSchemas[u]=a._opts.loadSchema(u),c.then(f,f)),c.then(function(h){if(!p(u))return n(h).then(function(){p(u)||a.addSchema(h,u,void 0,e)})}).then(function(){return s(o)});function f(){delete a._loadingSchemas[u]}function p(h){return a._refs[h]||a._schemas[h]}}}}});var wc=Y((qC,Sc)=>{"use strict";Sc.exports=function(e,r,a){var i=" ",n=e.level,s=e.dataLevel,o=e.schema[r],l=e.schemaPath+e.util.getProperty(r),d=e.errSchemaPath+"/"+r,u=!e.opts.allErrors,c,f="data"+(s||""),p="valid"+n,h="errs__"+n,m=e.opts.$data&&o&&o.$data,y;m?(i+=" var schema"+n+" = "+e.util.getData(o.$data,s,e.dataPathArr)+"; ",y="schema"+n):y=o;var b=this,v="definition"+n,S=b.definition,C="",F,O,N,E,P;if(m&&S.$data){P="keywordValidate"+n;var R=S.validateSchema;i+=" var "+v+" = RULES.custom['"+r+"'].definition; var "+P+" = "+v+".validate;"}else{if(E=e.useCustomRule(b,o,e.schema,e),!E)return;y="validate.schema"+l,P=E.code,F=S.compile,O=S.inline,N=S.macro}var $=P+".errors",q="i"+n,B="ruleErr"+n,k=S.async;if(k&&!e.async)throw new Error("async keyword in sync schema");if(O||N||(i+=""+$+" = null;"),i+="var "+h+" = errors;var "+p+";",m&&S.$data&&(C+="}",i+=" if ("+y+" === undefined) { "+p+" = true; } else { ",R&&(C+="}",i+=" "+p+" = "+v+".validateSchema("+y+"); if ("+p+") { ")),O)S.statements?i+=" "+E.validate+" ":i+=" "+p+" = "+E.validate+"; ";else if(N){var M=e.util.copy(e),C="";M.level++;var _="valid"+M.level;M.schema=E.validate,M.schemaPath="";var Q=e.compositeRule;e.compositeRule=M.compositeRule=!0;var V=e.validate(M).replace(/validate\.schema/g,P);e.compositeRule=M.compositeRule=Q,i+=" "+V}else{var Z=Z||[];Z.push(i),i="",i+=" "+P+".call( ",e.opts.passContext?i+="this":i+="self",F||S.schema===!1?i+=" , "+f+" ":i+=" , "+y+" , "+f+" , validate.schema"+e.schemaPath+" ",i+=" , (dataPath || '')",e.errorPath!='""'&&(i+=" + "+e.errorPath);var U=s?"data"+(s-1||""):"parentData",oe=s?e.dataPathArr[s]:"parentDataProperty";i+=" , "+U+" , "+oe+" , rootData ) ";var Fe=i;i=Z.pop(),S.errors===!1?(i+=" "+p+" = ",k&&(i+="await "),i+=""+Fe+"; "):k?($="customErrors"+n,i+=" var "+$+" = null; try { "+p+" = await "+Fe+"; } catch (e) { "+p+" = false; if (e instanceof ValidationError) "+$+" = e.errors; else throw e; } "):i+=" "+$+" = null; "+p+" = "+Fe+"; "}if(S.modifying&&(i+=" if ("+U+") "+f+" = "+U+"["+oe+"];"),i+=""+C,S.valid)u&&(i+=" if (true) { ");else{i+=" if ( ",S.valid===void 0?(i+=" !",N?i+=""+_:i+=""+p):i+=" "+!S.valid+" ",i+=") { ",c=b.keyword;var Z=Z||[];Z.push(i),i="";var Z=Z||[];Z.push(i),i="",e.createErrors!==!1?(i+=" { keyword: '"+(c||"custom")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { keyword: '"+b.keyword+"' } ",e.opts.messages!==!1&&(i+=` , message: 'should pass "`+b.keyword+`" keyword validation' `),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),i+=" } "):i+=" {} ";var ke=i;i=Z.pop(),!e.compositeRule&&u?e.async?i+=" throw new ValidationError(["+ke+"]); ":i+=" validate.errors = ["+ke+"]; return false; ":i+=" var err = "+ke+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";var te=i;i=Z.pop(),O?S.errors?S.errors!="full"&&(i+=" for (var "+q+"="+h+"; "+q+"<errors; "+q+"++) { var "+B+" = vErrors["+q+"]; if ("+B+".dataPath === undefined) "+B+".dataPath = (dataPath || '') + "+e.errorPath+"; if ("+B+".schemaPath === undefined) { "+B+'.schemaPath = "'+d+'"; } ',e.opts.verbose&&(i+=" "+B+".schema = "+y+"; "+B+".data = "+f+"; "),i+=" } "):S.errors===!1?i+=" "+te+" ":(i+=" if ("+h+" == errors) { "+te+" } else { for (var "+q+"="+h+"; "+q+"<errors; "+q+"++) { var "+B+" = vErrors["+q+"]; if ("+B+".dataPath === undefined) "+B+".dataPath = (dataPath || '') + "+e.errorPath+"; if ("+B+".schemaPath === undefined) { "+B+'.schemaPath = "'+d+'"; } ',e.opts.verbose&&(i+=" "+B+".schema = "+y+"; "+B+".data = "+f+"; "),i+=" } } "):N?(i+=" var err = ",e.createErrors!==!1?(i+=" { keyword: '"+(c||"custom")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(d)+" , params: { keyword: '"+b.keyword+"' } ",e.opts.messages!==!1&&(i+=` , message: 'should pass "`+b.keyword+`" keyword validation' `),e.opts.verbose&&(i+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&u&&(e.async?i+=" throw new ValidationError(vErrors); ":i+=" validate.errors = vErrors; return false; ")):S.errors===!1?i+=" "+te+" ":(i+=" if (Array.isArray("+$+")) { if (vErrors === null) vErrors = "+$+"; else vErrors = vErrors.concat("+$+"); errors = vErrors.length; for (var "+q+"="+h+"; "+q+"<errors; "+q+"++) { var "+B+" = vErrors["+q+"]; if ("+B+".dataPath === undefined) "+B+".dataPath = (dataPath || '') + "+e.errorPath+"; "+B+'.schemaPath = "'+d+'"; ',e.opts.verbose&&(i+=" "+B+".schema = "+y+"; "+B+".data = "+f+"; "),i+=" } } else { "+te+" } "),i+=" } ",u&&(i+=" else { ")}return i}});var Ws=Y((RC,ug)=>{ug.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var Tc=Y((kC,Cc)=>{"use strict";var xc=Ws();Cc.exports={$id:"https://github.com/ajv-validator/ajv/blob/master/lib/definition_schema.js",definitions:{simpleTypes:xc.definitions.simpleTypes},type:"object",dependencies:{schema:["validate"],$data:["validate"],statements:["inline"],valid:{not:{required:["macro"]}}},properties:{type:xc.properties.type,schema:{type:"boolean"},statements:{type:"boolean"},dependencies:{type:"array",items:{type:"string"}},metaSchema:{type:"object"},modifying:{type:"boolean"},valid:{type:"boolean"},$data:{type:"boolean"},async:{type:"boolean"},errors:{anyOf:[{type:"boolean"},{const:"full"}]}}}});var Ic=Y((jC,Fc)=>{"use strict";var cg=/^[a-z_$][a-z0-9_$-]*$/i,pg=wc(),fg=Tc();Fc.exports={add:hg,get:mg,remove:yg,validate:Vs};function hg(t,e){var r=this.RULES;if(r.keywords[t])throw new Error("Keyword "+t+" is already defined");if(!cg.test(t))throw new Error("Keyword "+t+" is not a valid identifier");if(e){this.validateKeyword(e,!0);var a=e.type;if(Array.isArray(a))for(var i=0;i<a.length;i++)s(t,a[i],e);else s(t,a,e);var n=e.metaSchema;n&&(e.$data&&this._opts.$data&&(n={anyOf:[n,{$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"}]}),e.validateSchema=this.compile(n,!0))}r.keywords[t]=r.all[t]=!0;function s(o,l,d){for(var u,c=0;c<r.length;c++){var f=r[c];if(f.type==l){u=f;break}}u||(u={type:l,rules:[]},r.push(u));var p={keyword:o,definition:d,custom:!0,code:pg,implements:d.implements};u.rules.push(p),r.custom[o]=p}return this}function mg(t){var e=this.RULES.custom[t];return e?e.definition:this.RULES.keywords[t]||!1}function yg(t){var e=this.RULES;delete e.keywords[t],delete e.all[t],delete e.custom[t];for(var r=0;r<e.length;r++)for(var a=e[r].rules,i=0;i<a.length;i++)if(a[i].keyword==t){a.splice(i,1);break}return this}function Vs(t,e){Vs.errors=null;var r=this._validateKeyword=this._validateKeyword||this.compile(fg,!0);if(r(t))return!0;if(Vs.errors=r.errors,e)throw new Error("custom keyword definition is invalid: "+this.errorsText(r.errors));return!1}});var Oc=Y((WC,gg)=>{gg.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON Schema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var qc=Y((VC,$c)=>{"use strict";var Pc=su(),Kr=Ka(),bg=lu(),Ec=Os(),vg=Ds(),Sg=Su(),wg=fc(),Lc=yc(),Nc=Zr();$c.exports=qe;qe.prototype.validate=Cg;qe.prototype.compile=Tg;qe.prototype.addSchema=Fg;qe.prototype.addMetaSchema=Ig;qe.prototype.validateSchema=Og;qe.prototype.getSchema=Pg;qe.prototype.removeSchema=Lg;qe.prototype.addFormat=kg;qe.prototype.errorsText=Rg;qe.prototype._addSchema=Ng;qe.prototype._compile=Dg;qe.prototype.compileAsync=vc();var sn=Ic();qe.prototype.addKeyword=sn.add;qe.prototype.getKeyword=sn.get;qe.prototype.removeKeyword=sn.remove;qe.prototype.validateKeyword=sn.validate;var Dc=Ja();qe.ValidationError=Dc.Validation;qe.MissingRefError=Dc.MissingRef;qe.$dataMetaSchema=Lc;var nn="http://json-schema.org/draft-07/schema",Ac=["removeAdditional","useDefaults","coerceTypes","strictDefaults"],xg=["/properties"];function qe(t){if(!(this instanceof qe))return new qe(t);t=this._opts=Nc.copy(t)||{},Ug(this),this._schemas={},this._refs={},this._fragments={},this._formats=Sg(t.format),this._cache=t.cache||new bg,this._loadingSchemas={},this._compilations=[],this.RULES=wg(),this._getId=Bg(t),t.loopRequired=t.loopRequired||1/0,t.errorDataPath=="property"&&(t._errorDataPathProperty=!0),t.serialize===void 0&&(t.serialize=vg),this._metaOpts=zg(this),t.formats&&Vg(this),t.keywords&&_g(this),jg(this),typeof t.meta=="object"&&this.addMetaSchema(t.meta),t.nullable&&this.addKeyword("nullable",{metaSchema:{type:"boolean"}}),Wg(this)}function Cg(t,e){var r;if(typeof t=="string"){if(r=this.getSchema(t),!r)throw new Error('no schema with key or ref "'+t+'"')}else{var a=this._addSchema(t);r=a.validate||this._compile(a)}var i=r(e);return r.$async!==!0&&(this.errors=r.errors),i}function Tg(t,e){var r=this._addSchema(t,void 0,e);return r.validate||this._compile(r)}function Fg(t,e,r,a){if(Array.isArray(t)){for(var i=0;i<t.length;i++)this.addSchema(t[i],void 0,r,a);return this}var n=this._getId(t);if(n!==void 0&&typeof n!="string")throw new Error("schema id must be string");return e=Kr.normalizeId(e||n),Mc(this,e),this._schemas[e]=this._addSchema(t,r,a,!0),this}function Ig(t,e,r){return this.addSchema(t,e,r,!0),this}function Og(t,e){var r=t.$schema;if(r!==void 0&&typeof r!="string")throw new Error("$schema must be a string");if(r=r||this._opts.defaultMeta||Ag(this),!r)return this.logger.warn("meta-schema not available"),this.errors=null,!0;var a=this.validate(r,t);if(!a&&e){var i="schema is invalid: "+this.errorsText();if(this._opts.validateSchema=="log")this.logger.error(i);else throw new Error(i)}return a}function Ag(t){var e=t._opts.meta;return t._opts.defaultMeta=typeof e=="object"?t._getId(e)||e:t.getSchema(nn)?nn:void 0,t._opts.defaultMeta}function Pg(t){var e=Bc(this,t);switch(typeof e){case"object":return e.validate||this._compile(e);case"string":return this.getSchema(e);case"undefined":return Eg(this,t)}}function Eg(t,e){var r=Kr.schema.call(t,{schema:{}},e);if(r){var a=r.schema,i=r.root,n=r.baseId,s=Pc.call(t,a,i,void 0,n);return t._fragments[e]=new Ec({ref:e,fragment:!0,schema:a,root:i,baseId:n,validate:s}),s}}function Bc(t,e){return e=Kr.normalizeId(e),t._schemas[e]||t._refs[e]||t._fragments[e]}function Lg(t){if(t instanceof RegExp)return an(this,this._schemas,t),an(this,this._refs,t),this;switch(typeof t){case"undefined":return an(this,this._schemas),an(this,this._refs),this._cache.clear(),this;case"string":var e=Bc(this,t);return e&&this._cache.del(e.cacheKey),delete this._schemas[t],delete this._refs[t],this;case"object":var r=this._opts.serialize,a=r?r(t):t;this._cache.del(a);var i=this._getId(t);i&&(i=Kr.normalizeId(i),delete this._schemas[i],delete this._refs[i])}return this}function an(t,e,r){for(var a in e){var i=e[a];!i.meta&&(!r||r.test(a))&&(t._cache.del(i.cacheKey),delete e[a])}}function Ng(t,e,r,a){if(typeof t!="object"&&typeof t!="boolean")throw new Error("schema should be object or boolean");var i=this._opts.serialize,n=i?i(t):t,s=this._cache.get(n);if(s)return s;a=a||this._opts.addUsedSchema!==!1;var o=Kr.normalizeId(this._getId(t));o&&a&&Mc(this,o);var l=this._opts.validateSchema!==!1&&!e,d;l&&!(d=o&&o==Kr.normalizeId(t.$schema))&&this.validateSchema(t,!0);var u=Kr.ids.call(this,t),c=new Ec({id:o,schema:t,localRefs:u,cacheKey:n,meta:r});return o[0]!="#"&&a&&(this._refs[o]=c),this._cache.put(n,c),l&&d&&this.validateSchema(t,!0),c}function Dg(t,e){if(t.compiling)return t.validate=i,i.schema=t.schema,i.errors=null,i.root=e||i,t.schema.$async===!0&&(i.$async=!0),i;t.compiling=!0;var r;t.meta&&(r=this._opts,this._opts=this._metaOpts);var a;try{a=Pc.call(this,t.schema,e,t.localRefs)}catch(n){throw delete t.validate,n}finally{t.compiling=!1,t.meta&&(this._opts=r)}return t.validate=a,t.refs=a.refs,t.refVal=a.refVal,t.root=a.root,a;function i(){var n=t.validate,s=n.apply(this,arguments);return i.errors=n.errors,s}}function Bg(t){switch(t.schemaId){case"auto":return qg;case"id":return Mg;default:return $g}}function Mg(t){return t.$id&&this.logger.warn("schema $id ignored",t.$id),t.id}function $g(t){return t.id&&this.logger.warn("schema id ignored",t.id),t.$id}function qg(t){if(t.$id&&t.id&&t.$id!=t.id)throw new Error("schema $id is different from id");return t.$id||t.id}function Rg(t,e){if(t=t||this.errors,!t)return"No errors";e=e||{};for(var r=e.separator===void 0?", ":e.separator,a=e.dataVar===void 0?"data":e.dataVar,i="",n=0;n<t.length;n++){var s=t[n];s&&(i+=a+s.dataPath+" "+s.message+r)}return i.slice(0,-r.length)}function kg(t,e){return typeof e=="string"&&(e=new RegExp(e)),this._formats[t]=e,this}function jg(t){var e;if(t._opts.$data&&(e=Oc(),t.addMetaSchema(e,e.$id,!0)),t._opts.meta!==!1){var r=Ws();t._opts.$data&&(r=Lc(r,xg)),t.addMetaSchema(r,nn,!0),t._refs["http://json-schema.org/schema"]=nn}}function Wg(t){var e=t._opts.schemas;if(e)if(Array.isArray(e))t.addSchema(e);else for(var r in e)t.addSchema(e[r],r)}function Vg(t){for(var e in t._opts.formats){var r=t._opts.formats[e];t.addFormat(e,r)}}function _g(t){for(var e in t._opts.keywords){var r=t._opts.keywords[e];t.addKeyword(e,r)}}function Mc(t,e){if(t._schemas[e]||t._refs[e])throw new Error('schema with key or id "'+e+'" already exists')}function zg(t){for(var e=Nc.copy(t._opts),r=0;r<Ac.length;r++)delete e[Ac[r]];return e}function Ug(t){var e=t._opts.logger;if(e===!1)t.logger={log:_s,warn:_s,error:_s};else{if(e===void 0&&(e=console),!(typeof e=="object"&&e.log&&e.warn&&e.error))throw new Error("logger must implement log, warn and error methods");t.logger=e}}function _s(){}});var nr=class extends Error{},zn=class extends nr{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}},Un=class extends nr{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}},Hn=class extends nr{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}},Sr=class extends nr{},Ca=class extends nr{constructor(e){super(`Invalid unit ${e}`)}},Qe=class extends nr{},Kt=class extends nr{constructor(){super("Zone is an abstract class")}},W="numeric",jt="short",xt="long",Ta={year:W,month:W,day:W},hl={year:W,month:jt,day:W},Pf={year:W,month:jt,day:W,weekday:jt},ml={year:W,month:xt,day:W},yl={year:W,month:xt,day:W,weekday:xt},gl={hour:W,minute:W},bl={hour:W,minute:W,second:W},vl={hour:W,minute:W,second:W,timeZoneName:jt},Sl={hour:W,minute:W,second:W,timeZoneName:xt},wl={hour:W,minute:W,hourCycle:"h23"},xl={hour:W,minute:W,second:W,hourCycle:"h23"},Cl={hour:W,minute:W,second:W,hourCycle:"h23",timeZoneName:jt},Tl={hour:W,minute:W,second:W,hourCycle:"h23",timeZoneName:xt},Fl={year:W,month:W,day:W,hour:W,minute:W},Il={year:W,month:W,day:W,hour:W,minute:W,second:W},Ol={year:W,month:jt,day:W,hour:W,minute:W},Al={year:W,month:jt,day:W,hour:W,minute:W,second:W},Ef={year:W,month:jt,day:W,weekday:jt,hour:W,minute:W},Pl={year:W,month:xt,day:W,hour:W,minute:W,timeZoneName:jt},El={year:W,month:xt,day:W,hour:W,minute:W,second:W,timeZoneName:jt},Ll={year:W,month:xt,day:W,weekday:xt,hour:W,minute:W,timeZoneName:xt},Nl={year:W,month:xt,day:W,weekday:xt,hour:W,minute:W,second:W,timeZoneName:xt},Gr=class{get type(){throw new Kt}get name(){throw new Kt}get ianaName(){return this.name}get isUniversal(){throw new Kt}offsetName(e,r){throw new Kt}formatOffset(e,r){throw new Kt}offset(e){throw new Kt}equals(e){throw new Kt}get isValid(){throw new Kt}},Mn=null,Fa=class t extends Gr{static get instance(){return Mn===null&&(Mn=new t),Mn}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:r,locale:a}){return _l(e,r,a)}formatOffset(e,r){return Zi(this.offset(e),r)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return e.type==="system"}get isValid(){return!0}},Gn=new Map;function Lf(t){let e=Gn.get(t);return e===void 0&&(e=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"}),Gn.set(t,e)),e}var Nf={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function Df(t,e){let r=t.format(e).replace(/\u200E/g,""),a=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(r),[,i,n,s,o,l,d,u]=a;return[s,i,n,o,l,d,u]}function Bf(t,e){let r=t.formatToParts(e),a=[];for(let i=0;i<r.length;i++){let{type:n,value:s}=r[i],o=Nf[n];n==="era"?a[o]=s:J(o)||(a[o]=parseInt(s,10))}return a}var $n=new Map,xr=class t extends Gr{static create(e){let r=$n.get(e);return r===void 0&&$n.set(e,r=new t(e)),r}static resetCache(){$n.clear(),Gn.clear()}static isValidSpecifier(e){return this.isValidZone(e)}static isValidZone(e){if(!e)return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:e}).format(),!0}catch{return!1}}constructor(e){super(),this.zoneName=e,this.valid=t.isValidZone(e)}get type(){return"iana"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(e,{format:r,locale:a}){return _l(e,r,a,this.name)}formatOffset(e,r){return Zi(this.offset(e),r)}offset(e){if(!this.valid)return NaN;let r=new Date(e);if(isNaN(r))return NaN;let a=Lf(this.name),[i,n,s,o,l,d,u]=a.formatToParts?Bf(a,r):Df(a,r);o==="BC"&&(i=-Math.abs(i)+1);let f=La({year:i,month:n,day:s,hour:l===24?0:l,minute:d,second:u,millisecond:0}),p=+r,h=p%1e3;return p-=h>=0?h:1e3+h,(f-p)/(60*1e3)}equals(e){return e.type==="iana"&&e.name===this.name}get isValid(){return this.valid}},Ro={};function Mf(t,e={}){let r=JSON.stringify([t,e]),a=Ro[r];return a||(a=new Intl.ListFormat(t,e),Ro[r]=a),a}var Qn=new Map;function Zn(t,e={}){let r=JSON.stringify([t,e]),a=Qn.get(r);return a===void 0&&(a=new Intl.DateTimeFormat(t,e),Qn.set(r,a)),a}var Kn=new Map;function $f(t,e={}){let r=JSON.stringify([t,e]),a=Kn.get(r);return a===void 0&&(a=new Intl.NumberFormat(t,e),Kn.set(r,a)),a}var Jn=new Map;function qf(t,e={}){let{base:r,...a}=e,i=JSON.stringify([t,a]),n=Jn.get(i);return n===void 0&&(n=new Intl.RelativeTimeFormat(t,e),Jn.set(i,n)),n}var Hi=null;function Rf(){return Hi||(Hi=new Intl.DateTimeFormat().resolvedOptions().locale,Hi)}var Yn=new Map;function Dl(t){let e=Yn.get(t);return e===void 0&&(e=new Intl.DateTimeFormat(t).resolvedOptions(),Yn.set(t,e)),e}var Xn=new Map;function kf(t){let e=Xn.get(t);if(!e){let r=new Intl.Locale(t);e="getWeekInfo"in r?r.getWeekInfo():r.weekInfo,"minimalDays"in e||(e={...Bl,...e}),Xn.set(t,e)}return e}function jf(t){let e=t.indexOf("-x-");e!==-1&&(t=t.substring(0,e));let r=t.indexOf("-u-");if(r===-1)return[t];{let a,i;try{a=Zn(t).resolvedOptions(),i=t}catch{let l=t.substring(0,r);a=Zn(l).resolvedOptions(),i=l}let{numberingSystem:n,calendar:s}=a;return[i,n,s]}}function Wf(t,e,r){return(r||e)&&(t.includes("-u-")||(t+="-u"),r&&(t+=`-ca-${r}`),e&&(t+=`-nu-${e}`)),t}function Vf(t){let e=[];for(let r=1;r<=12;r++){let a=ie.utc(2009,r,1);e.push(t(a))}return e}function _f(t){let e=[];for(let r=1;r<=7;r++){let a=ie.utc(2016,11,13+r);e.push(t(a))}return e}function ya(t,e,r,a){let i=t.listingMode();return i==="error"?null:i==="en"?r(e):a(e)}function zf(t){return t.numberingSystem&&t.numberingSystem!=="latn"?!1:t.numberingSystem==="latn"||!t.locale||t.locale.startsWith("en")||Dl(t.locale).numberingSystem==="latn"}var es=class{constructor(e,r,a){this.padTo=a.padTo||0,this.floor=a.floor||!1;let{padTo:i,floor:n,...s}=a;if(!r||Object.keys(s).length>0){let o={useGrouping:!1,...a};a.padTo>0&&(o.minimumIntegerDigits=a.padTo),this.inf=$f(e,o)}}format(e){if(this.inf){let r=this.floor?Math.floor(e):e;return this.inf.format(r)}else{let r=this.floor?Math.floor(e):ps(e,3);return ze(r,this.padTo)}}},ts=class{constructor(e,r,a){this.opts=a,this.originalZone=void 0;let i;if(this.opts.timeZone)this.dt=e;else if(e.zone.type==="fixed"){let s=-1*(e.offset/60),o=s>=0?`Etc/GMT+${s}`:`Etc/GMT${s}`;e.offset!==0&&xr.create(o).valid?(i=o,this.dt=e):(i="UTC",this.dt=e.offset===0?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else e.zone.type==="system"?this.dt=e:e.zone.type==="iana"?(this.dt=e,i=e.zone.name):(i="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);let n={...this.opts};n.timeZone=n.timeZone||i,this.dtf=Zn(r,n)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){let e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(r=>{if(r.type==="timeZoneName"){let a=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...r,value:a}}else return r}):e}resolvedOptions(){return this.dtf.resolvedOptions()}},rs=class{constructor(e,r,a){this.opts={style:"long",...a},!r&&Wl()&&(this.rtf=qf(e,a))}format(e,r){return this.rtf?this.rtf.format(e,r):ch(r,e,this.opts.numeric,this.opts.style!=="long")}formatToParts(e,r){return this.rtf?this.rtf.formatToParts(e,r):[]}},Bl={firstDay:1,minimalDays:4,weekend:[6,7]},Te=class t{static fromOpts(e){return t.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,r,a,i,n=!1){let s=e||Ne.defaultLocale,o=s||(n?"en-US":Rf()),l=r||Ne.defaultNumberingSystem,d=a||Ne.defaultOutputCalendar,u=ns(i)||Ne.defaultWeekSettings;return new t(o,l,d,u,s)}static resetCache(){Hi=null,Qn.clear(),Kn.clear(),Jn.clear(),Yn.clear(),Xn.clear()}static fromObject({locale:e,numberingSystem:r,outputCalendar:a,weekSettings:i}={}){return t.create(e,r,a,i)}constructor(e,r,a,i,n){let[s,o,l]=jf(e);this.locale=s,this.numberingSystem=r||o||null,this.outputCalendar=a||l||null,this.weekSettings=i,this.intl=Wf(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=n,this.fastNumbersCached=null}get fastNumbers(){return this.fastNumbersCached==null&&(this.fastNumbersCached=zf(this)),this.fastNumbersCached}listingMode(){let e=this.isEnglish(),r=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return e&&r?"en":"intl"}clone(e){return!e||Object.getOwnPropertyNames(e).length===0?this:t.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,ns(e.weekSettings)||this.weekSettings,e.defaultToEN||!1)}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,r=!1){return ya(this,e,Hl,()=>{let a=this.intl==="ja"||this.intl.startsWith("ja-");r&=!a;let i=r?{month:e,day:"numeric"}:{month:e},n=r?"format":"standalone";if(!this.monthsCache[n][e]){let s=a?o=>this.dtFormatter(o,i).format():o=>this.extract(o,i,"month");this.monthsCache[n][e]=Vf(s)}return this.monthsCache[n][e]})}weekdays(e,r=!1){return ya(this,e,Zl,()=>{let a=r?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},i=r?"format":"standalone";return this.weekdaysCache[i][e]||(this.weekdaysCache[i][e]=_f(n=>this.extract(n,a,"weekday"))),this.weekdaysCache[i][e]})}meridiems(){return ya(this,void 0,()=>Kl,()=>{if(!this.meridiemCache){let e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[ie.utc(2016,11,13,9),ie.utc(2016,11,13,19)].map(r=>this.extract(r,e,"dayperiod"))}return this.meridiemCache})}eras(e){return ya(this,e,Jl,()=>{let r={era:e};return this.eraCache[e]||(this.eraCache[e]=[ie.utc(-40,1,1),ie.utc(2017,1,1)].map(a=>this.extract(a,r,"era"))),this.eraCache[e]})}extract(e,r,a){let i=this.dtFormatter(e,r),n=i.formatToParts(),s=n.find(o=>o.type.toLowerCase()===a);return s?s.value:null}numberFormatter(e={}){return new es(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,r={}){return new ts(e,this.intl,r)}relFormatter(e={}){return new rs(this.intl,this.isEnglish(),e)}listFormatter(e={}){return Mf(this.intl,e)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||Dl(this.intl).locale.startsWith("en-us")}getWeekSettings(){return this.weekSettings?this.weekSettings:Vl()?kf(this.locale):Bl}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}},qn=null,Nt=class t extends Gr{static get utcInstance(){return qn===null&&(qn=new t(0)),qn}static instance(e){return e===0?t.utcInstance:new t(e)}static parseSpecifier(e){if(e){let r=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(r)return new t(Na(r[1],r[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${Zi(this.fixed,"narrow")}`}get ianaName(){return this.fixed===0?"Etc/UTC":`Etc/GMT${Zi(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,r){return Zi(this.fixed,r)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return e.type==="fixed"&&e.fixed===this.fixed}get isValid(){return!0}},is=class extends Gr{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}};function vr(t,e){if(J(t)||t===null)return e;if(t instanceof Gr)return t;if(Kf(t)){let r=t.toLowerCase();return r==="default"?e:r==="local"||r==="system"?Fa.instance:r==="utc"||r==="gmt"?Nt.utcInstance:Nt.parseSpecifier(r)||xr.create(t)}else return wr(t)?Nt.instance(t):typeof t=="object"&&"offset"in t&&typeof t.offset=="function"?t:new is(t)}var ls={arab:"[\u0660-\u0669]",arabext:"[\u06F0-\u06F9]",bali:"[\u1B50-\u1B59]",beng:"[\u09E6-\u09EF]",deva:"[\u0966-\u096F]",fullwide:"[\uFF10-\uFF19]",gujr:"[\u0AE6-\u0AEF]",hanidec:"[\u3007|\u4E00|\u4E8C|\u4E09|\u56DB|\u4E94|\u516D|\u4E03|\u516B|\u4E5D]",khmr:"[\u17E0-\u17E9]",knda:"[\u0CE6-\u0CEF]",laoo:"[\u0ED0-\u0ED9]",limb:"[\u1946-\u194F]",mlym:"[\u0D66-\u0D6F]",mong:"[\u1810-\u1819]",mymr:"[\u1040-\u1049]",orya:"[\u0B66-\u0B6F]",tamldec:"[\u0BE6-\u0BEF]",telu:"[\u0C66-\u0C6F]",thai:"[\u0E50-\u0E59]",tibt:"[\u0F20-\u0F29]",latn:"\\d"},ko={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},Uf=ls.hanidec.replace(/[\[|\]]/g,"").split("");function Hf(t){let e=parseInt(t,10);if(isNaN(e)){e="";for(let r=0;r<t.length;r++){let a=t.charCodeAt(r);if(t[r].search(ls.hanidec)!==-1)e+=Uf.indexOf(t[r]);else for(let i in ko){let[n,s]=ko[i];a>=n&&a<=s&&(e+=a-n)}}return parseInt(e,10)}else return e}var as=new Map;function Gf(){as.clear()}function Rt({numberingSystem:t},e=""){let r=t||"latn",a=as.get(r);a===void 0&&(a=new Map,as.set(r,a));let i=a.get(e);return i===void 0&&(i=new RegExp(`${ls[r]}${e}`),a.set(e,i)),i}var jo=()=>Date.now(),Wo="system",Vo=null,_o=null,zo=null,Uo=60,Ho,Go=null,Ne=class{static get now(){return jo}static set now(e){jo=e}static set defaultZone(e){Wo=e}static get defaultZone(){return vr(Wo,Fa.instance)}static get defaultLocale(){return Vo}static set defaultLocale(e){Vo=e}static get defaultNumberingSystem(){return _o}static set defaultNumberingSystem(e){_o=e}static get defaultOutputCalendar(){return zo}static set defaultOutputCalendar(e){zo=e}static get defaultWeekSettings(){return Go}static set defaultWeekSettings(e){Go=ns(e)}static get twoDigitCutoffYear(){return Uo}static set twoDigitCutoffYear(e){Uo=e%100}static get throwOnInvalid(){return Ho}static set throwOnInvalid(e){Ho=e}static resetCaches(){Te.resetCache(),xr.resetCache(),ie.resetCache(),Gf()}},wt=class{constructor(e,r){this.reason=e,this.explanation=r}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}},Ml=[0,31,59,90,120,151,181,212,243,273,304,334],$l=[0,31,60,91,121,152,182,213,244,274,305,335];function Et(t,e){return new wt("unit out of range",`you specified ${e} (of type ${typeof e}) as a ${t}, which is invalid`)}function ds(t,e,r){let a=new Date(Date.UTC(t,e-1,r));t<100&&t>=0&&a.setUTCFullYear(a.getUTCFullYear()-1900);let i=a.getUTCDay();return i===0?7:i}function ql(t,e,r){return r+(Ji(t)?$l:Ml)[e-1]}function Rl(t,e){let r=Ji(t)?$l:Ml,a=r.findIndex(n=>n<e),i=e-r[a];return{month:a+1,day:i}}function us(t,e){return(t-e+7)%7+1}function Ia(t,e=4,r=1){let{year:a,month:i,day:n}=t,s=ql(a,i,n),o=us(ds(a,i,n),r),l=Math.floor((s-o+14-e)/7),d;return l<1?(d=a-1,l=Ki(d,e,r)):l>Ki(a,e,r)?(d=a+1,l=1):d=a,{weekYear:d,weekNumber:l,weekday:o,...Da(t)}}function Qo(t,e=4,r=1){let{weekYear:a,weekNumber:i,weekday:n}=t,s=us(ds(a,1,e),r),o=mi(a),l=i*7+n-s-7+e,d;l<1?(d=a-1,l+=mi(d)):l>o?(d=a+1,l-=mi(a)):d=a;let{month:u,day:c}=Rl(d,l);return{year:d,month:u,day:c,...Da(t)}}function Rn(t){let{year:e,month:r,day:a}=t,i=ql(e,r,a);return{year:e,ordinal:i,...Da(t)}}function Zo(t){let{year:e,ordinal:r}=t,{month:a,day:i}=Rl(e,r);return{year:e,month:a,day:i,...Da(t)}}function Ko(t,e){if(!J(t.localWeekday)||!J(t.localWeekNumber)||!J(t.localWeekYear)){if(!J(t.weekday)||!J(t.weekNumber)||!J(t.weekYear))throw new Sr("Cannot mix locale-based week fields with ISO-based week fields");return J(t.localWeekday)||(t.weekday=t.localWeekday),J(t.localWeekNumber)||(t.weekNumber=t.localWeekNumber),J(t.localWeekYear)||(t.weekYear=t.localWeekYear),delete t.localWeekday,delete t.localWeekNumber,delete t.localWeekYear,{minDaysInFirstWeek:e.getMinDaysInFirstWeek(),startOfWeek:e.getStartOfWeek()}}else return{minDaysInFirstWeek:4,startOfWeek:1}}function Qf(t,e=4,r=1){let a=Ea(t.weekYear),i=Lt(t.weekNumber,1,Ki(t.weekYear,e,r)),n=Lt(t.weekday,1,7);return a?i?n?!1:Et("weekday",t.weekday):Et("week",t.weekNumber):Et("weekYear",t.weekYear)}function Zf(t){let e=Ea(t.year),r=Lt(t.ordinal,1,mi(t.year));return e?r?!1:Et("ordinal",t.ordinal):Et("year",t.year)}function kl(t){let e=Ea(t.year),r=Lt(t.month,1,12),a=Lt(t.day,1,Oa(t.year,t.month));return e?r?a?!1:Et("day",t.day):Et("month",t.month):Et("year",t.year)}function jl(t){let{hour:e,minute:r,second:a,millisecond:i}=t,n=Lt(e,0,23)||e===24&&r===0&&a===0&&i===0,s=Lt(r,0,59),o=Lt(a,0,59),l=Lt(i,0,999);return n?s?o?l?!1:Et("millisecond",i):Et("second",a):Et("minute",r):Et("hour",e)}function J(t){return typeof t>"u"}function wr(t){return typeof t=="number"}function Ea(t){return typeof t=="number"&&t%1===0}function Kf(t){return typeof t=="string"}function Jf(t){return Object.prototype.toString.call(t)==="[object Date]"}function Wl(){try{return typeof Intl<"u"&&!!Intl.RelativeTimeFormat}catch{return!1}}function Vl(){try{return typeof Intl<"u"&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch{return!1}}function Yf(t){return Array.isArray(t)?t:[t]}function Jo(t,e,r){if(t.length!==0)return t.reduce((a,i)=>{let n=[e(i),i];return a&&r(a[0],n[0])===a[0]?a:n},null)[1]}function Xf(t,e){return e.reduce((r,a)=>(r[a]=t[a],r),{})}function bi(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function ns(t){if(t==null)return null;if(typeof t!="object")throw new Qe("Week settings must be an object");if(!Lt(t.firstDay,1,7)||!Lt(t.minimalDays,1,7)||!Array.isArray(t.weekend)||t.weekend.some(e=>!Lt(e,1,7)))throw new Qe("Invalid week settings");return{firstDay:t.firstDay,minimalDays:t.minimalDays,weekend:Array.from(t.weekend)}}function Lt(t,e,r){return Ea(t)&&t>=e&&t<=r}function eh(t,e){return t-e*Math.floor(t/e)}function ze(t,e=2){let r=t<0,a;return r?a="-"+(""+-t).padStart(e,"0"):a=(""+t).padStart(e,"0"),a}function br(t){if(!(J(t)||t===null||t===""))return parseInt(t,10)}function zr(t){if(!(J(t)||t===null||t===""))return parseFloat(t)}function cs(t){if(!(J(t)||t===null||t==="")){let e=parseFloat("0."+t)*1e3;return Math.floor(e)}}function ps(t,e,r="round"){let a=10**e;switch(r){case"expand":return t>0?Math.ceil(t*a)/a:Math.floor(t*a)/a;case"trunc":return Math.trunc(t*a)/a;case"round":return Math.round(t*a)/a;case"floor":return Math.floor(t*a)/a;case"ceil":return Math.ceil(t*a)/a;default:throw new RangeError(`Value rounding ${r} is out of range`)}}function Ji(t){return t%4===0&&(t%100!==0||t%400===0)}function mi(t){return Ji(t)?366:365}function Oa(t,e){let r=eh(e-1,12)+1,a=t+(e-r)/12;return r===2?Ji(a)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][r-1]}function La(t){let e=Date.UTC(t.year,t.month-1,t.day,t.hour,t.minute,t.second,t.millisecond);return t.year<100&&t.year>=0&&(e=new Date(e),e.setUTCFullYear(t.year,t.month-1,t.day)),+e}function Yo(t,e,r){return-us(ds(t,1,e),r)+e-1}function Ki(t,e=4,r=1){let a=Yo(t,e,r),i=Yo(t+1,e,r);return(mi(t)-a+i)/7}function ss(t){return t>99?t:t>Ne.twoDigitCutoffYear?1900+t:2e3+t}function _l(t,e,r,a=null){let i=new Date(t),n={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};a&&(n.timeZone=a);let s={timeZoneName:e,...n},o=new Intl.DateTimeFormat(r,s).formatToParts(i).find(l=>l.type.toLowerCase()==="timezonename");return o?o.value:null}function Na(t,e){let r=parseInt(t,10);Number.isNaN(r)&&(r=0);let a=parseInt(e,10)||0,i=r<0||Object.is(r,-0)?-a:a;return r*60+i}function zl(t){let e=Number(t);if(typeof t=="boolean"||t===""||!Number.isFinite(e))throw new Qe(`Invalid unit value ${t}`);return e}function Aa(t,e){let r={};for(let a in t)if(bi(t,a)){let i=t[a];if(i==null)continue;r[e(a)]=zl(i)}return r}function Zi(t,e){let r=Math.trunc(Math.abs(t/60)),a=Math.trunc(Math.abs(t%60)),i=t>=0?"+":"-";switch(e){case"short":return`${i}${ze(r,2)}:${ze(a,2)}`;case"narrow":return`${i}${r}${a>0?`:${a}`:""}`;case"techie":return`${i}${ze(r,2)}${ze(a,2)}`;default:throw new RangeError(`Value format ${e} is out of range for property format`)}}function Da(t){return Xf(t,["hour","minute","second","millisecond"])}var th=["January","February","March","April","May","June","July","August","September","October","November","December"],Ul=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],rh=["J","F","M","A","M","J","J","A","S","O","N","D"];function Hl(t){switch(t){case"narrow":return[...rh];case"short":return[...Ul];case"long":return[...th];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}var Gl=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Ql=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],ih=["M","T","W","T","F","S","S"];function Zl(t){switch(t){case"narrow":return[...ih];case"short":return[...Ql];case"long":return[...Gl];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}var Kl=["AM","PM"],ah=["Before Christ","Anno Domini"],nh=["BC","AD"],sh=["B","A"];function Jl(t){switch(t){case"narrow":return[...sh];case"short":return[...nh];case"long":return[...ah];default:return null}}function oh(t){return Kl[t.hour<12?0:1]}function lh(t,e){return Zl(e)[t.weekday-1]}function dh(t,e){return Hl(e)[t.month-1]}function uh(t,e){return Jl(e)[t.year<0?0:1]}function ch(t,e,r="always",a=!1){let i={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},n=["hours","minutes","seconds"].indexOf(t)===-1;if(r==="auto"&&n){let c=t==="days";switch(e){case 1:return c?"tomorrow":`next ${i[t][0]}`;case-1:return c?"yesterday":`last ${i[t][0]}`;case 0:return c?"today":`this ${i[t][0]}`}}let s=Object.is(e,-0)||e<0,o=Math.abs(e),l=o===1,d=i[t],u=a?l?d[1]:d[2]||d[1]:l?i[t][0]:t;return s?`${o} ${u} ago`:`in ${o} ${u}`}function Xo(t,e){let r="";for(let a of t)a.literal?r+=a.val:r+=e(a.val);return r}var ph={D:Ta,DD:hl,DDD:ml,DDDD:yl,t:gl,tt:bl,ttt:vl,tttt:Sl,T:wl,TT:xl,TTT:Cl,TTTT:Tl,f:Fl,ff:Ol,fff:Pl,ffff:Ll,F:Il,FF:Al,FFF:El,FFFF:Nl},St=class t{static create(e,r={}){return new t(e,r)}static parseFormat(e){let r=null,a="",i=!1,n=[];for(let s=0;s<e.length;s++){let o=e.charAt(s);o==="'"?((a.length>0||i)&&n.push({literal:i||/^\s+$/.test(a),val:a===""?"'":a}),r=null,a="",i=!i):i||o===r?a+=o:(a.length>0&&n.push({literal:/^\s+$/.test(a),val:a}),a=o,r=o)}return a.length>0&&n.push({literal:i||/^\s+$/.test(a),val:a}),n}static macroTokenToFormatOpts(e){return ph[e]}constructor(e,r){this.opts=r,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,r){return this.systemLoc===null&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...r}).format()}dtFormatter(e,r={}){return this.loc.dtFormatter(e,{...this.opts,...r})}formatDateTime(e,r){return this.dtFormatter(e,r).format()}formatDateTimeParts(e,r){return this.dtFormatter(e,r).formatToParts()}formatInterval(e,r){return this.dtFormatter(e.start,r).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,r){return this.dtFormatter(e,r).resolvedOptions()}num(e,r=0,a=void 0){if(this.opts.forceSimple)return ze(e,r);let i={...this.opts};return r>0&&(i.padTo=r),a&&(i.signDisplay=a),this.loc.numberFormatter(i).format(e)}formatDateTimeFromString(e,r){let a=this.loc.listingMode()==="en",i=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",n=(p,h)=>this.loc.extract(e,p,h),s=p=>e.isOffsetFixed&&e.offset===0&&p.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,p.format):"",o=()=>a?oh(e):n({hour:"numeric",hourCycle:"h12"},"dayperiod"),l=(p,h)=>a?dh(e,p):n(h?{month:p}:{month:p,day:"numeric"},"month"),d=(p,h)=>a?lh(e,p):n(h?{weekday:p}:{weekday:p,month:"long",day:"numeric"},"weekday"),u=p=>{let h=t.macroTokenToFormatOpts(p);return h?this.formatWithSystemDefault(e,h):p},c=p=>a?uh(e,p):n({era:p},"era"),f=p=>{switch(p){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12===0?12:e.hour%12);case"hh":return this.num(e.hour%12===0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return s({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return s({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return s({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return o();case"d":return i?n({day:"numeric"},"day"):this.num(e.day);case"dd":return i?n({day:"2-digit"},"day"):this.num(e.day,2);case"c":return this.num(e.weekday);case"ccc":return d("short",!0);case"cccc":return d("long",!0);case"ccccc":return d("narrow",!0);case"E":return this.num(e.weekday);case"EEE":return d("short",!1);case"EEEE":return d("long",!1);case"EEEEE":return d("narrow",!1);case"L":return i?n({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return i?n({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return l("short",!0);case"LLLL":return l("long",!0);case"LLLLL":return l("narrow",!0);case"M":return i?n({month:"numeric"},"month"):this.num(e.month);case"MM":return i?n({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return l("short",!1);case"MMMM":return l("long",!1);case"MMMMM":return l("narrow",!1);case"y":return i?n({year:"numeric"},"year"):this.num(e.year);case"yy":return i?n({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return i?n({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return i?n({year:"numeric"},"year"):this.num(e.year,6);case"G":return c("short");case"GG":return c("long");case"GGGGG":return c("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return u(p)}};return Xo(t.parseFormat(r),f)}formatDurationFromString(e,r){let a=this.opts.signMode==="negativeLargestOnly"?-1:1,i=u=>{switch(u[0]){case"S":return"milliseconds";case"s":return"seconds";case"m":return"minutes";case"h":return"hours";case"d":return"days";case"w":return"weeks";case"M":return"months";case"y":return"years";default:return null}},n=(u,c)=>f=>{let p=i(f);if(p){let h=c.isNegativeDuration&&p!==c.largestUnit?a:1,m;return this.opts.signMode==="negativeLargestOnly"&&p!==c.largestUnit?m="never":this.opts.signMode==="all"?m="always":m="auto",this.num(u.get(p)*h,f.length,m)}else return f},s=t.parseFormat(r),o=s.reduce((u,{literal:c,val:f})=>c?u:u.concat(f),[]),l=e.shiftTo(...o.map(i).filter(u=>u)),d={isNegativeDuration:l<0,largestUnit:Object.keys(l.values)[0]};return Xo(s,n(l,d))}},Yl=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function vi(...t){let e=t.reduce((r,a)=>r+a.source,"");return RegExp(`^${e}$`)}function Si(...t){return e=>t.reduce(([r,a,i],n)=>{let[s,o,l]=n(e,i);return[{...r,...s},o||a,l]},[{},null,1]).slice(0,2)}function wi(t,...e){if(t==null)return[null,null];for(let[r,a]of e){let i=r.exec(t);if(i)return a(i)}return[null,null]}function Xl(...t){return(e,r)=>{let a={},i;for(i=0;i<t.length;i++)a[t[i]]=br(e[r+i]);return[a,null,r+i]}}var ed=/(?:([Zz])|([+-]\d\d)(?::?(\d\d))?)/,fh=`(?:${ed.source}?(?:\\[(${Yl.source})\\])?)?`,fs=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,td=RegExp(`${fs.source}${fh}`),hs=RegExp(`(?:[Tt]${td.source})?`),hh=/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,mh=/(\d{4})-?W(\d\d)(?:-?(\d))?/,yh=/(\d{4})-?(\d{3})/,gh=Xl("weekYear","weekNumber","weekDay"),bh=Xl("year","ordinal"),vh=/(\d{4})-(\d\d)-(\d\d)/,rd=RegExp(`${fs.source} ?(?:${ed.source}|(${Yl.source}))?`),Sh=RegExp(`(?: ${rd.source})?`);function yi(t,e,r){let a=t[e];return J(a)?r:br(a)}function wh(t,e){return[{year:yi(t,e),month:yi(t,e+1,1),day:yi(t,e+2,1)},null,e+3]}function xi(t,e){return[{hours:yi(t,e,0),minutes:yi(t,e+1,0),seconds:yi(t,e+2,0),milliseconds:cs(t[e+3])},null,e+4]}function Yi(t,e){let r=!t[e]&&!t[e+1],a=Na(t[e+1],t[e+2]),i=r?null:Nt.instance(a);return[{},i,e+3]}function Xi(t,e){let r=t[e]?xr.create(t[e]):null;return[{},r,e+1]}var xh=RegExp(`^T?${fs.source}$`),Ch=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;function Th(t){let[e,r,a,i,n,s,o,l,d]=t,u=e[0]==="-",c=l&&l[0]==="-",f=(p,h=!1)=>p!==void 0&&(h||p&&u)?-p:p;return[{years:f(zr(r)),months:f(zr(a)),weeks:f(zr(i)),days:f(zr(n)),hours:f(zr(s)),minutes:f(zr(o)),seconds:f(zr(l),l==="-0"),milliseconds:f(cs(d),c)}]}var Fh={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function ms(t,e,r,a,i,n,s){let o={year:e.length===2?ss(br(e)):br(e),month:Ul.indexOf(r)+1,day:br(a),hour:br(i),minute:br(n)};return s&&(o.second=br(s)),t&&(o.weekday=t.length>3?Gl.indexOf(t)+1:Ql.indexOf(t)+1),o}var Ih=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function Oh(t){let[,e,r,a,i,n,s,o,l,d,u,c]=t,f=ms(e,i,a,r,n,s,o),p;return l?p=Fh[l]:d?p=0:p=Na(u,c),[f,new Nt(p)]}function Ah(t){return t.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}var Ph=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,Eh=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,Lh=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function el(t){let[,e,r,a,i,n,s,o]=t;return[ms(e,i,a,r,n,s,o),Nt.utcInstance]}function Nh(t){let[,e,r,a,i,n,s,o]=t;return[ms(e,o,r,a,i,n,s),Nt.utcInstance]}var Dh=vi(hh,hs),Bh=vi(mh,hs),Mh=vi(yh,hs),$h=vi(td),id=Si(wh,xi,Yi,Xi),qh=Si(gh,xi,Yi,Xi),Rh=Si(bh,xi,Yi,Xi),kh=Si(xi,Yi,Xi);function jh(t){return wi(t,[Dh,id],[Bh,qh],[Mh,Rh],[$h,kh])}function Wh(t){return wi(Ah(t),[Ih,Oh])}function Vh(t){return wi(t,[Ph,el],[Eh,el],[Lh,Nh])}function _h(t){return wi(t,[Ch,Th])}var zh=Si(xi);function Uh(t){return wi(t,[xh,zh])}var Hh=vi(vh,Sh),Gh=vi(rd),Qh=Si(xi,Yi,Xi);function Zh(t){return wi(t,[Hh,id],[Gh,Qh])}var tl="Invalid Duration",ad={weeks:{days:7,hours:168,minutes:10080,seconds:10080*60,milliseconds:10080*60*1e3},days:{hours:24,minutes:1440,seconds:1440*60,milliseconds:1440*60*1e3},hours:{minutes:60,seconds:3600,milliseconds:3600*1e3},minutes:{seconds:60,milliseconds:60*1e3},seconds:{milliseconds:1e3}},Kh={years:{quarters:4,months:12,weeks:52,days:365,hours:365*24,minutes:365*24*60,seconds:365*24*60*60,milliseconds:365*24*60*60*1e3},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:2184*60,seconds:2184*60*60,milliseconds:2184*60*60*1e3},months:{weeks:4,days:30,hours:720,minutes:720*60,seconds:720*60*60,milliseconds:720*60*60*1e3},...ad},Pt=146097/400,ci=146097/4800,Jh={years:{quarters:4,months:12,weeks:Pt/7,days:Pt,hours:Pt*24,minutes:Pt*24*60,seconds:Pt*24*60*60,milliseconds:Pt*24*60*60*1e3},quarters:{months:3,weeks:Pt/28,days:Pt/4,hours:Pt*24/4,minutes:Pt*24*60/4,seconds:Pt*24*60*60/4,milliseconds:Pt*24*60*60*1e3/4},months:{weeks:ci/7,days:ci,hours:ci*24,minutes:ci*24*60,seconds:ci*24*60*60,milliseconds:ci*24*60*60*1e3},...ad},Hr=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],Yh=Hr.slice(0).reverse();function ar(t,e,r=!1){let a={values:r?e.values:{...t.values,...e.values||{}},loc:t.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||t.conversionAccuracy,matrix:e.matrix||t.matrix};return new Ze(a)}function nd(t,e){let r=e.milliseconds??0;for(let a of Yh.slice(1))e[a]&&(r+=e[a]*t[a].milliseconds);return r}function rl(t,e){let r=nd(t,e)<0?-1:1;Hr.reduceRight((a,i)=>{if(J(e[i]))return a;if(a){let n=e[a]*r,s=t[i][a],o=Math.floor(n/s);e[i]+=o*r,e[a]-=o*s*r}return i},null),Hr.reduce((a,i)=>{if(J(e[i]))return a;if(a){let n=e[a]%1;e[a]-=n,e[i]+=n*t[a][i]}return i},null)}function il(t){let e={};for(let[r,a]of Object.entries(t))a!==0&&(e[r]=a);return e}var Ze=class t{constructor(e){let r=e.conversionAccuracy==="longterm"||!1,a=r?Jh:Kh;e.matrix&&(a=e.matrix),this.values=e.values,this.loc=e.loc||Te.create(),this.conversionAccuracy=r?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=a,this.isLuxonDuration=!0}static fromMillis(e,r){return t.fromObject({milliseconds:e},r)}static fromObject(e,r={}){if(e==null||typeof e!="object")throw new Qe(`Duration.fromObject: argument expected to be an object, got ${e===null?"null":typeof e}`);return new t({values:Aa(e,t.normalizeUnit),loc:Te.fromObject(r),conversionAccuracy:r.conversionAccuracy,matrix:r.matrix})}static fromDurationLike(e){if(wr(e))return t.fromMillis(e);if(t.isDuration(e))return e;if(typeof e=="object")return t.fromObject(e);throw new Qe(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,r){let[a]=_h(e);return a?t.fromObject(a,r):t.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,r){let[a]=Uh(e);return a?t.fromObject(a,r):t.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,r=null){if(!e)throw new Qe("need to specify a reason the Duration is invalid");let a=e instanceof wt?e:new wt(e,r);if(Ne.throwOnInvalid)throw new Hn(a);return new t({invalid:a})}static normalizeUnit(e){let r={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e&&e.toLowerCase()];if(!r)throw new Ca(e);return r}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,r={}){let a={...r,floor:r.round!==!1&&r.floor!==!1};return this.isValid?St.create(this.loc,a).formatDurationFromString(this,e):tl}toHuman(e={}){if(!this.isValid)return tl;let r=e.showZeros!==!1,a=Hr.map(i=>{let n=this.values[i];return J(n)||n===0&&!r?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:i.slice(0,-1)}).format(n)}).filter(i=>i);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(a)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return this.years!==0&&(e+=this.years+"Y"),(this.months!==0||this.quarters!==0)&&(e+=this.months+this.quarters*3+"M"),this.weeks!==0&&(e+=this.weeks+"W"),this.days!==0&&(e+=this.days+"D"),(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)&&(e+="T"),this.hours!==0&&(e+=this.hours+"H"),this.minutes!==0&&(e+=this.minutes+"M"),(this.seconds!==0||this.milliseconds!==0)&&(e+=ps(this.seconds+this.milliseconds/1e3,3)+"S"),e==="P"&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;let r=this.toMillis();return r<0||r>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},ie.fromMillis(r,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?nd(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;let r=t.fromDurationLike(e),a={};for(let i of Hr)(bi(r.values,i)||bi(this.values,i))&&(a[i]=r.get(i)+this.get(i));return ar(this,{values:a},!0)}minus(e){if(!this.isValid)return this;let r=t.fromDurationLike(e);return this.plus(r.negate())}mapUnits(e){if(!this.isValid)return this;let r={};for(let a of Object.keys(this.values))r[a]=zl(e(this.values[a],a));return ar(this,{values:r},!0)}get(e){return this[t.normalizeUnit(e)]}set(e){if(!this.isValid)return this;let r={...this.values,...Aa(e,t.normalizeUnit)};return ar(this,{values:r})}reconfigure({locale:e,numberingSystem:r,conversionAccuracy:a,matrix:i}={}){let s={loc:this.loc.clone({locale:e,numberingSystem:r}),matrix:i,conversionAccuracy:a};return ar(this,s)}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;let e=this.toObject();return rl(this.matrix,e),ar(this,{values:e},!0)}rescale(){if(!this.isValid)return this;let e=il(this.normalize().shiftToAll().toObject());return ar(this,{values:e},!0)}shiftTo(...e){if(!this.isValid)return this;if(e.length===0)return this;e=e.map(s=>t.normalizeUnit(s));let r={},a={},i=this.toObject(),n;for(let s of Hr)if(e.indexOf(s)>=0){n=s;let o=0;for(let d in a)o+=this.matrix[d][s]*a[d],a[d]=0;wr(i[s])&&(o+=i[s]);let l=Math.trunc(o);r[s]=l,a[s]=(o*1e3-l*1e3)/1e3}else wr(i[s])&&(a[s]=i[s]);for(let s in a)a[s]!==0&&(r[n]+=s===n?a[s]:a[s]/this.matrix[n][s]);return rl(this.matrix,r),ar(this,{values:r},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;let e={};for(let r of Object.keys(this.values))e[r]=this.values[r]===0?0:-this.values[r];return ar(this,{values:e},!0)}removeZeros(){if(!this.isValid)return this;let e=il(this.values);return ar(this,{values:e},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid||!this.loc.equals(e.loc))return!1;function r(a,i){return a===void 0||a===0?i===void 0||i===0:a===i}for(let a of Hr)if(!r(this.values[a],e.values[a]))return!1;return!0}},pi="Invalid Interval";function Xh(t,e){return!t||!t.isValid?gi.invalid("missing or invalid start"):!e||!e.isValid?gi.invalid("missing or invalid end"):e<t?gi.invalid("end before start",`The end of an interval must be after its start, but you had start=${t.toISO()} and end=${e.toISO()}`):null}var gi=class t{constructor(e){this.s=e.start,this.e=e.end,this.invalid=e.invalid||null,this.isLuxonInterval=!0}static invalid(e,r=null){if(!e)throw new Qe("need to specify a reason the Interval is invalid");let a=e instanceof wt?e:new wt(e,r);if(Ne.throwOnInvalid)throw new Un(a);return new t({invalid:a})}static fromDateTimes(e,r){let a=Ui(e),i=Ui(r),n=Xh(a,i);return n??new t({start:a,end:i})}static after(e,r){let a=Ze.fromDurationLike(r),i=Ui(e);return t.fromDateTimes(i,i.plus(a))}static before(e,r){let a=Ze.fromDurationLike(r),i=Ui(e);return t.fromDateTimes(i.minus(a),i)}static fromISO(e,r){let[a,i]=(e||"").split("/",2);if(a&&i){let n,s;try{n=ie.fromISO(a,r),s=n.isValid}catch{s=!1}let o,l;try{o=ie.fromISO(i,r),l=o.isValid}catch{l=!1}if(s&&l)return t.fromDateTimes(n,o);if(s){let d=Ze.fromISO(i,r);if(d.isValid)return t.after(n,d)}else if(l){let d=Ze.fromISO(a,r);if(d.isValid)return t.before(o,d)}}return t.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static isInterval(e){return e&&e.isLuxonInterval||!1}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get lastDateTime(){return this.isValid&&this.e?this.e.minus(1):null}get isValid(){return this.invalidReason===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(e="milliseconds"){return this.isValid?this.toDuration(e).get(e):NaN}count(e="milliseconds",r){if(!this.isValid)return NaN;let a=this.start.startOf(e,r),i;return r?.useLocaleWeeks?i=this.end.reconfigure({locale:a.locale}):i=this.end,i=i.startOf(e,r),Math.floor(i.diff(a,e).get(e))+(i.valueOf()!==this.end.valueOf())}hasSame(e){return this.isValid?this.isEmpty()||this.e.minus(1).hasSame(this.s,e):!1}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(e){return this.isValid?this.s>e:!1}isBefore(e){return this.isValid?this.e<=e:!1}contains(e){return this.isValid?this.s<=e&&this.e>e:!1}set({start:e,end:r}={}){return this.isValid?t.fromDateTimes(e||this.s,r||this.e):this}splitAt(...e){if(!this.isValid)return[];let r=e.map(Ui).filter(s=>this.contains(s)).sort((s,o)=>s.toMillis()-o.toMillis()),a=[],{s:i}=this,n=0;for(;i<this.e;){let s=r[n]||this.e,o=+s>+this.e?this.e:s;a.push(t.fromDateTimes(i,o)),i=o,n+=1}return a}splitBy(e){let r=Ze.fromDurationLike(e);if(!this.isValid||!r.isValid||r.as("milliseconds")===0)return[];let{s:a}=this,i=1,n,s=[];for(;a<this.e;){let o=this.start.plus(r.mapUnits(l=>l*i));n=+o>+this.e?this.e:o,s.push(t.fromDateTimes(a,n)),a=n,i+=1}return s}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s<e.e}abutsStart(e){return this.isValid?+this.e==+e.s:!1}abutsEnd(e){return this.isValid?+e.e==+this.s:!1}engulfs(e){return this.isValid?this.s<=e.s&&this.e>=e.e:!1}equals(e){return!this.isValid||!e.isValid?!1:this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;let r=this.s>e.s?this.s:e.s,a=this.e<e.e?this.e:e.e;return r>=a?null:t.fromDateTimes(r,a)}union(e){if(!this.isValid)return this;let r=this.s<e.s?this.s:e.s,a=this.e>e.e?this.e:e.e;return t.fromDateTimes(r,a)}static merge(e){let[r,a]=e.sort((i,n)=>i.s-n.s).reduce(([i,n],s)=>n?n.overlaps(s)||n.abutsStart(s)?[i,n.union(s)]:[i.concat([n]),s]:[i,s],[[],null]);return a&&r.push(a),r}static xor(e){let r=null,a=0,i=[],n=e.map(l=>[{time:l.s,type:"s"},{time:l.e,type:"e"}]),s=Array.prototype.concat(...n),o=s.sort((l,d)=>l.time-d.time);for(let l of o)a+=l.type==="s"?1:-1,a===1?r=l.time:(r&&+r!=+l.time&&i.push(t.fromDateTimes(r,l.time)),r=null);return t.merge(i)}difference(...e){return t.xor([this].concat(e)).map(r=>this.intersection(r)).filter(r=>r&&!r.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} \u2013 ${this.e.toISO()})`:pi}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=Ta,r={}){return this.isValid?St.create(this.s.loc.clone(r),e).formatInterval(this):pi}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:pi}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:pi}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:pi}toFormat(e,{separator:r=" \u2013 "}={}){return this.isValid?`${this.s.toFormat(e)}${r}${this.e.toFormat(e)}`:pi}toDuration(e,r){return this.isValid?this.e.diff(this.s,e,r):Ze.invalid(this.invalidReason)}mapEndpoints(e){return t.fromDateTimes(e(this.s),e(this.e))}},hi=class{static hasDST(e=Ne.defaultZone){let r=ie.now().setZone(e).set({month:12});return!e.isUniversal&&r.offset!==r.set({month:6}).offset}static isValidIANAZone(e){return xr.isValidZone(e)}static normalizeZone(e){return vr(e,Ne.defaultZone)}static getStartOfWeek({locale:e=null,locObj:r=null}={}){return(r||Te.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:r=null}={}){return(r||Te.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:r=null}={}){return(r||Te.create(e)).getWeekendDays().slice()}static months(e="long",{locale:r=null,numberingSystem:a=null,locObj:i=null,outputCalendar:n="gregory"}={}){return(i||Te.create(r,a,n)).months(e)}static monthsFormat(e="long",{locale:r=null,numberingSystem:a=null,locObj:i=null,outputCalendar:n="gregory"}={}){return(i||Te.create(r,a,n)).months(e,!0)}static weekdays(e="long",{locale:r=null,numberingSystem:a=null,locObj:i=null}={}){return(i||Te.create(r,a,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:r=null,numberingSystem:a=null,locObj:i=null}={}){return(i||Te.create(r,a,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return Te.create(e).meridiems()}static eras(e="short",{locale:r=null}={}){return Te.create(r,null,"gregory").eras(e)}static features(){return{relative:Wl(),localeWeek:Vl()}}};function al(t,e){let r=i=>i.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),a=r(e)-r(t);return Math.floor(Ze.fromMillis(a).as("days"))}function em(t,e,r){let a=[["years",(l,d)=>d.year-l.year],["quarters",(l,d)=>d.quarter-l.quarter+(d.year-l.year)*4],["months",(l,d)=>d.month-l.month+(d.year-l.year)*12],["weeks",(l,d)=>{let u=al(l,d);return(u-u%7)/7}],["days",al]],i={},n=t,s,o;for(let[l,d]of a)r.indexOf(l)>=0&&(s=l,i[l]=d(t,e),o=n.plus(i),o>e?(i[l]--,t=n.plus(i),t>e&&(o=t,i[l]--,t=n.plus(i))):t=o);return[t,i,o,s]}function tm(t,e,r,a){let[i,n,s,o]=em(t,e,r),l=e-i,d=r.filter(c=>["hours","minutes","seconds","milliseconds"].indexOf(c)>=0);d.length===0&&(s<e&&(s=i.plus({[o]:1})),s!==i&&(n[o]=(n[o]||0)+l/(s-i)));let u=Ze.fromObject(n,a);return d.length>0?Ze.fromMillis(l,a).shiftTo(...d).plus(u):u}var rm="missing Intl.DateTimeFormat.formatToParts support";function he(t,e=r=>r){return{regex:t,deser:([r])=>e(Hf(r))}}var im="\xA0",sd=`[ ${im}]`,od=new RegExp(sd,"g");function am(t){return t.replace(/\./g,"\\.?").replace(od,sd)}function nl(t){return t.replace(/\./g,"").replace(od," ").toLowerCase()}function kt(t,e){return t===null?null:{regex:RegExp(t.map(am).join("|")),deser:([r])=>t.findIndex(a=>nl(r)===nl(a))+e}}function sl(t,e){return{regex:t,deser:([,r,a])=>Na(r,a),groups:e}}function ga(t){return{regex:t,deser:([e])=>e}}function nm(t){return t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function sm(t,e){let r=Rt(e),a=Rt(e,"{2}"),i=Rt(e,"{3}"),n=Rt(e,"{4}"),s=Rt(e,"{6}"),o=Rt(e,"{1,2}"),l=Rt(e,"{1,3}"),d=Rt(e,"{1,6}"),u=Rt(e,"{1,9}"),c=Rt(e,"{2,4}"),f=Rt(e,"{4,6}"),p=y=>({regex:RegExp(nm(y.val)),deser:([b])=>b,literal:!0}),m=(y=>{if(t.literal)return p(y);switch(y.val){case"G":return kt(e.eras("short"),0);case"GG":return kt(e.eras("long"),0);case"y":return he(d);case"yy":return he(c,ss);case"yyyy":return he(n);case"yyyyy":return he(f);case"yyyyyy":return he(s);case"M":return he(o);case"MM":return he(a);case"MMM":return kt(e.months("short",!0),1);case"MMMM":return kt(e.months("long",!0),1);case"L":return he(o);case"LL":return he(a);case"LLL":return kt(e.months("short",!1),1);case"LLLL":return kt(e.months("long",!1),1);case"d":return he(o);case"dd":return he(a);case"o":return he(l);case"ooo":return he(i);case"HH":return he(a);case"H":return he(o);case"hh":return he(a);case"h":return he(o);case"mm":return he(a);case"m":return he(o);case"q":return he(o);case"qq":return he(a);case"s":return he(o);case"ss":return he(a);case"S":return he(l);case"SSS":return he(i);case"u":return ga(u);case"uu":return ga(o);case"uuu":return he(r);case"a":return kt(e.meridiems(),0);case"kkkk":return he(n);case"kk":return he(c,ss);case"W":return he(o);case"WW":return he(a);case"E":case"c":return he(r);case"EEE":return kt(e.weekdays("short",!1),1);case"EEEE":return kt(e.weekdays("long",!1),1);case"ccc":return kt(e.weekdays("short",!0),1);case"cccc":return kt(e.weekdays("long",!0),1);case"Z":case"ZZ":return sl(new RegExp(`([+-]${o.source})(?::(${a.source}))?`),2);case"ZZZ":return sl(new RegExp(`([+-]${o.source})(${a.source})?`),2);case"z":return ga(/[a-z_+-/]{1,256}?/i);case" ":return ga(/[^\S\n\r]/);default:return p(y)}})(t)||{invalidReason:rm};return m.token=t,m}var om={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function lm(t,e,r){let{type:a,value:i}=t;if(a==="literal"){let l=/^\s+$/.test(i);return{literal:!l,val:l?" ":i}}let n=e[a],s=a;a==="hour"&&(e.hour12!=null?s=e.hour12?"hour12":"hour24":e.hourCycle!=null?e.hourCycle==="h11"||e.hourCycle==="h12"?s="hour12":s="hour24":s=r.hour12?"hour12":"hour24");let o=om[s];if(typeof o=="object"&&(o=o[n]),o)return{literal:!1,val:o}}function dm(t){return[`^${t.map(r=>r.regex).reduce((r,a)=>`${r}(${a.source})`,"")}$`,t]}function um(t,e,r){let a=t.match(e);if(a){let i={},n=1;for(let s in r)if(bi(r,s)){let o=r[s],l=o.groups?o.groups+1:1;!o.literal&&o.token&&(i[o.token.val[0]]=o.deser(a.slice(n,n+l))),n+=l}return[a,i]}else return[a,{}]}function cm(t){let e=n=>{switch(n){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}},r=null,a;return J(t.z)||(r=xr.create(t.z)),J(t.Z)||(r||(r=new Nt(t.Z)),a=t.Z),J(t.q)||(t.M=(t.q-1)*3+1),J(t.h)||(t.h<12&&t.a===1?t.h+=12:t.h===12&&t.a===0&&(t.h=0)),t.G===0&&t.y&&(t.y=-t.y),J(t.u)||(t.S=cs(t.u)),[Object.keys(t).reduce((n,s)=>{let o=e(s);return o&&(n[o]=t[s]),n},{}),r,a]}var kn=null;function pm(){return kn||(kn=ie.fromMillis(1555555555555)),kn}function fm(t,e){if(t.literal)return t;let r=St.macroTokenToFormatOpts(t.val),a=ud(r,e);return a==null||a.includes(void 0)?t:a}function ld(t,e){return Array.prototype.concat(...t.map(r=>fm(r,e)))}var Pa=class{constructor(e,r){if(this.locale=e,this.format=r,this.tokens=ld(St.parseFormat(r),e),this.units=this.tokens.map(a=>sm(a,e)),this.disqualifyingUnit=this.units.find(a=>a.invalidReason),!this.disqualifyingUnit){let[a,i]=dm(this.units);this.regex=RegExp(a,"i"),this.handlers=i}}explainFromTokens(e){if(this.isValid){let[r,a]=um(e,this.regex,this.handlers),[i,n,s]=a?cm(a):[null,null,void 0];if(bi(a,"a")&&bi(a,"H"))throw new Sr("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:r,matches:a,result:i,zone:n,specificOffset:s}}else return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}};function dd(t,e,r){return new Pa(t,r).explainFromTokens(e)}function hm(t,e,r){let{result:a,zone:i,specificOffset:n,invalidReason:s}=dd(t,e,r);return[a,i,n,s]}function ud(t,e){if(!t)return null;let a=St.create(e,t).dtFormatter(pm()),i=a.formatToParts(),n=a.resolvedOptions();return i.map(s=>lm(s,t,n))}var jn="Invalid DateTime",ol=864e13;function Gi(t){return new wt("unsupported zone",`the zone "${t.name}" is not supported`)}function Wn(t){return t.weekData===null&&(t.weekData=Ia(t.c)),t.weekData}function Vn(t){return t.localWeekData===null&&(t.localWeekData=Ia(t.c,t.loc.getMinDaysInFirstWeek(),t.loc.getStartOfWeek())),t.localWeekData}function Ur(t,e){let r={ts:t.ts,zone:t.zone,c:t.c,o:t.o,loc:t.loc,invalid:t.invalid};return new ie({...r,...e,old:r})}function cd(t,e,r){let a=t-e*60*1e3,i=r.offset(a);if(e===i)return[a,e];a-=(i-e)*60*1e3;let n=r.offset(a);return i===n?[a,i]:[t-Math.min(i,n)*60*1e3,Math.max(i,n)]}function ba(t,e){t+=e*60*1e3;let r=new Date(t);return{year:r.getUTCFullYear(),month:r.getUTCMonth()+1,day:r.getUTCDate(),hour:r.getUTCHours(),minute:r.getUTCMinutes(),second:r.getUTCSeconds(),millisecond:r.getUTCMilliseconds()}}function Sa(t,e,r){return cd(La(t),e,r)}function ll(t,e){let r=t.o,a=t.c.year+Math.trunc(e.years),i=t.c.month+Math.trunc(e.months)+Math.trunc(e.quarters)*3,n={...t.c,year:a,month:i,day:Math.min(t.c.day,Oa(a,i))+Math.trunc(e.days)+Math.trunc(e.weeks)*7},s=Ze.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),o=La(n),[l,d]=cd(o,r,t.zone);return s!==0&&(l+=s,d=t.zone.offset(l)),{ts:l,o:d}}function fi(t,e,r,a,i,n){let{setZone:s,zone:o}=r;if(t&&Object.keys(t).length!==0||e){let l=e||o,d=ie.fromObject(t,{...r,zone:l,specificOffset:n});return s?d:d.setZone(o)}else return ie.invalid(new wt("unparsable",`the input "${i}" can't be parsed as ${a}`))}function va(t,e,r=!0){return t.isValid?St.create(Te.create("en-US"),{allowZ:r,forceSimple:!0}).formatDateTimeFromString(t,e):null}function _n(t,e,r){let a=t.c.year>9999||t.c.year<0,i="";if(a&&t.c.year>=0&&(i+="+"),i+=ze(t.c.year,a?6:4),r==="year")return i;if(e){if(i+="-",i+=ze(t.c.month),r==="month")return i;i+="-"}else if(i+=ze(t.c.month),r==="month")return i;return i+=ze(t.c.day),i}function dl(t,e,r,a,i,n,s){let o=!r||t.c.millisecond!==0||t.c.second!==0,l="";switch(s){case"day":case"month":case"year":break;default:if(l+=ze(t.c.hour),s==="hour")break;if(e){if(l+=":",l+=ze(t.c.minute),s==="minute")break;o&&(l+=":",l+=ze(t.c.second))}else{if(l+=ze(t.c.minute),s==="minute")break;o&&(l+=ze(t.c.second))}if(s==="second")break;o&&(!a||t.c.millisecond!==0)&&(l+=".",l+=ze(t.c.millisecond,3))}return i&&(t.isOffsetFixed&&t.offset===0&&!n?l+="Z":t.o<0?(l+="-",l+=ze(Math.trunc(-t.o/60)),l+=":",l+=ze(Math.trunc(-t.o%60))):(l+="+",l+=ze(Math.trunc(t.o/60)),l+=":",l+=ze(Math.trunc(t.o%60)))),n&&(l+="["+t.zone.ianaName+"]"),l}var pd={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},mm={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},ym={ordinal:1,hour:0,minute:0,second:0,millisecond:0},wa=["year","month","day","hour","minute","second","millisecond"],gm=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],bm=["year","ordinal","hour","minute","second","millisecond"];function xa(t){let e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[t.toLowerCase()];if(!e)throw new Ca(t);return e}function ul(t){switch(t.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return xa(t)}}function vm(t){if(Qi===void 0&&(Qi=Ne.now()),t.type!=="iana")return t.offset(Qi);let e=t.name,r=os.get(e);return r===void 0&&(r=t.offset(Qi),os.set(e,r)),r}function cl(t,e){let r=vr(e.zone,Ne.defaultZone);if(!r.isValid)return ie.invalid(Gi(r));let a=Te.fromObject(e),i,n;if(J(t.year))i=Ne.now();else{for(let l of wa)J(t[l])&&(t[l]=pd[l]);let s=kl(t)||jl(t);if(s)return ie.invalid(s);let o=vm(r);[i,n]=Sa(t,o,r)}return new ie({ts:i,zone:r,loc:a,o:n})}function pl(t,e,r){let a=J(r.round)?!0:r.round,i=J(r.rounding)?"trunc":r.rounding,n=(o,l)=>(o=ps(o,a||r.calendary?0:2,r.calendary?"round":i),e.loc.clone(r).relFormatter(r).format(o,l)),s=o=>r.calendary?e.hasSame(t,o)?0:e.startOf(o).diff(t.startOf(o),o).get(o):e.diff(t,o).get(o);if(r.unit)return n(s(r.unit),r.unit);for(let o of r.units){let l=s(o);if(Math.abs(l)>=1)return n(l,o)}return n(t>e?-0:0,r.units[r.units.length-1])}function fl(t){let e={},r;return t.length>0&&typeof t[t.length-1]=="object"?(e=t[t.length-1],r=Array.from(t).slice(0,t.length-1)):r=Array.from(t),[e,r]}var Qi,os=new Map,ie=class t{constructor(e){let r=e.zone||Ne.defaultZone,a=e.invalid||(Number.isNaN(e.ts)?new wt("invalid input"):null)||(r.isValid?null:Gi(r));this.ts=J(e.ts)?Ne.now():e.ts;let i=null,n=null;if(!a)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(r))[i,n]=[e.old.c,e.old.o];else{let o=wr(e.o)&&!e.old?e.o:r.offset(this.ts);i=ba(this.ts,o),a=Number.isNaN(i.year)?new wt("invalid input"):null,i=a?null:i,n=a?null:o}this._zone=r,this.loc=e.loc||Te.create(),this.invalid=a,this.weekData=null,this.localWeekData=null,this.c=i,this.o=n,this.isLuxonDateTime=!0}static now(){return new t({})}static local(){let[e,r]=fl(arguments),[a,i,n,s,o,l,d]=r;return cl({year:a,month:i,day:n,hour:s,minute:o,second:l,millisecond:d},e)}static utc(){let[e,r]=fl(arguments),[a,i,n,s,o,l,d]=r;return e.zone=Nt.utcInstance,cl({year:a,month:i,day:n,hour:s,minute:o,second:l,millisecond:d},e)}static fromJSDate(e,r={}){let a=Jf(e)?e.valueOf():NaN;if(Number.isNaN(a))return t.invalid("invalid input");let i=vr(r.zone,Ne.defaultZone);return i.isValid?new t({ts:a,zone:i,loc:Te.fromObject(r)}):t.invalid(Gi(i))}static fromMillis(e,r={}){if(wr(e))return e<-ol||e>ol?t.invalid("Timestamp out of range"):new t({ts:e,zone:vr(r.zone,Ne.defaultZone),loc:Te.fromObject(r)});throw new Qe(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,r={}){if(wr(e))return new t({ts:e*1e3,zone:vr(r.zone,Ne.defaultZone),loc:Te.fromObject(r)});throw new Qe("fromSeconds requires a numerical input")}static fromObject(e,r={}){e=e||{};let a=vr(r.zone,Ne.defaultZone);if(!a.isValid)return t.invalid(Gi(a));let i=Te.fromObject(r),n=Aa(e,ul),{minDaysInFirstWeek:s,startOfWeek:o}=Ko(n,i),l=Ne.now(),d=J(r.specificOffset)?a.offset(l):r.specificOffset,u=!J(n.ordinal),c=!J(n.year),f=!J(n.month)||!J(n.day),p=c||f,h=n.weekYear||n.weekNumber;if((p||u)&&h)throw new Sr("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(f&&u)throw new Sr("Can't mix ordinal dates with month/day");let m=h||n.weekday&&!p,y,b,v=ba(l,d);m?(y=gm,b=mm,v=Ia(v,s,o)):u?(y=bm,b=ym,v=Rn(v)):(y=wa,b=pd);let S=!1;for(let R of y){let $=n[R];J($)?S?n[R]=b[R]:n[R]=v[R]:S=!0}let C=m?Qf(n,s,o):u?Zf(n):kl(n),F=C||jl(n);if(F)return t.invalid(F);let O=m?Qo(n,s,o):u?Zo(n):n,[N,E]=Sa(O,d,a),P=new t({ts:N,zone:a,o:E,loc:i});return n.weekday&&p&&e.weekday!==P.weekday?t.invalid("mismatched weekday",`you can't specify both a weekday of ${n.weekday} and a date of ${P.toISO()}`):P.isValid?P:t.invalid(P.invalid)}static fromISO(e,r={}){let[a,i]=jh(e);return fi(a,i,r,"ISO 8601",e)}static fromRFC2822(e,r={}){let[a,i]=Wh(e);return fi(a,i,r,"RFC 2822",e)}static fromHTTP(e,r={}){let[a,i]=Vh(e);return fi(a,i,r,"HTTP",r)}static fromFormat(e,r,a={}){if(J(e)||J(r))throw new Qe("fromFormat requires an input string and a format");let{locale:i=null,numberingSystem:n=null}=a,s=Te.fromOpts({locale:i,numberingSystem:n,defaultToEN:!0}),[o,l,d,u]=hm(s,e,r);return u?t.invalid(u):fi(o,l,a,`format ${r}`,e,d)}static fromString(e,r,a={}){return t.fromFormat(e,r,a)}static fromSQL(e,r={}){let[a,i]=Zh(e);return fi(a,i,r,"SQL",e)}static invalid(e,r=null){if(!e)throw new Qe("need to specify a reason the DateTime is invalid");let a=e instanceof wt?e:new wt(e,r);if(Ne.throwOnInvalid)throw new zn(a);return new t({invalid:a})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,r={}){let a=ud(e,Te.fromObject(r));return a?a.map(i=>i?i.val:null).join(""):null}static expandFormat(e,r={}){return ld(St.parseFormat(e),Te.fromObject(r)).map(i=>i.val).join("")}static resetCache(){Qi=void 0,os.clear()}get(e){return this[e]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?Wn(this).weekYear:NaN}get weekNumber(){return this.isValid?Wn(this).weekNumber:NaN}get weekday(){return this.isValid?Wn(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?Vn(this).weekday:NaN}get localWeekNumber(){return this.isValid?Vn(this).weekNumber:NaN}get localWeekYear(){return this.isValid?Vn(this).weekYear:NaN}get ordinal(){return this.isValid?Rn(this.c).ordinal:NaN}get monthShort(){return this.isValid?hi.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?hi.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?hi.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?hi.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return this.isOffsetFixed?!1:this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];let e=864e5,r=6e4,a=La(this.c),i=this.zone.offset(a-e),n=this.zone.offset(a+e),s=this.zone.offset(a-i*r),o=this.zone.offset(a-n*r);if(s===o)return[this];let l=a-s*r,d=a-o*r,u=ba(l,s),c=ba(d,o);return u.hour===c.hour&&u.minute===c.minute&&u.second===c.second&&u.millisecond===c.millisecond?[Ur(this,{ts:l}),Ur(this,{ts:d})]:[this]}get isInLeapYear(){return Ji(this.year)}get daysInMonth(){return Oa(this.year,this.month)}get daysInYear(){return this.isValid?mi(this.year):NaN}get weeksInWeekYear(){return this.isValid?Ki(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?Ki(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){let{locale:r,numberingSystem:a,calendar:i}=St.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:r,numberingSystem:a,outputCalendar:i}}toUTC(e=0,r={}){return this.setZone(Nt.instance(e),r)}toLocal(){return this.setZone(Ne.defaultZone)}setZone(e,{keepLocalTime:r=!1,keepCalendarTime:a=!1}={}){if(e=vr(e,Ne.defaultZone),e.equals(this.zone))return this;if(e.isValid){let i=this.ts;if(r||a){let n=e.offset(this.ts),s=this.toObject();[i]=Sa(s,n,e)}return Ur(this,{ts:i,zone:e})}else return t.invalid(Gi(e))}reconfigure({locale:e,numberingSystem:r,outputCalendar:a}={}){let i=this.loc.clone({locale:e,numberingSystem:r,outputCalendar:a});return Ur(this,{loc:i})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;let r=Aa(e,ul),{minDaysInFirstWeek:a,startOfWeek:i}=Ko(r,this.loc),n=!J(r.weekYear)||!J(r.weekNumber)||!J(r.weekday),s=!J(r.ordinal),o=!J(r.year),l=!J(r.month)||!J(r.day),d=o||l,u=r.weekYear||r.weekNumber;if((d||s)&&u)throw new Sr("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(l&&s)throw new Sr("Can't mix ordinal dates with month/day");let c;n?c=Qo({...Ia(this.c,a,i),...r},a,i):J(r.ordinal)?(c={...this.toObject(),...r},J(r.day)&&(c.day=Math.min(Oa(c.year,c.month),c.day))):c=Zo({...Rn(this.c),...r});let[f,p]=Sa(c,this.o,this.zone);return Ur(this,{ts:f,o:p})}plus(e){if(!this.isValid)return this;let r=Ze.fromDurationLike(e);return Ur(this,ll(this,r))}minus(e){if(!this.isValid)return this;let r=Ze.fromDurationLike(e).negate();return Ur(this,ll(this,r))}startOf(e,{useLocaleWeeks:r=!1}={}){if(!this.isValid)return this;let a={},i=Ze.normalizeUnit(e);switch(i){case"years":a.month=1;case"quarters":case"months":a.day=1;case"weeks":case"days":a.hour=0;case"hours":a.minute=0;case"minutes":a.second=0;case"seconds":a.millisecond=0;break}if(i==="weeks")if(r){let n=this.loc.getStartOfWeek(),{weekday:s}=this;s<n&&(a.weekNumber=this.weekNumber-1),a.weekday=n}else a.weekday=1;if(i==="quarters"){let n=Math.ceil(this.month/3);a.month=(n-1)*3+1}return this.set(a)}endOf(e,r){return this.isValid?this.plus({[e]:1}).startOf(e,r).minus(1):this}toFormat(e,r={}){return this.isValid?St.create(this.loc.redefaultToEN(r)).formatDateTimeFromString(this,e):jn}toLocaleString(e=Ta,r={}){return this.isValid?St.create(this.loc.clone(r),e).formatDateTime(this):jn}toLocaleParts(e={}){return this.isValid?St.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:r=!1,suppressMilliseconds:a=!1,includeOffset:i=!0,extendedZone:n=!1,precision:s="milliseconds"}={}){if(!this.isValid)return null;s=xa(s);let o=e==="extended",l=_n(this,o,s);return wa.indexOf(s)>=3&&(l+="T"),l+=dl(this,o,r,a,i,n,s),l}toISODate({format:e="extended",precision:r="day"}={}){return this.isValid?_n(this,e==="extended",xa(r)):null}toISOWeekDate(){return va(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:r=!1,includeOffset:a=!0,includePrefix:i=!1,extendedZone:n=!1,format:s="extended",precision:o="milliseconds"}={}){return this.isValid?(o=xa(o),(i&&wa.indexOf(o)>=3?"T":"")+dl(this,s==="extended",r,e,a,n,o)):null}toRFC2822(){return va(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return va(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?_n(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:r=!1,includeOffsetSpace:a=!0}={}){let i="HH:mm:ss.SSS";return(r||e)&&(a&&(i+=" "),r?i+="z":e&&(i+="ZZ")),va(this,i,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():jn}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};let r={...this.c};return e.includeConfig&&(r.outputCalendar=this.outputCalendar,r.numberingSystem=this.loc.numberingSystem,r.locale=this.loc.locale),r}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,r="milliseconds",a={}){if(!this.isValid||!e.isValid)return Ze.invalid("created by diffing an invalid DateTime");let i={locale:this.locale,numberingSystem:this.numberingSystem,...a},n=Yf(r).map(Ze.normalizeUnit),s=e.valueOf()>this.valueOf(),o=s?this:e,l=s?e:this,d=tm(o,l,n,i);return s?d.negate():d}diffNow(e="milliseconds",r={}){return this.diff(t.now(),e,r)}until(e){return this.isValid?gi.fromDateTimes(this,e):this}hasSame(e,r,a){if(!this.isValid)return!1;let i=e.valueOf(),n=this.setZone(e.zone,{keepLocalTime:!0});return n.startOf(r,a)<=i&&i<=n.endOf(r,a)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;let r=e.base||t.fromObject({},{zone:this.zone}),a=e.padding?this<r?-e.padding:e.padding:0,i=["years","months","days","hours","minutes","seconds"],n=e.unit;return Array.isArray(e.unit)&&(i=e.unit,n=void 0),pl(r,this.plus(a),{...e,numeric:"always",units:i,unit:n})}toRelativeCalendar(e={}){return this.isValid?pl(e.base||t.fromObject({},{zone:this.zone}),this,{...e,numeric:"auto",units:["years","months","days"],calendary:!0}):null}static min(...e){if(!e.every(t.isDateTime))throw new Qe("min requires all arguments be DateTimes");return Jo(e,r=>r.valueOf(),Math.min)}static max(...e){if(!e.every(t.isDateTime))throw new Qe("max requires all arguments be DateTimes");return Jo(e,r=>r.valueOf(),Math.max)}static fromFormatExplain(e,r,a={}){let{locale:i=null,numberingSystem:n=null}=a,s=Te.fromOpts({locale:i,numberingSystem:n,defaultToEN:!0});return dd(s,e,r)}static fromStringExplain(e,r,a={}){return t.fromFormatExplain(e,r,a)}static buildFormatParser(e,r={}){let{locale:a=null,numberingSystem:i=null}=r,n=Te.fromOpts({locale:a,numberingSystem:i,defaultToEN:!0});return new Pa(n,e)}static fromFormatParser(e,r,a={}){if(J(e)||J(r))throw new Qe("fromFormatParser requires an input string and a format parser");let{locale:i=null,numberingSystem:n=null}=a,s=Te.fromOpts({locale:i,numberingSystem:n,defaultToEN:!0});if(!s.equals(r.locale))throw new Qe(`fromFormatParser called with a locale of ${s}, but the format parser was created for ${r.locale}`);let{result:o,zone:l,specificOffset:d,invalidReason:u}=r.explainFromTokens(e);return u?t.invalid(u):fi(o,l,a,`format ${r.format}`,e,d)}static get DATE_SHORT(){return Ta}static get DATE_MED(){return hl}static get DATE_MED_WITH_WEEKDAY(){return Pf}static get DATE_FULL(){return ml}static get DATE_HUGE(){return yl}static get TIME_SIMPLE(){return gl}static get TIME_WITH_SECONDS(){return bl}static get TIME_WITH_SHORT_OFFSET(){return vl}static get TIME_WITH_LONG_OFFSET(){return Sl}static get TIME_24_SIMPLE(){return wl}static get TIME_24_WITH_SECONDS(){return xl}static get TIME_24_WITH_SHORT_OFFSET(){return Cl}static get TIME_24_WITH_LONG_OFFSET(){return Tl}static get DATETIME_SHORT(){return Fl}static get DATETIME_SHORT_WITH_SECONDS(){return Il}static get DATETIME_MED(){return Ol}static get DATETIME_MED_WITH_SECONDS(){return Al}static get DATETIME_MED_WITH_WEEKDAY(){return Ef}static get DATETIME_FULL(){return Pl}static get DATETIME_FULL_WITH_SECONDS(){return El}static get DATETIME_HUGE(){return Ll}static get DATETIME_HUGE_WITH_SECONDS(){return Nl}};function Ui(t){if(ie.isDateTime(t))return t;if(t&&t.valueOf&&wr(t.valueOf()))return ie.fromJSDate(t);if(t&&typeof t=="object")return ie.fromObject(t);throw new Qe(`Unknown datetime argument: ${t}, of type ${typeof t}`)}var Ra=function(){return Ra=Object.assign||function(e){for(var r,a=1,i=arguments.length;a<i;a++){r=arguments[a];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Ra.apply(this,arguments)},ys={exports:{}},Me={},gs={exports:{}},Qr={};function gd(){var t={};return t["align-content"]=!1,t["align-items"]=!1,t["align-self"]=!1,t["alignment-adjust"]=!1,t["alignment-baseline"]=!1,t.all=!1,t["anchor-point"]=!1,t.animation=!1,t["animation-delay"]=!1,t["animation-direction"]=!1,t["animation-duration"]=!1,t["animation-fill-mode"]=!1,t["animation-iteration-count"]=!1,t["animation-name"]=!1,t["animation-play-state"]=!1,t["animation-timing-function"]=!1,t.azimuth=!1,t["backface-visibility"]=!1,t.background=!0,t["background-attachment"]=!0,t["background-clip"]=!0,t["background-color"]=!0,t["background-image"]=!0,t["background-origin"]=!0,t["background-position"]=!0,t["background-repeat"]=!0,t["background-size"]=!0,t["baseline-shift"]=!1,t.binding=!1,t.bleed=!1,t["bookmark-label"]=!1,t["bookmark-level"]=!1,t["bookmark-state"]=!1,t.border=!0,t["border-bottom"]=!0,t["border-bottom-color"]=!0,t["border-bottom-left-radius"]=!0,t["border-bottom-right-radius"]=!0,t["border-bottom-style"]=!0,t["border-bottom-width"]=!0,t["border-collapse"]=!0,t["border-color"]=!0,t["border-image"]=!0,t["border-image-outset"]=!0,t["border-image-repeat"]=!0,t["border-image-slice"]=!0,t["border-image-source"]=!0,t["border-image-width"]=!0,t["border-left"]=!0,t["border-left-color"]=!0,t["border-left-style"]=!0,t["border-left-width"]=!0,t["border-radius"]=!0,t["border-right"]=!0,t["border-right-color"]=!0,t["border-right-style"]=!0,t["border-right-width"]=!0,t["border-spacing"]=!0,t["border-style"]=!0,t["border-top"]=!0,t["border-top-color"]=!0,t["border-top-left-radius"]=!0,t["border-top-right-radius"]=!0,t["border-top-style"]=!0,t["border-top-width"]=!0,t["border-width"]=!0,t.bottom=!1,t["box-decoration-break"]=!0,t["box-shadow"]=!0,t["box-sizing"]=!0,t["box-snap"]=!0,t["box-suppress"]=!0,t["break-after"]=!0,t["break-before"]=!0,t["break-inside"]=!0,t["caption-side"]=!1,t.chains=!1,t.clear=!0,t.clip=!1,t["clip-path"]=!1,t["clip-rule"]=!1,t.color=!0,t["color-interpolation-filters"]=!0,t["column-count"]=!1,t["column-fill"]=!1,t["column-gap"]=!1,t["column-rule"]=!1,t["column-rule-color"]=!1,t["column-rule-style"]=!1,t["column-rule-width"]=!1,t["column-span"]=!1,t["column-width"]=!1,t.columns=!1,t.contain=!1,t.content=!1,t["counter-increment"]=!1,t["counter-reset"]=!1,t["counter-set"]=!1,t.crop=!1,t.cue=!1,t["cue-after"]=!1,t["cue-before"]=!1,t.cursor=!1,t.direction=!1,t.display=!0,t["display-inside"]=!0,t["display-list"]=!0,t["display-outside"]=!0,t["dominant-baseline"]=!1,t.elevation=!1,t["empty-cells"]=!1,t.filter=!1,t.flex=!1,t["flex-basis"]=!1,t["flex-direction"]=!1,t["flex-flow"]=!1,t["flex-grow"]=!1,t["flex-shrink"]=!1,t["flex-wrap"]=!1,t.float=!1,t["float-offset"]=!1,t["flood-color"]=!1,t["flood-opacity"]=!1,t["flow-from"]=!1,t["flow-into"]=!1,t.font=!0,t["font-family"]=!0,t["font-feature-settings"]=!0,t["font-kerning"]=!0,t["font-language-override"]=!0,t["font-size"]=!0,t["font-size-adjust"]=!0,t["font-stretch"]=!0,t["font-style"]=!0,t["font-synthesis"]=!0,t["font-variant"]=!0,t["font-variant-alternates"]=!0,t["font-variant-caps"]=!0,t["font-variant-east-asian"]=!0,t["font-variant-ligatures"]=!0,t["font-variant-numeric"]=!0,t["font-variant-position"]=!0,t["font-weight"]=!0,t.grid=!1,t["grid-area"]=!1,t["grid-auto-columns"]=!1,t["grid-auto-flow"]=!1,t["grid-auto-rows"]=!1,t["grid-column"]=!1,t["grid-column-end"]=!1,t["grid-column-start"]=!1,t["grid-row"]=!1,t["grid-row-end"]=!1,t["grid-row-start"]=!1,t["grid-template"]=!1,t["grid-template-areas"]=!1,t["grid-template-columns"]=!1,t["grid-template-rows"]=!1,t["hanging-punctuation"]=!1,t.height=!0,t.hyphens=!1,t.icon=!1,t["image-orientation"]=!1,t["image-resolution"]=!1,t["ime-mode"]=!1,t["initial-letters"]=!1,t["inline-box-align"]=!1,t["justify-content"]=!1,t["justify-items"]=!1,t["justify-self"]=!1,t.left=!1,t["letter-spacing"]=!0,t["lighting-color"]=!0,t["line-box-contain"]=!1,t["line-break"]=!1,t["line-grid"]=!1,t["line-height"]=!1,t["line-snap"]=!1,t["line-stacking"]=!1,t["line-stacking-ruby"]=!1,t["line-stacking-shift"]=!1,t["line-stacking-strategy"]=!1,t["list-style"]=!0,t["list-style-image"]=!0,t["list-style-position"]=!0,t["list-style-type"]=!0,t.margin=!0,t["margin-bottom"]=!0,t["margin-left"]=!0,t["margin-right"]=!0,t["margin-top"]=!0,t["marker-offset"]=!1,t["marker-side"]=!1,t.marks=!1,t.mask=!1,t["mask-box"]=!1,t["mask-box-outset"]=!1,t["mask-box-repeat"]=!1,t["mask-box-slice"]=!1,t["mask-box-source"]=!1,t["mask-box-width"]=!1,t["mask-clip"]=!1,t["mask-image"]=!1,t["mask-origin"]=!1,t["mask-position"]=!1,t["mask-repeat"]=!1,t["mask-size"]=!1,t["mask-source-type"]=!1,t["mask-type"]=!1,t["max-height"]=!0,t["max-lines"]=!1,t["max-width"]=!0,t["min-height"]=!0,t["min-width"]=!0,t["move-to"]=!1,t["nav-down"]=!1,t["nav-index"]=!1,t["nav-left"]=!1,t["nav-right"]=!1,t["nav-up"]=!1,t["object-fit"]=!1,t["object-position"]=!1,t.opacity=!1,t.order=!1,t.orphans=!1,t.outline=!1,t["outline-color"]=!1,t["outline-offset"]=!1,t["outline-style"]=!1,t["outline-width"]=!1,t.overflow=!1,t["overflow-wrap"]=!1,t["overflow-x"]=!1,t["overflow-y"]=!1,t.padding=!0,t["padding-bottom"]=!0,t["padding-left"]=!0,t["padding-right"]=!0,t["padding-top"]=!0,t.page=!1,t["page-break-after"]=!1,t["page-break-before"]=!1,t["page-break-inside"]=!1,t["page-policy"]=!1,t.pause=!1,t["pause-after"]=!1,t["pause-before"]=!1,t.perspective=!1,t["perspective-origin"]=!1,t.pitch=!1,t["pitch-range"]=!1,t["play-during"]=!1,t.position=!1,t["presentation-level"]=!1,t.quotes=!1,t["region-fragment"]=!1,t.resize=!1,t.rest=!1,t["rest-after"]=!1,t["rest-before"]=!1,t.richness=!1,t.right=!1,t.rotation=!1,t["rotation-point"]=!1,t["ruby-align"]=!1,t["ruby-merge"]=!1,t["ruby-position"]=!1,t["shape-image-threshold"]=!1,t["shape-outside"]=!1,t["shape-margin"]=!1,t.size=!1,t.speak=!1,t["speak-as"]=!1,t["speak-header"]=!1,t["speak-numeral"]=!1,t["speak-punctuation"]=!1,t["speech-rate"]=!1,t.stress=!1,t["string-set"]=!1,t["tab-size"]=!1,t["table-layout"]=!1,t["text-align"]=!0,t["text-align-last"]=!0,t["text-combine-upright"]=!0,t["text-decoration"]=!0,t["text-decoration-color"]=!0,t["text-decoration-line"]=!0,t["text-decoration-skip"]=!0,t["text-decoration-style"]=!0,t["text-emphasis"]=!0,t["text-emphasis-color"]=!0,t["text-emphasis-position"]=!0,t["text-emphasis-style"]=!0,t["text-height"]=!0,t["text-indent"]=!0,t["text-justify"]=!0,t["text-orientation"]=!0,t["text-overflow"]=!0,t["text-shadow"]=!0,t["text-space-collapse"]=!0,t["text-transform"]=!0,t["text-underline-position"]=!0,t["text-wrap"]=!0,t.top=!1,t.transform=!1,t["transform-origin"]=!1,t["transform-style"]=!1,t.transition=!1,t["transition-delay"]=!1,t["transition-duration"]=!1,t["transition-property"]=!1,t["transition-timing-function"]=!1,t["unicode-bidi"]=!1,t["vertical-align"]=!1,t.visibility=!1,t["voice-balance"]=!1,t["voice-duration"]=!1,t["voice-family"]=!1,t["voice-pitch"]=!1,t["voice-range"]=!1,t["voice-rate"]=!1,t["voice-stress"]=!1,t["voice-volume"]=!1,t.volume=!1,t["white-space"]=!1,t.widows=!1,t.width=!0,t["will-change"]=!1,t["word-break"]=!0,t["word-spacing"]=!0,t["word-wrap"]=!0,t["wrap-flow"]=!1,t["wrap-through"]=!1,t["writing-mode"]=!1,t["z-index"]=!1,t}function Sm(t,e,r){}function wm(t,e,r){}var xm=/javascript\s*\:/img;function Cm(t,e){return xm.test(e)?"":e}Qr.whiteList=gd();Qr.getDefaultWhiteList=gd;Qr.onAttr=Sm;Qr.onIgnoreAttr=wm;Qr.safeAttrValue=Cm;var Tm={indexOf:function(t,e){var r,a;if(Array.prototype.indexOf)return t.indexOf(e);for(r=0,a=t.length;r<a;r++)if(t[r]===e)return r;return-1},forEach:function(t,e,r){var a,i;if(Array.prototype.forEach)return t.forEach(e,r);for(a=0,i=t.length;a<i;a++)e.call(r,t[a],a,t)},trim:function(t){return String.prototype.trim?t.trim():t.replace(/(^\s*)|(\s*$)/g,"")},trimRight:function(t){return String.prototype.trimRight?t.trimRight():t.replace(/(\s*$)/g,"")}},ea=Tm;function Fm(t,e){t=ea.trimRight(t),t[t.length-1]!==";"&&(t+=";");var r=t.length,a=!1,i=0,n=0,s="";function o(){if(!a){var u=ea.trim(t.slice(i,n)),c=u.indexOf(":");if(c!==-1){var f=ea.trim(u.slice(0,c)),p=ea.trim(u.slice(c+1));if(f){var h=e(i,s.length,f,p,u);h&&(s+=h+"; ")}}}i=n+1}for(;n<r;n++){var l=t[n];if(l==="/"&&t[n+1]==="*"){var d=t.indexOf("*/",n+2);if(d===-1)break;n=d+1,i=n+1,a=!1}else l==="("?a=!0:l===")"?a=!1:l===";"?a||o():l===`
3
+ `&&o()}return ea.trim(s)}var Im=Fm,Ba=Qr,Om=Im;function fd(t){return t==null}function Am(t){var e={};for(var r in t)e[r]=t[r];return e}function bd(t){t=Am(t||{}),t.whiteList=t.whiteList||Ba.whiteList,t.onAttr=t.onAttr||Ba.onAttr,t.onIgnoreAttr=t.onIgnoreAttr||Ba.onIgnoreAttr,t.safeAttrValue=t.safeAttrValue||Ba.safeAttrValue,this.options=t}bd.prototype.process=function(t){if(t=t||"",t=t.toString(),!t)return"";var e=this,r=e.options,a=r.whiteList,i=r.onAttr,n=r.onIgnoreAttr,s=r.safeAttrValue,o=Om(t,function(l,d,u,c,f){var p=a[u],h=!1;if(p===!0?h=p:typeof p=="function"?h=p(c):p instanceof RegExp&&(h=p.test(c)),h!==!0&&(h=!1),c=s(u,c),!!c){var m={position:d,sourcePosition:l,source:f,isWhite:h};if(h){var y=i(u,c,m);return fd(y)?u+":"+c:y}else{var y=n(u,c,m);if(!fd(y))return y}}});return o};var Pm=bd;(function(t,e){var r=Qr,a=Pm;function i(s,o){var l=new a(o);return l.process(s)}e=t.exports=i,e.FilterCSS=a;for(var n in r)e[n]=r[n]})(gs,gs.exports);var bs=gs.exports,vs={indexOf:function(t,e){var r,a;if(Array.prototype.indexOf)return t.indexOf(e);for(r=0,a=t.length;r<a;r++)if(t[r]===e)return r;return-1},forEach:function(t,e,r){var a,i;if(Array.prototype.forEach)return t.forEach(e,r);for(a=0,i=t.length;a<i;a++)e.call(r,t[a],a,t)},trim:function(t){return String.prototype.trim?t.trim():t.replace(/(^\s*)|(\s*$)/g,"")},spaceIndex:function(t){var e=/\s|\n|\t/,r=e.exec(t);return r?r.index:-1}},Em=bs.FilterCSS,Lm=bs.getDefaultWhiteList,ka=vs;function vd(){return{a:["target","href","title"],abbr:["title"],address:[],area:["shape","coords","href","alt"],article:[],aside:[],audio:["autoplay","controls","crossorigin","loop","muted","preload","src"],b:[],bdi:["dir"],bdo:["dir"],big:[],blockquote:["cite"],br:[],caption:[],center:[],cite:[],code:[],col:["align","valign","span","width"],colgroup:["align","valign","span","width"],dd:[],del:["datetime"],details:["open"],div:[],dl:[],dt:[],em:[],figcaption:[],figure:[],font:["color","size","face"],footer:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],header:[],hr:[],i:[],img:["src","alt","title","width","height"],ins:["datetime"],li:[],mark:[],nav:[],ol:[],p:[],pre:[],s:[],section:[],small:[],span:[],sub:[],summary:[],sup:[],strong:[],strike:[],table:["width","border","align","valign"],tbody:["align","valign"],td:["width","rowspan","colspan","align","valign"],tfoot:["align","valign"],th:["width","rowspan","colspan","align","valign"],thead:["align","valign"],tr:["rowspan","align","valign"],tt:[],u:[],ul:[],video:["autoplay","controls","crossorigin","loop","muted","playsinline","poster","preload","src","height","width"]}}var Sd=new Em;function Nm(t,e,r){}function Dm(t,e,r){}function Bm(t,e,r){}function Mm(t,e,r){}function wd(t){return t.replace(qm,"&lt;").replace(Rm,"&gt;")}function $m(t,e,r,a){if(r=Od(r),e==="href"||e==="src"){if(r=ka.trim(r),r==="#")return"#";if(!(r.substr(0,7)==="http://"||r.substr(0,8)==="https://"||r.substr(0,7)==="mailto:"||r.substr(0,4)==="tel:"||r.substr(0,11)==="data:image/"||r.substr(0,6)==="ftp://"||r.substr(0,2)==="./"||r.substr(0,3)==="../"||r[0]==="#"||r[0]==="/"))return""}else if(e==="background"){if(Ma.lastIndex=0,Ma.test(r))return""}else if(e==="style"){if(hd.lastIndex=0,hd.test(r)||(md.lastIndex=0,md.test(r)&&(Ma.lastIndex=0,Ma.test(r))))return"";a!==!1&&(a=a||Sd,r=a.process(r))}return r=Ad(r),r}var qm=/</g,Rm=/>/g,km=/"/g,jm=/&quot;/g,Wm=/&#([a-zA-Z0-9]*);?/gim,Vm=/&colon;?/gim,_m=/&newline;?/gim,Ma=/((j\s*a\s*v\s*a|v\s*b|l\s*i\s*v\s*e)\s*s\s*c\s*r\s*i\s*p\s*t\s*|m\s*o\s*c\s*h\s*a):/gi,hd=/e\s*x\s*p\s*r\s*e\s*s\s*s\s*i\s*o\s*n\s*\(.*/gi,md=/u\s*r\s*l\s*\(.*/gi;function xd(t){return t.replace(km,"&quot;")}function Cd(t){return t.replace(jm,'"')}function Td(t){return t.replace(Wm,function(r,a){return a[0]==="x"||a[0]==="X"?String.fromCharCode(parseInt(a.substr(1),16)):String.fromCharCode(parseInt(a,10))})}function Fd(t){return t.replace(Vm,":").replace(_m," ")}function Id(t){for(var e="",r=0,a=t.length;r<a;r++)e+=t.charCodeAt(r)<32?" ":t.charAt(r);return ka.trim(e)}function Od(t){return t=Cd(t),t=Td(t),t=Fd(t),t=Id(t),t}function Ad(t){return t=xd(t),t=wd(t),t}function zm(){return""}function Um(t,e){typeof e!="function"&&(e=function(){});var r=!Array.isArray(t);function a(s){return r?!0:ka.indexOf(t,s)!==-1}var i=[],n=!1;return{onIgnoreTag:function(s,o,l){if(a(s))if(l.isClosing){var d="[/removed]",u=l.position+d.length;return i.push([n!==!1?n:l.position,u]),n=!1,d}else return n||(n=l.position),"[removed]";else return e(s,o,l)},remove:function(s){var o="",l=0;return ka.forEach(i,function(d){o+=s.slice(l,d[0]),l=d[1]}),o+=s.slice(l),o}}}function Hm(t){for(var e="",r=0;r<t.length;){var a=t.indexOf("<!--",r);if(a===-1){e+=t.slice(r);break}e+=t.slice(r,a);var i=t.indexOf("-->",a);if(i===-1)break;r=i+3}return e}function Gm(t){var e=t.split("");return e=e.filter(function(r){var a=r.charCodeAt(0);return a===127?!1:a<=31?a===10||a===13:!0}),e.join("")}Me.whiteList=vd();Me.getDefaultWhiteList=vd;Me.onTag=Nm;Me.onIgnoreTag=Dm;Me.onTagAttr=Bm;Me.onIgnoreTagAttr=Mm;Me.safeAttrValue=$m;Me.escapeHtml=wd;Me.escapeQuote=xd;Me.unescapeQuote=Cd;Me.escapeHtmlEntities=Td;Me.escapeDangerHtml5Entities=Fd;Me.clearNonPrintableCharacter=Id;Me.friendlyAttrValue=Od;Me.escapeAttrValue=Ad;Me.onIgnoreTagStripAll=zm;Me.StripTagBody=Um;Me.stripCommentTag=Hm;Me.stripBlankChar=Gm;Me.cssFilter=Sd;Me.getDefaultCSSWhiteList=Lm;var ja={},Cr=vs;function Qm(t){var e=Cr.spaceIndex(t),r;return e===-1?r=t.slice(1,-1):r=t.slice(1,e+1),r=Cr.trim(r).toLowerCase(),r.slice(0,1)==="/"&&(r=r.slice(1)),r.slice(-1)==="/"&&(r=r.slice(0,-1)),r}function Zm(t){return t.slice(0,2)==="</"}function Km(t,e,r){var a="",i=0,n=!1,s=!1,o=0,l=t.length,d="",u="";e:for(o=0;o<l;o++){var c=t.charAt(o);if(n===!1){if(c==="<"){n=o;continue}}else if(s===!1){if(c==="<"){a+=r(t.slice(i,o)),n=o,i=o;continue}if(c===">"){a+=r(t.slice(i,n)),u=t.slice(n,o+1),d=Qm(u),a+=e(n,a.length,d,u,Zm(u)),i=o+1,n=!1;continue}if(c==='"'||c==="'")for(var f=1,p=t.charAt(o-f);p.trim()===""||p==="=";){if(p==="="){s=c;continue e}p=t.charAt(o-++f)}}else if(c===s){s=!1;continue}}return i<t.length&&(a+=r(t.substr(i))),a}var Jm=/[^a-zA-Z0-9\\_:.-]/gim;function Ym(t,e){var r=0,a=0,i=[],n=!1,s=t.length;function o(f,p){if(f=Cr.trim(f),f=f.replace(Jm,"").toLowerCase(),!(f.length<1)){var h=e(f,p||"");h&&i.push(h)}}for(var l=0;l<s;l++){var d=t.charAt(l),u,c;if(n===!1&&d==="="){n=t.slice(r,l),r=l+1,a=t.charAt(r)==='"'||t.charAt(r)==="'"?r:ey(t,l+1);continue}if(n!==!1&&l===a){if(c=t.indexOf(d,l+1),c===-1)break;u=Cr.trim(t.slice(a+1,c)),o(n,u),n=!1,l=c,r=l+1;continue}if(/\s|\n|\t/.test(d))if(t=t.replace(/\s|\n|\t/g," "),n===!1)if(c=Xm(t,l),c===-1){u=Cr.trim(t.slice(r,l)),o(u),n=!1,r=l+1;continue}else{l=c-1;continue}else if(c=ty(t,l-1),c===-1){u=Cr.trim(t.slice(r,l)),u=yd(u),o(n,u),n=!1,r=l+1;continue}else continue}return r<t.length&&(n===!1?o(t.slice(r)):o(n,yd(Cr.trim(t.slice(r))))),Cr.trim(i.join(" "))}function Xm(t,e){for(;e<t.length;e++){var r=t[e];if(r!==" ")return r==="="?e:-1}}function ey(t,e){for(;e<t.length;e++){var r=t[e];if(r!==" ")return r==="'"||r==='"'?e:-1}}function ty(t,e){for(;e>0;e--){var r=t[e];if(r!==" ")return r==="="?e:-1}}function ry(t){return t[0]==='"'&&t[t.length-1]==='"'||t[0]==="'"&&t[t.length-1]==="'"}function yd(t){return ry(t)?t.substr(1,t.length-2):t}ja.parseTag=Km;ja.parseAttr=Ym;var iy=bs.FilterCSS,Wt=Me,Pd=ja,ay=Pd.parseTag,ny=Pd.parseAttr,qa=vs;function $a(t){return t==null}function sy(t){var e=qa.spaceIndex(t);if(e===-1)return{html:"",closing:t[t.length-2]==="/"};t=qa.trim(t.slice(e+1,-1));var r=t[t.length-1]==="/";return r&&(t=qa.trim(t.slice(0,-1))),{html:t,closing:r}}function oy(t){var e={};for(var r in t)e[r]=t[r];return e}function ly(t){var e={};for(var r in t)Array.isArray(t[r])?e[r.toLowerCase()]=t[r].map(function(a){return a.toLowerCase()}):e[r.toLowerCase()]=t[r];return e}function Ed(t){t=oy(t||{}),t.stripIgnoreTag&&(t.onIgnoreTag&&console.error('Notes: cannot use these two options "stripIgnoreTag" and "onIgnoreTag" at the same time'),t.onIgnoreTag=Wt.onIgnoreTagStripAll),t.whiteList||t.allowList?t.whiteList=ly(t.whiteList||t.allowList):t.whiteList=Wt.whiteList,t.onTag=t.onTag||Wt.onTag,t.onTagAttr=t.onTagAttr||Wt.onTagAttr,t.onIgnoreTag=t.onIgnoreTag||Wt.onIgnoreTag,t.onIgnoreTagAttr=t.onIgnoreTagAttr||Wt.onIgnoreTagAttr,t.safeAttrValue=t.safeAttrValue||Wt.safeAttrValue,t.escapeHtml=t.escapeHtml||Wt.escapeHtml,this.options=t,t.css===!1?this.cssFilter=!1:(t.css=t.css||{},this.cssFilter=new iy(t.css))}Ed.prototype.process=function(t){if(t=t||"",t=t.toString(),!t)return"";var e=this,r=e.options,a=r.whiteList,i=r.onTag,n=r.onIgnoreTag,s=r.onTagAttr,o=r.onIgnoreTagAttr,l=r.safeAttrValue,d=r.escapeHtml,u=e.cssFilter;r.stripBlankChar&&(t=Wt.stripBlankChar(t)),r.allowCommentTag||(t=Wt.stripCommentTag(t));var c=!1;r.stripIgnoreTagBody&&(c=Wt.StripTagBody(r.stripIgnoreTagBody,n),n=c.onIgnoreTag);var f=ay(t,function(p,h,m,y,b){var v={sourcePosition:p,position:h,isClosing:b,isWhite:Object.prototype.hasOwnProperty.call(a,m)},S=i(m,y,v);if(!$a(S))return S;if(v.isWhite){if(v.isClosing)return"</"+m+">";var C=sy(y),F=a[m],O=ny(C.html,function(N,E){var P=qa.indexOf(F,N)!==-1,R=s(m,N,E,P);return $a(R)?P?(E=l(m,N,E,u),E?N+'="'+E+'"':N):(R=o(m,N,E,P),$a(R)?void 0:R):R});return y="<"+m,O&&(y+=" "+O),C.closing&&(y+=" /"),y+=">",y}else return S=n(m,y,v),$a(S)?d(y):S},d);return c&&(f=c.remove(f)),f};var dy=Ed;(function(t,e){var r=Me,a=ja,i=dy;function n(o,l){var d=new i(l);return d.process(o)}e=t.exports=n,e.filterXSS=n,e.FilterXSS=i,(function(){for(var o in r)e[o]=r[o];for(var l in a)e[l]=a[l]})();function s(){return typeof self<"u"&&typeof DedicatedWorkerGlobalScope<"u"&&self instanceof DedicatedWorkerGlobalScope}s()&&(self.filterXSS=t.exports)})(ys,ys.exports);var Ci=ys.exports,uy=function(t){if(typeof t!="object"||t===null||Object.prototype.toString.call(t)!=="[object Object]")return!1;var e=Object.getPrototypeOf(t);if(e===null)return!0;for(;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e},Ld=(function(){function t(e,r){var a=this;this.arcgisWhiteList={a:["href","style","target"],abbr:["title"],article:["style"],aside:["style"],audio:["autoplay","controls","loop","muted","preload"],b:[],blockquote:["style"],br:[],code:["style"],dd:["style"],del:["style"],details:["open","style"],div:["align","aria-hidden","aria-label","style"],dl:["style"],dt:["style"],em:[],figcaption:["style"],figure:["style"],font:["color","face","size","style"],footer:["style"],h1:["style"],h2:["style"],h3:["style"],h4:["style"],h5:["style"],h6:["style"],header:["style"],hr:[],i:[],img:["alt","border","height","src","style","width"],li:[],main:["style"],mark:["style"],nav:["style"],ol:[],p:["style"],pre:["style"],section:["style"],source:["media","src","type"],span:["aria-hidden","aria-label","style"],strong:[],sub:["style"],summary:["style"],sup:["style"],table:["border","cellpadding","cellspacing","height","style","width"],tbody:[],tr:["align","height","style","valign"],td:["align","colspan","height","nowrap","rowspan","style","valign","width"],th:["align","colspan","height","nowrap","rowspan","style","valign","width"],time:["style"],u:[],ul:[],video:["autoplay","controls","height","loop","muted","poster","preload","width"]},this.arcgisCSSWhiteList=Ra(Ra({},Ci.getDefaultCSSWhiteList()),{"align-items":!0,"align-self":!0,flex:!0,"flex-basis":!0,"flex-direction":!0,"flex-flow":!0,"flex-grow":!0,"flex-shrink":!0,"flex-wrap":!0,float:!0,gap:!0,grid:!0,"grid-area":!0,"grid-auto-columns":!0,"grid-auto-flow":!0,"grid-auto-rows":!0,"grid-column":!0,"grid-column-end":!0,"grid-column-start":!0,"grid-row":!0,"grid-row-end":!0,"grid-row-start":!0,"grid-template":!0,"grid-template-areas":!0,"grid-template-columns":!0,"grid-template-rows":!0,"justify-content":!0,"justify-items":!0,"justify-self":!0,"line-height":!0,overflow:!0}),this.allowedProtocols=["http","https","mailto","iform","tel","flow","lfmobile","arcgis-navigator","arcgis-appstudio-player","arcgis-survey123","arcgis-collector","arcgis-workforce","arcgis-explorer","arcgis-trek2there","arcgis-quickcapture","mspbi","comgooglemaps","pdfefile","pdfehttp","pdfehttps","boxapp","boxemm","awb","awbs","gropen","radarscope"],this.arcgisFilterOptions={allowCommentTag:!0,safeAttrValue:function(n,s,o,l){return n==="a"&&s==="href"||(n==="img"||n==="source")&&s==="src"?a.sanitizeUrl(o):Ci.safeAttrValue(n,s,o,l)}},this._entityMap={"&":"&#x38;","<":"&#x3C;",">":"&#x3E;",'"':"&#x22;","'":"&#x27;","/":"&#x2F;"};var i;e&&!r?i=e:e&&r?(i=Object.create(this.arcgisFilterOptions),i.css={whiteList:this.arcgisCSSWhiteList},Object.keys(e).forEach(function(n){if(n==="whiteList")i.whiteList=a._extendObjectOfArrays([a.arcgisWhiteList,e.whiteList||{}]);else if(n==="css"){var s=e.css.whiteList;s!=null&&e.css instanceof Object&&Object.keys(s).forEach(function(o){return i.css.whiteList[o]=s[o]})}else i[n]=e[n]})):(i=Object.create(this.arcgisFilterOptions),i.whiteList=this.arcgisWhiteList,i.css={whiteList:this.arcgisCSSWhiteList}),this.xssFilterOptions=i,this._xssFilter=new Ci.FilterXSS(i)}return t.prototype.sanitize=function(e,r){switch(r===void 0&&(r={}),typeof e){case"number":return isNaN(e)||!isFinite(e)?null:e;case"boolean":return e;case"string":return this._xssFilter.process(e);case"object":return this._iterateOverObject(e,r);default:return r.allowUndefined&&typeof e>"u"?void 0:null}},t.prototype.sanitizeUrl=function(e,r){var a=(r??{}).isProtocolRequired,i=a===void 0?!0:a,n=this._trim(e.substring(0,e.indexOf(":"))),s=e==="/",o=/^#/.test(e),l=n&&this.allowedProtocols.indexOf(n.toLowerCase())>-1;return s||o||l?Ci.escapeAttrValue(e):!n&&!i?Ci.escapeAttrValue("https://".concat(e)):""},t.prototype.sanitizeHTMLAttribute=function(e,r,a,i){return typeof this.xssFilterOptions.safeAttrValue=="function"?this.xssFilterOptions.safeAttrValue(e,r,a,i):Ci.safeAttrValue(e,r,a,i)},t.prototype.validate=function(e,r){r===void 0&&(r={});var a=this.sanitize(e,r);return{isValid:e===a,sanitized:a}},t.prototype.encodeHTML=function(e){var r=this;return String(e).replace(/[&<>"'\/]/g,function(a){return r._entityMap[a]})},t.prototype.encodeAttrValue=function(e){var r=/^[a-zA-Z0-9]$/;return String(e).replace(/[\x00-\xFF]/g,function(a,i){return r.test(a)?a:"&#x".concat(Number(e.charCodeAt(i)).toString(16),";")})},t.prototype._extendObjectOfArrays=function(e){var r={};return e.forEach(function(a){Object.keys(a).forEach(function(i){Array.isArray(a[i])&&Array.isArray(r[i])?r[i]=r[i].concat(a[i]):r[i]=a[i]})}),r},t.prototype._iterateOverObject=function(e,r){var a=this;r===void 0&&(r={});try{var i=!1,n=void 0;if(Array.isArray(e))n=e.reduce(function(o,l){var d=a.validate(l,r);return d.isValid?o.concat([l]):(i=!0,o.concat([d.sanitized]))},[]);else if(uy(e)){var s=Object.keys(e);n=s.reduce(function(o,l){var d=e[l],u=a.validate(d,r);return u.isValid?o[l]=d:(i=!0,o[l]=u.sanitized),o},{})}else return r.allowUndefined&&typeof e>"u"?void 0:null;return i?n:e}catch{return null}},t.prototype._trim=function(e){return String.prototype.trim?e.trim():e.replace(/(^\s*)|(\s*$)/g,"")},t})();function Nd(t){var e,r,a=t.length;if(a===1)e=0,r=t[0][1];else{for(var i=0,n=0,s=0,o=0,l,d,u,c=0;c<a;c++)l=t[c],d=l[0],u=l[1],i+=d,n+=u,s+=d*d,o+=d*u;e=(a*o-i*n)/(a*s-i*i),r=n/a-e*i/a}return{m:e,b:r}}function Dd(t){return function(e){return t.b+t.m*e}}function Bd(t,e){if(t.length<2)return 1;for(var r=0,a=0;a<t.length;a++)r+=t[a][1];for(var i=r/t.length,n=0,s=0;s<t.length;s++)n+=Math.pow(i-t[s][1],2);for(var o=0,l=0;l<t.length;l++)o+=Math.pow(t[l][1]-e(t[l][0]),2);return 1-o/n}var Md=function(){this.totalCount=0,this.data={}};Md.prototype.train=function(e,r){this.data[r]||(this.data[r]={});for(var a in e){var i=e[a];this.data[r][a]===void 0&&(this.data[r][a]={}),this.data[r][a][i]===void 0&&(this.data[r][a][i]=0),this.data[r][a][i]++}this.totalCount++};Md.prototype.score=function(e){var r={},a;for(var i in e){var n=e[i];for(a in this.data)r[a]={},this.data[a][i]?r[a][i+"_"+n]=(this.data[a][i][n]||0)/this.totalCount:r[a][i+"_"+n]=0}var s={};for(a in r){s[a]=0;for(var o in r[a])s[a]+=r[a][o]}return s};var $d=function(){this.weights=[],this.bias=0};$d.prototype.predict=function(e){if(e.length!==this.weights.length)return null;for(var r=0,a=0;a<this.weights.length;a++)r+=this.weights[a]*e[a];return r+=this.bias,r>0?1:0};$d.prototype.train=function(e,r){if(r!==0&&r!==1)return null;e.length!==this.weights.length&&(this.weights=e,this.bias=1);var a=this.predict(e);if(typeof a=="number"&&a!==r){for(var i=r-a,n=0;n<this.weights.length;n++)this.weights[n]+=i*e[n];this.bias+=i}return this};var Qx=607/128,Zx=Math.log(Math.sqrt(2*Math.PI));var Kx=Math.sqrt(2*Math.PI);var cy=Math.sqrt(2*Math.PI);function py(t){for(var e=t,r=t,a=1;a<15;a++)r*=t*t/(2*a+1),e+=r;return Math.round((.5+e/cy*Math.exp(-t*t/2))*1e4)/1e4}var fy=[];for(Wa=0;Wa<=3.09;Wa+=.01)fy.push(py(Wa));var Wa;var lp=Af(qc(),1);var cr="25.0.0",ct="arcgis_charts_pie_from_fields_name",Vt="arcgis_charts_pie_from_fields_value",ub="arcgis_charts_bar_line_from_fields_name",cb="arcgis_charts_bar_line_from_fields_value",sr={Mean:"Mean",Median:"Median",StdDev:"Standard Deviation",Normal:"Normal Distribution",Trendline:"Trendline"},jc={Count:"count",Start:"minValue",End:"maxValue"};function pb(t,e){let r=e.errors[t];throw new Ke(e.modalHeaders.error,r??e.errors.simpleError)}function Yt(t){return t.axes?.[0]?.valueFormat?.type}function ST(t){return t.intlOptions}function tt(t){return t?.type===g.NumberAxisFormat}function wT(t){return tt(t)&&t.intlOptions?.style==="percent"}function or(t){return t?.type===g.CategoryAxisFormat}function Yr(t){return t?.type===g.DateAxisFormat}function xT(t){let{oldConfig:e,newConfig:r,rotationChanged:a}=t;return a?[!0,!0]:[e.horizontalAxisLabelsBehavior!==r.horizontalAxisLabelsBehavior,e.verticalAxisLabelsBehavior!==r.verticalAxisLabelsBehavior]}function fb(t){return tt(t?.[1]?.valueFormat)&&(t?.[2]?.valueFormat===void 0||tt(t[2].valueFormat))}function hb(t){return tt(t?.[1]?.valueFormat)&&(t?.[2]?.valueFormat===void 0||tt(t[2].valueFormat))}function mb(t){return(or(t?.[0]?.valueFormat)||Yr(t?.[0]?.valueFormat))&&tt(t?.[1]?.valueFormat)&&(t?.[2]?.valueFormat===void 0||tt(t[2].valueFormat))}function yb(t){return or(t?.[0]?.valueFormat)&&or(t?.[1]?.valueFormat)||Yr(t?.[0]?.valueFormat)&&or(t?.[1]?.valueFormat)||Yr(t?.[0]?.valueFormat)&&Yr(t?.[1]?.valueFormat)}function gb(t){return(or(t?.[0]?.valueFormat)||Yr(t?.[0]?.valueFormat))&&tt(t?.[1]?.valueFormat)}function bb(t){return tt(t?.[0]?.valueFormat)&&tt(t?.[1]?.valueFormat)}function vb(t){return tt(t?.[0]?.valueFormat)&&tt(t?.[1]?.valueFormat)}function Sb(t){return tt(t?.[0]?.valueFormat)}function CT(t){let{chartType:e,axesConfig:r,errorStrings:a}=t,i,n;switch(e){case g.GaugeSeries:i=Sb,n="invalidValueFormatForGauge";break;case g.ScatterSeries:i=bb,n="invalidValueFormatForScatterplot";break;case g.HistogramSeries:i=vb,n="invalidValueFormatForHistogram";break;case g.LineSeries:i=fb,n="invalidValueFormatForLineChart";break;case g.BarSeries:i=hb,n="invalidValueFormatForBarChart";break;case g.ComboLineAndBarSeries:i=gb,n="invalidValueFormatForComboBarLineChart";break;case g.BoxPlotSeries:i=mb,n="invalidValueFormatForBoxPlot";break;case g.HeatSeries:i=yb,n="invalidValueFormatForHeatChart";break}i!==void 0&&n!==void 0&&(i(r)||pb(n,a))}function wb(t){let{isXAxis:e,chartType:r,valueFormat:a,isAxisForHistogramOverlaySeries:i}=t;return e&&(or(a)||r===g.HistogramSeries&&!i||r===g.BarSeries&&tt(a))}var xb={MonoSelection:"monoSelection",MultiSelection:"multiSelection",MultiSelectionWithCtrlKey:"multiSelectionWithCtrlKey",Zoom:"zoom",None:"none"},TT={MultiAxes:"multi-axes",XAxis:"x-axis",YAxis:"y-axis"},Dr={Reject:"reject",RenderUpToTheLimit:"renderUpToTheLimit"},se={AxisLabels:"axisLabels",GuideLabel:"guideLabel",AxisTitle:"axisTitle",ChartTitle:"chartTitle",ChartSubtitle:"chartSubtitle",DataLabels:"dataLabels",LegendTitle:"legendTitle",LegendText:"legendText",DescriptionText:"descriptionText"},Cb=32,Pr="arcgis_charts_features_extent",me={maxRecordCountFactor:5,maxParallelRequests:4,maxRecords:2e3,orderByJSAPIDelimiter:" ",outStatistics:{statisticType:zi.statisticType,onStatisticField:"OBJECTID",outStatisticFieldName:"arcgis_charts_outStatisticFieldName_default_key"},uniqueIdsName:"arcgisChartsUniqueIds",heatChartLowerBoundaryAlias:"lowerBoundary5x1",heatChartUpperBoundaryAlias:"upperBoundary5x1"},dp=["EXPR_1","Expr1","expr1","EXPR1"],FT=1,pt=.7,Tb=25,up=[156,156,156,255],Fb=[156,156,156,255],IT=gr.Solid,OT=2,mn={defaultGroupOfSlicesId:"arcgis_charts_group_of_slices",sliceIdPrefix:"arcgis-charts-slice-id",undefinedSliceId:"arcgis-charts-slice-id-undefined",nullSliceId:"arcgis-charts-slice-id-null",emptySliceId:"arcgis-charts-slice-id-empty"},Bi="arcgis_charts_box_plot_category",ne={valueField:"arcgis_charts_heat_chart_value",xField:"arcgis_charts_heat_chart_x",yField:"arcgis_charts_heat_chart_y"},AT={min:1,max:10},Ib=[[31,120,180,255],[166,206,227,255],[51,160,44,255],[178,223,138,255],[227,26,28,255],[251,154,153,255],[255,127,0,255],[253,191,111,255],[106,61,154,255],[202,178,214,255]],PT=[[90,180,255,255],[165,220,255,255],[90,215,80,255],[165,245,150,255],[255,80,85,255],[255,170,170,255],[255,165,70,255],[255,205,130,255],[155,110,255,255],[220,195,255,255]],Ob=[[104,104,104,255],[51,124,235,255],[132,0,168,255],[156,156,156,255]],ET=[[104,104,104,255],[51,124,235,255],[175,90,255,255],[156,156,156,255]],LT=[255,255,255,255],NT=[43,43,43,255],DT=[0,122,194,255],BT=[255,255,255,255],MT=[0,0,0,255],cn=[150,150,150,178.5];function Dt(t){let{colorIndex:e,opacity:r,histogramOverlays:a}=t,i=Math.max(0,e??0),n=[...a===!0?Ob:Ib],[s,o,l,d]=n[i%n.length],u=r!==void 0?r*255:d;return[s,o,l,u]}function cp(t){return[0,0,0,(t??pt)*255]}function $T(){return{type:g.CursorCrosshair,verticalLineVisible:!1,horizontalLineVisible:!1,style:{type:we.SLS,style:gr.Dot,color:[211,211,211,255],width:1}}}function wn(t=1){return[Math.floor(Math.random()*256),Math.floor(Math.random()*256),Math.floor(Math.random()*256),t*255]}function ge(t){let e={family:"Arial, Helvetica, sans-serif",size:10};switch(t){case se.ChartTitle:e.size=18;break;case se.AxisTitle:e.size=14;break;case se.LegendText:e.size=12;break;case se.LegendTitle:e.size=13;break;case se.DescriptionText:e.size=11;break}return e}function pp(t="",e=ge(),r){let a=be.Center;return(r===se.DataLabels||r===se.GuideLabel)&&(a=void 0),{type:we.TS,color:cp(),text:t,font:e,horizontalAlignment:a}}function de(t){let{text:e,visible:r,font:a,type:i}=t??{text:"",visible:!0,font:ge()};return{type:g.Text,visible:r,content:pp(e,a,i)}}function la(t){let e=t?.useRandomColor??!1,r=t?.useRampColor,a=t?.width??1,i=t?.isHistogramOverlay,n=t?.color??cp(1);return e?n=wn():r!==void 0&&(i===!0?n=Dt({colorIndex:r.colorIndex,histogramOverlays:i}):n=Dt({colorIndex:r.colorIndex})),t?.opacity!==void 0&&(n[3]=t.opacity),{type:we.SLS,style:gr.Solid,color:n,width:a}}function Ab(){return{type:g.CategoryAxisFormat,characterLimit:11}}function qT(){return{type:g.DateAxisFormat,intlOptions:{}}}function Zs(){return{type:g.NumberAxisFormat,intlOptions:{style:"decimal",minimumFractionDigits:0,maximumFractionDigits:3,useGrouping:!0}}}function RT(){return{type:g.NumberAxisFormat,intlOptions:{style:"decimal",minimumFractionDigits:0,maximumFractionDigits:2}}}function kT(){return{type:g.NumberAxisFormat,intlOptions:{style:"percent",minimumFractionDigits:0,maximumFractionDigits:0}}}function zs(t="Category Axis"){let e=de({text:t,visible:!0,font:ge(se.AxisTitle)});e.content.horizontalAlignment=be.Center,e.content.verticalAlignment=Le.Middle;let r=de({text:t,visible:!0,font:ge(se.AxisLabels)});return{type:g.Axis,visible:!0,title:e,labels:r,valueFormat:Ab(),lineSymbol:la({color:up})}}function pn(t="Value Axis"){let e=de({text:t,visible:!0,font:ge(se.AxisTitle)}),r=de({text:t,visible:!0,font:ge(se.AxisLabels)});return e.content.verticalAlignment=Le.Middle,e.content.horizontalAlignment=be.Center,{type:g.Axis,visible:!0,title:e,labels:r,valueFormat:Zs(),lineSymbol:la({color:up})}}function Br(){return{type:g.Legend,visible:!0,title:de({text:"",visible:!0,font:ge(se.LegendTitle)}),body:pp("",ge(se.LegendText)),position:_i.Right}}function on(t){return{type:g.Overlay,visible:!0,created:!1,symbol:la({useRampColor:{colorIndex:t},isHistogramOverlay:!0})}}function Mr(){return[255,255,255,255]}function pr(t){return t.utilsStrings.chartType.chart}function fr(){return`Chart ${Date.now()}`}function jT(t,e=!1){return{type:we.SFS,style:Zt.Solid,color:e?wn(pt):Dt({colorIndex:t??0,opacity:pt})}}function Pb(t=0){return{type:we.SMS,style:Qt.Circle,color:Dt({colorIndex:t,opacity:pt}),size:5}}function Eb(t){return{type:we.SLS,style:gr.Solid,color:Dt({colorIndex:t,opacity:pt}),width:2}}function Lb(t=!1){return{type:we.SMS,style:Qt.Circle,color:t?wn(pt):Dt({colorIndex:0,opacity:pt}),size:7}}function WT(){return{type:g.SizePolicy,field:"",scaleType:qo.Linear,minSize:5,maxSize:30}}function Nb(t=!1){return{type:g.Overlays,trendLine:{type:g.Overlay,created:!1,visible:!0,symbol:{type:we.SLS,style:gr.Solid,color:t?wn():Dt({colorIndex:1}),width:2}}}}function Db(t,e){let r=t.countSeries;return{type:g.HeatSeries,id:r,name:r,y:"",x:"",dataLabels:de({text:"",visible:!1,font:ge(se.DataLabels)}),query:{outStatistics:[{statisticType:j.Count,onStatisticField:e??"ObjectID",outStatisticFieldName:`${j.Count}_${e}_0`.toUpperCase()}],groupByFieldsForStatistics:[]},emptyCells:{symbol:{type:we.SFS,style:Zt.Solid,color:cn},text:t.utilsStrings.null}}}function Bb(){return{type:g.ScatterSeries,id:g.ScatterSeries,name:g.ScatterSeries,x:"",y:"",markerSymbol:Lb(),overlays:Nb(),dataLabels:de({text:"",visible:!1,font:ge(se.DataLabels)})}}function ei(t,e){let r=[],a=t.xAxis,i=t.utilsStrings.statistics.count,n,s,o=la({opacity:Tb});switch(e===g.HeatSeries?s=zs(i):(s=pn(i),s.grid=o),e){case g.BarSeries:case g.HeatSeries:{n=zs(a);break}case g.ScatterSeries:{n=pn(a),n.grid=o;break}case g.RadarSeries:case g.LineSeries:case g.HistogramSeries:{n=pn(a);break}case g.BoxPlotSeries:{n=zs("");break}}return n!==void 0&&r.push(n,s),r}function Mb(){return{type:g.GaugeNeedle,symbol:{type:we.SFS,color:[0,0,0,200]}}}function $b(t){let e=[],r=t.xAxis,a=pn(r);return a.needle=Mb(),e.push(a),e}function qb(t){let e=t.commonStrings,r=t.objectIDField??"ObjectID",a=`${j.Count}_${r}_0`.toUpperCase(),i=e.countSeries;return{type:g.LineSeries,id:i,name:i,query:{outStatistics:[{statisticType:j.Count,onStatisticField:r,outStatisticFieldName:a}],groupByFieldsForStatistics:[]},x:"",y:a,lineSymbol:Eb(t.seriesIndex),markerSymbol:Pb(t.seriesIndex),dataLabels:de({text:"",visible:!1,font:ge(se.DataLabels)}),temporalBinning:{unit:G.Day,size:0,timeAggregationType:$e.Start,trimIncompleteTimeInterval:!0,nullPolicy:dt.Interpolate}}}function VT(t){return{...qb(t),type:g.RadarSeries}}function Rb(t){return{type:we.SFS,style:Zt.Solid,color:Dt({colorIndex:t,opacity:pt})}}function _T(t){let e=t.objectIDField??"*",r=t.commonStrings,a=`${j.Count}_Y_0`.toUpperCase(),i=r.countSeries;return{type:g.BarSeries,id:i,name:i,query:{outStatistics:[{statisticType:j.Count,onStatisticField:e,outStatisticFieldName:a}],groupByFieldsForStatistics:[]},x:"",y:a,fillSymbol:Rb(t.seriesIndex),dataLabels:de({text:"",visible:!1,font:ge(se.DataLabels),type:se.DataLabels})}}function zT(t,e){let r=t.countSeries;return{name:r,type:g.BoxPlotSeries,id:r,fillSymbol:{type:we.SFS,style:Zt.Solid,color:Dt({colorIndex:e,opacity:pt})},query:{},x:Bi,y:""}}function kb(){return{type:g.PieTick,visible:!0,lineSymbol:la({width:1,color:Fb})}}function jb(){return{type:we.SFS,style:Zt.Solid}}function UT(t,e){let r=`${j.Count}_${e}_0`.toUpperCase(),a=t.countSeries;return{type:g.PieSeries,id:a,name:a,query:{outStatistics:[{statisticType:j.Count,onStatisticField:e??"ObjectID",outStatisticFieldName:r}],groupByFieldsForStatistics:[]},x:"",y:r,fillSymbol:jb(),dataLabels:de({text:"",visible:!1,font:ge(se.DataLabels),type:se.DataLabels}),startAngle:-90,endAngle:270,dataLabelsCharacterLimit:11,displayCategoryOnDataLabel:!0,displayNumericValueOnDataLabel:!1,displayPercentageOnDataLabel:!0,numericValueFormat:{...Zs(),intlOptions:{minimumFractionDigits:1,maximumFractionDigits:1}},percentValueFormat:{...Zs(),intlOptions:{minimumFractionDigits:1,maximumFractionDigits:1}},ticks:kb()}}function HT(t){let e=t.objectIDField??"ObjectID",r=`${j.Count}_${e}_0`.toUpperCase(),a="Series0";return{type:g.GaugeSeries,id:a,name:a,query:{outStatistics:[{statisticType:j.Count,onStatisticField:e,outStatisticFieldName:r}]},x:""}}function ra(){return!1}function GT(t,e=fr()){return{version:cr,type:g.Chart,id:e,colorMatch:!0,rotated:ra(),orderOptions:{data:{orderType:ut.Category,orderBy:je.Ascending}},title:de({text:pr(t),visible:!0,font:ge(se.ChartTitle)}),subtitle:de(),footer:de({text:"",visible:!0,font:ge(se.DescriptionText)}),background:Mr(),axes:ei(t,g.BarSeries),series:[],legend:Br()}}function QT(t,e=fr()){return{version:cr,type:g.Chart,id:e,rotated:ra(),colorMatch:!0,orderOptions:{data:{orderType:ut.Category,orderBy:je.Ascending}},title:de({text:pr(t),visible:!0,font:ge(se.ChartTitle)}),subtitle:de(),footer:de({text:"",visible:!0,font:ge(se.DescriptionText)}),background:Mr(),series:[],legend:Br(),axes:ei(t,g.BoxPlotSeries),standardizeValues:!0,showOutliers:!1}}function ZT(t,e=fr()){return{version:cr,type:g.Chart,id:e,colorMatch:!0,rotated:ra(),orderOptions:{data:{orderType:ut.Category,orderBy:je.Ascending}},title:de({text:pr(t),visible:!0,font:ge(se.ChartTitle)}),subtitle:de(),footer:de({text:"",visible:!0,font:ge(se.DescriptionText)}),background:Mr(),axes:ei(t,g.LineSeries),series:[],legend:Br()}}function KT(t,e=fr()){return{version:cr,type:g.Chart,id:e,colorMatch:!0,orderOptions:{data:{orderType:ut.Category,orderBy:je.Ascending}},title:de({text:pr(t),visible:!0,font:ge(se.ChartTitle)}),subtitle:de(),footer:de({text:"",visible:!0,font:ge(se.DescriptionText)}),background:Mr(),axes:ei(t,g.RadarSeries),series:[],legend:Br()}}function JT(t,e=fr()){return{version:cr,type:g.Chart,id:e,colorMatch:!0,orderOptions:{data:{orderType:ut.YValue,orderBy:je.Descending}},title:de({text:pr(t),visible:!0,font:ge(se.ChartTitle)}),subtitle:de(),footer:de({text:"",visible:!0,font:ge(se.DescriptionText)}),background:Mr(),series:[],legend:{...Br(),displayNumericValue:!1,displayPercentage:!0}}}function YT(t,e=fr()){return{version:cr,type:g.Chart,id:e,colorMatch:!0,title:de({text:pr(t),visible:!0,font:ge(se.ChartTitle)}),series:[],axes:$b(t)}}function XT(t,e=fr()){return{version:cr,type:g.Chart,id:e,colorMatch:!0,title:de({text:pr(t),visible:!0,font:ge(se.ChartTitle)}),subtitle:de(),footer:de({text:"",visible:!0,font:ge(se.DescriptionText)}),background:Mr(),axes:ei(t,g.ScatterSeries),series:[Bb()],legend:Br()}}function eF(t,e){return{version:cr,type:g.Chart,id:fr(),title:de({text:pr(t),visible:!0,font:ge(se.ChartTitle)}),background:Mr(),axes:ei(t,g.HeatSeries),series:[Db(t,e)],legend:{...Br(),position:_i.Bottom}}}function Wb(){return{type:g.Overlays,mean:on(1),median:on(2),standardDeviation:on(3),comparisonDistribution:on(4)}}function Vb(){return{type:we.SFS,style:Zt.Solid,color:Dt({colorIndex:0,opacity:pt})}}function _b(){return{type:g.HistogramSeries,id:g.HistogramSeries,name:g.HistogramSeries,visible:!0,dataTooltipVisible:!0,dataTooltipReverseColor:!1,assignToSecondValueAxis:!1,x:"",binCount:32,overlays:Wb(),dataTransformationType:Ae.None,fillSymbol:Vb(),dataLabels:de({text:"",visible:!1,font:ge(se.DataLabels)})}}function tF(t,e=fr()){return{version:cr,type:g.Chart,id:e,colorMatch:!0,title:de({text:pr(t),visible:!0,font:ge(se.ChartTitle)}),subtitle:de(),footer:de({text:"",visible:!0,font:ge(se.DescriptionText)}),background:Mr(),axes:ei(t,g.HistogramSeries),series:[_b()],legend:Br()}}var Us={behaviorAfterLimit:Dr.Reject,maxCategoryCount:Number.NaN,maxBarChartSeriesCount:100,maxBarUniqueSeriesCountTotal:1e4,maxBarTwoSeriesCountPerSeries:1e3,maxBarTwoSeriesCountTotal:2e3,maxBarThreePlusSeriesCountPerSeries:100,maxBarThreePlusSeriesCountTotal:2e3,maxScatterPointsBeforeAggregation:1e4,maxScatterPointsAfterAggregation:1e4,maxLineChartSeriesCount:100,maxLineUniqueSeriesCountTotal:1e4,maxLineTwoSeriesCountPerSeries:5e3,maxLineTwoSeriesCountTotal:1e4,maxLineThreePlusSeriesCountPerSeries:1e3,maxLineThreePlusSeriesCountTotal:1e4,maxPieChartSliceCountTotal:300,maxGaugeByFeaturesLimit:50,maxBoxPlotSeriesCount:100,maxBoxUniqueSeriesCountTotal:1e4,maxBoxTwoSeriesCountPerSeries:1e3,maxBoxTwoSeriesCountTotal:2e3,maxBoxThreePlusSeriesCountPerSeries:100,maxBoxThreePlusSeriesCountTotal:2e3,maxBoxPlotOutlierLimit:1e4,maxHeatChartCellLimit:1e4};function ti(t){let e={...Us};return t!==void 0&&Object.keys(Us).forEach(r=>{let a=r;e[a]=t[a]??Us[a]}),e}function xn(){return{maxScatterCellsPerQuery:500,maxScatterCellsPerQueryForStandard:175,maxElementsPerSelectionQuery:25,maxOIDsPerSelectionQuery:2e3,maxOperandsPerWhereClause:50}}function rF(t,e){let r;switch(t){case j.Average:{r=e.utilsStrings.statistics.mean;break}case j.ContinuousPercentile:{r=e.utilsStrings.statistics.median;break}case j.Sum:{r=e.utilsStrings.statistics.sum;break}case j.Minimum:{r=e.utilsStrings.statistics.minimum;break}case j.Maximum:{r=e.utilsStrings.statistics.maximum;break}case j.Variance:{r=e.utilsStrings.statistics.variance;break}case j.DiscretePercentile:{r=e.utilsStrings.statistics.discretePercentile;break}case j.NoAggregation:{r=e.utilsStrings.statistics.noAggregation;break}case j.Count:default:{r=e.utilsStrings.statistics.count;break}}return r}function iF(t,e){let r;switch(t){case $e.End:{r=e.timeAggregationTypes.end;break}case $e.Start:{r=e.timeAggregationTypes.start;break}default:r="";break}return r}function zb(){return bt.Side}function aF(t){return t.utilsStrings.notAvailable}var Ub=0,Hb="_arcgis_charts_outliers",Gb="_arcgis_charts_z_score",nF=[210,210,210,255*pt],sF=" percentage ";var A={aria:{defaultChartItemRole:"figure"},title:{marginBottom:8,wrap:!0},subtitle:{marginBottom:10,wrap:!0},rotated:!1,legendProperties:{legendLabels:{marginLeft:5,marginRight:5,truncate:!1,applyOnClones:!0,wrap:!0,maxWidth:200},valueLabels:{wrap:!0,maxWidth:200},legendTitle:{wrap:!0,maxWidth:220,marginLeft:10,marginRight:10,marginTop:10},legendMarkersSize:14,legendLabelReducedOpacity:.5,rectangleMarkerRadius:3,roundedMarkerRadius:12,legendPaddingRightWithScrollbarVisible:10,maxHeight:100,marginTop:2,marginBottom:2,marginLeft:0,marginRight:0,paddingTop:0,paddingBottom:0,paddingLeft:0,paddingRight:0,position:_i.Right},footer:{wrap:!0,horizontalCenter:be.Center,verticalCenter:Le.Middle,align:be.Center},axisLabel:{rotation:0,align:be.Center,horizontalCenter:be.Center,verticalCenter:Le.Top,dy:5,paddingTop:5,paddingRight:5,paddingLeft:5,maxWidth:Number.NaN},axisTickLength:5,rotatedAxisLabel:{rotation:-45,horizontalCenter:be.Left,verticalCenter:Le.Bottom,dy:6,paddingTop:5,paddingLeft:0,paddingRight:5},histogramAxisLabel:{rotation:0,horizontalCenter:be.Center,verticalCenter:Le.Middle,dy:0,dx:0,paddingLeft:3,paddingRight:3},xAxisTitleLabel:{align:be.Center,valign:Le.Middle,rotation:0,fontSize:10,wrap:!0},yAxisTitleLabel:{align:be.Center,valign:Le.Middle,rotation:270,wrap:!0},titleLabel:{align:be.Center,wrap:!0},subtitleLabel:{align:be.Center,wrap:!0},horizontalSurfaceGuideLabels:{horizontalCenter:be.Right,align:be.Right,verticalCenter:Le.Middle,wrap:!0},horizontalLineGuideLabels:{horizontalCenter:be.Right,align:be.Right,verticalCenter:Le.Top,wrap:!0},verticalSurfaceGuideLabels:{horizontalCenter:be.Center,verticalCenter:Le.Top,valign:Le.Top},verticalLineGuideLabels:{horizontalCenter:be.Right,verticalCenter:Le.Bottom,valign:Le.Top,wrap:!0,rotation:90},guideAbove:!1,cursorCrosshair:{style:{type:we.SLS,style:gr.Dash,color:[0,0,0,102],width:1},horizontalLineVisible:!1,verticalLineVisible:!1},gauge:{innerRadius:80,radius:80,startAngle:-180,endAngle:180,innerLabelToInnerChartRatio:.5,axisLabelToInnerChartRatio:.13,innerLabelAutoMinFontSize:14,innerLabelAutoMaxFontSize:100,axisLabelAutoMinFontSize:14,axisLabelAutoMaxFontSize:40,gaugeMinGridDistance:1,axisMinimum:0,axisMaximum:100,numberOfLabelIntervals:5,numberOfTicksBetweenTwoLabels:4,maximumNumberOfLabelIntervals:24,paddingTop:10,paddingBottom:10,paddingRight:5,paddingLeft:5},gaugeTicksLength:7,gaugeInnerLabel:{horizontalCenter:be.Center,verticalCenter:Le.Middle},gaugeNeedle:{startWidth:10,endWidth:1,innerRadius:25,displayPin:!1},gaugeFirstLabelId:"arcgis_charts_gauge_first_label",gaugeLastLabelId:"arcgis_charts_gauge_last_label",headerContainer:{layout:"vertical",width:"100%",paddingBottom:5},footerContainer:{layout:"vertical",width:"100%",paddingTop:5,paddingBottom:15},paddingMinSize:0,marginMinSize:0,chartPaddingMinSize:7,chartPaddingRightWhenLegendNotOnRight:15,chartAndLegendContainer:{paddingTop:0},chartContainer:{paddingBottom:0,paddingTop:15},chartContainerPaddingTopWhenRotated:5,dataLabelInitialize:{strokeWidth:0,applyOnClones:!0},dataLabel:{align:be.Center,horizontalCenter:be.Center,valign:Le.Bottom,verticalCenter:Le.Top,dy:-3},dataLabelRotated:{align:be.Right,horizontalCenter:be.Right,valign:Le.Middle,verticalCenter:Le.Middle,dx:2},dataLabelStackedRotated:{align:be.Center,horizontalCenter:be.Center,valign:Le.Middle,verticalCenter:Le.Middle},dataLabelStackedNonRotated:{align:be.Center,horizontalCenter:be.Center,valign:Le.Middle,verticalCenter:Le.Middle},dataLabelNegative:{paddingTop:5,paddingRight:5},rotatedChartPadding:{paddingTop:2,paddingRight:2},scatterplotSeries:{strokeOpacity:0,r2:Number.NaN,trendLinePoints:[{},{}]},histogramSeries:{normalDistribNumberOfPoints:100},lineSeries:{strokeWidth:2,lineSmoothed:!1,lineSmoothedKind:Bo.Bezier,showArea:!1,areaOpacity:.25,markerVisible:!0,rotated:!1,stackedType:bt.Side,stackNegativeValuesToBaseline:!0,marker:{markerBigSize:7,markerSizeThresholdForTooltipDisplay:5,markerStyle:Qt.Circle}},buffer:!1,treatZeroValueAs:1e-4,elementLimitForSmoothRendering:1e3,defaultStatParameterValue:.5,pieChart:{dataLabels:{maxWidth:100,wrap:!1},dataLabelsOffset:10,dataLabelsInside:!1,chartRadius:80,chartOptimizedRadius:70,innerRadius:Ub,min:-90,max:270,displayCategoryOnLegend:!0,displayCategoryOnTooltip:!0,displayCategoryOnDataLabel:!0,displayNumericValueOnLegend:!1,displayNumericValueOnDataLabel:!0,displayNumericValueOnTooltip:!0,displayPercentageOnLegend:!1,displayPercentageOnDataLabel:!1,displayPercentageOnTooltip:!0,sliceGrouping:{sliceId:mn.defaultGroupOfSlicesId,percentageThreshold:0,fillSymbol:{type:we.SFS,color:[210,210,210,255*pt]}},defaultPadding:0,alignDataLabels:!1,ticksOpacity:1,minimumSize:20,technicalFieldSliceId:"arcgis_charts_slice_id",technicalFieldSlicePercent:"arcgis_charts_slice_percent",technicalFieldGroupedSlices:"arcgis_charts_grouped_slices"},pieSliceCustomLabelName:"customLabel",yAxisLabelMaxWidth:100,xAxisLabelMaxWidth:75,axisLabelPadding:1.5,categoryAxisLabelPadding:3,seriesSort:je.Ascending,technicalSortingFieldBySum:"arcgis_charts_category_sum",technicalSortingFieldByPercent:"arcgis_charts_category_first_series_percent",technicalFieldSplitByField:"arcgis_charts_split_by_field",color:[0,0,0,255],chartEllipsis:"...",backgroundColor:[255,255,255,255],grayColor:cn,xAxisMinGridDistance:120,xCategoryAxisMinGridDistance:40,yAxisMinGridDistance:40,yCategoryAxisMinGridDistance:20,secondRotatedValueAxisMinGridDistance:80,staggerMinGridDistance:40,shortestMinGridDistance:20,maxNumberOfXAxisLabelsInWrapModeForDateAxis:15,maxNumberOfXAxisLabelsInWrapMode:20,lineWidth:1,loaderRotationSpeed:400,loaderIntervalTimeout:400,loaderLabelFontSize:20,selectionTheme:{selectedElementsTheme:{elementOutlineColor:[0,255,255,255],elementOutlineWidth:5}},columnTooltipPosition:"pointer",guideTooltipPosition:"pointer",markerTooltipPosition:"fixed",sliceTooltipPosition:"fixed",patternLineProperties:{width:5,height:5,strokeWidth:1,tileSize:50,diagonalTileSize:1200},patternRectProperties:{rectWidth:9,rectHeight:9,width:10,height:10,strokeWidth:.3,fillOpacity:0},originalCategoryValue:"arcgis_charts_original_category_value",originalYCategoryValue:"arcgis_charts_original_category_y_value",originalDateValue:"arcgis_charts_original_date_value",dateBinningRange:"arcgis_charts_bin_range",originalServerBinningRange:"arcgis_charts_server_bin_range",dateBinModel:"arcgis_charts_bin_model",xAxisField:"arcgis_charts_axis_field",nullValue:"arcgis_charts_null",queryMaxFloatPrecision:10,dateFormatUTC:{timeZone:"UTC",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",hour12:!1},dayDefaultFormat:{day:"numeric",month:"short"},weekDefaultFormat:{day:"numeric",month:"short"},rendererOtherValue:"arcgisChartsrendererOtherValue",rendererSymbolField:"arcgis_charts_renderer_symbol",rendererSymbolFieldForHistogram:"symbol",scatterplotAggregationFields:{dataContextXMinField:"arcgis_charts_xmin",dataContextXMaxField:"arcgis_charts_xmax",dataContextYMinField:"arcgis_charts_ymin",dataContextYMaxField:"arcgis_charts_ymax",dataContextCountDistinctX:"distinctX",dataContextCountDistinctY:"distinctY",queryNumberOfFeatures:"numberOfFeatures",queryNumberOfAggregatedFeatures:"numberOfAggregatedFeatures",xStep:"xStep",yStep:"yStep",rowCount:"rowCount",columnCount:"columnCount",realGridSize:"realGridSize"},dataTooltipVisible:!0,dataTooltipStyle:{outline:{type:we.SLS,color:[255,255,255,255],width:1}},dataTooltipStyleReversed:{color:[255,255,255,255],outline:{type:we.SLS,width:3}},tooltipWidth:300,axisLabelOveredOpacity:.5,generalFontSize:10,actionMode:xb.MultiSelectionWithCtrlKey,debounceTime:100,chartDefaultPaddingRight:0,htmlEmptyContent:"<p></p>",boxPlot:{boxPlotCategory:"arcgis_charts_box_plot_category",boxPlotOutliersSuffix:"_arcgis_charts_outliers",boxPlotOutliersVisibility:!1,boxPlotStandardizeValuesVisibility:!1,boxPlotOutliersSize:4,boxPlotLineWidth:2,boxPlotOutlierId:"is_arcgis_charts_outlier",boxPlotMeanLineMarkerId:"is_arcgis_charts_mean_marker",boxPlotWhiskersColor:[153,153,153,178.5],boxPlotTooltipLabelWidth:250},binTemporalData:!0,lastTemporalBin:"is_arcgis_charts_last_bin",options:{hideEmptySeries:!0,replaceNoValueCategoryWithZero:!0,autoInverseDataLabelTextColor:!1},nullCategory:{text:"null",symbol:{type:we.SFS,color:cn,outline:{type:we.SLS,style:gr.Solid,color:cn,width:1}}},classBreaks:{breaksCount:5}},ri={LegendItemVisibilityChange:"arcgisChartsJSLegendItemVisibilityChange",RenderingComplete:"arcgisChartsJSRenderingComplete",SeriesColorsChange:"arcgisChartsJSSeriesColorChange",AxesMinMaxChange:"arcgisChartsJSAxesMinMaxChange",SelectionComplete:"arcgisChartsJSSelectionComplete",TooManySelectedElements:"arcgisChartsJSTooManySelectedElements",SeriesOrder:"arcgisChartsJSSeriesOrder"};function ii(t){return{detail:t,composed:!0,cancelable:!0,bubbles:!0}}function oF(t,e){e&&e.dispatchEvent(new window.CustomEvent(ri.LegendItemVisibilityChange,ii(t)))}function lF(t){t&&t.dispatchEvent(new window.CustomEvent(ri.RenderingComplete,ii()))}function dF(t){let{data:e,htmlContainer:r}=t;r&&r.dispatchEvent(new window.CustomEvent(ri.SelectionComplete,ii(e)))}function uF(t){t&&t.dispatchEvent(new window.CustomEvent(ri.TooManySelectedElements,ii()))}function cF(t){let{data:e,htmlContainer:r,chartId:a,colorMatchApplied:i}=t;r&&r.dispatchEvent(new window.CustomEvent(ri.SeriesColorsChange,ii({chartId:a,data:e,colorMatchApplied:i})))}function pF(t,e){e&&e.dispatchEvent(new window.CustomEvent(ri.AxesMinMaxChange,ii(t)))}function Qb(t){let{data:e,htmlContainer:r}=t;r&&e&&r.dispatchEvent(new window.CustomEvent(ri.SeriesOrder,ii(e)))}function Zb(t){return t!==void 0&&t!==Zt.Solid&&t!==Zt.Null}function fF(t,e){let r="",a=(e??0)/2,i=0-a,n=0+a,s=0-a,o=0+a;switch(t){case Qt.Circle:r=`M ${i},0 a ${a},${a} 0 1,0 ${a*2},0 a ${a},${a} 0 1,0 ${-a*2},0`;break;case Qt.Cross:r=`M ${i},0 L ${n},0 M 0,${s} L 0,${o} E`;break;case Qt.Diamond:r=`M ${i},0 L 0,${s} L ${n},0 L 0,${o} L ${i},0 Z`;break;case Qt.Square:r=`M ${i},${o} L ${i},${s} L ${n},${s} L ${n},${o} L ${i},${o} Z`;break;case Qt.Triangle:r=`M ${i},${o} L 0,${s} L ${n},${o} L ${i},${o} Z`;break;case Qt.X:r=`M ${i},${o} L ${n},${s} M ${i},${s} L ${n},${o} E`;break}return r}var Oi={...A,titleAndSubtitlePaddingBottom:5,chartPadding:5,footerContainer:{...A.footerContainer,paddingTop:0,paddingBottom:0},headerContainer:{...A.headerContainer,paddingBottom:18},chartContainer:{...A.chartContainer},dataLabel:{...A.dataLabel,verticalCenter:"bottom"},scrollbarPadding:12,zIndexes:{guide:100,scatterplotTrendLine:2,bulletMarkers:1,axisLineLayer:30},verticalSurfaceGuideLabels:{wrap:!0},verticalLineGuideLabels:{wrap:!0,rotation:90},horizontalSurfaceGuideLabels:{wrap:!0},horizontalLineGuideLabels:{wrap:!0},overlayId:{scatterplotTrendLine:"arcgis_charts_scatter_plot_trendline",histogramMean:"arcgis_charts_histogram_mean",histogramMedian:"arcgis_charts_histogram_median",histogramStdDev:"arcgis_charts_histogram_std_dev",histogramNormalDistribution:"arcgis_charts_histogram_normal_distribution"},axisLabelSpacing:{verticalAxisLabelSidePadding:8,horizontalAxisLabelPaddingTop:6},legendPadding:20,heatChart:{gradientHeatRules:{minColor:[255,255,200,255],maxColor:[255,0,0,255],outsideRangeLowerColor:[250,250,250,255],outsideRangeUpperColor:[0,0,255,255]},legend:{position:_i.Bottom,chartPadding:40,legendPadding:20,width:70,bottomHeight:20,topHeight:50,titleHeight:10,titlePadding:10,minMaxLabelPadding:3},emptyCells:{symbol:{type:we.SFS,style:Zt.Solid,color:A.grayColor},text:"null"},includeLeapDay:!1},heatChartLabelPadding:{paddingTop:2},heatChartFirstDayOfWeek:7,pieChartDataLabel:{minWidth:30},focusableThreshold:500};function Kb(t){let e;return t?.[0]!==void 0&&(e=t.reduce((r,a)=>({...r,xmin:Math.min(r.xmin,a.xmin),xmax:Math.max(r.xmax,a.xmax),ymin:Math.min(r.ymin,a.ymin),ymax:Math.max(r.ymax,a.ymax)}),t[0])),e}function ia(t){let{value:e,dataContext:r,specificField:a,keepNullValues:i=!1,useRendererLabel:n=!1,config:s}=t,o=e,{originalCategoryValue:l,originalDateValue:d}=A;if(r!==void 0){let u=n?cv(r):void 0;a!==void 0&&r[a]!==void 0?o=r[a]:u!==void 0?o=u:r[d]!==void 0?o=r[d]:r[l]!==void 0?o=r[l]:r[ct]!==void 0&&(o=r[ct]),!i&&o===null&&(o="null",s?.series?.[0].type===g.BarSeries&&(o=s.series?.[0]?.nullCategory?.text??Oi.nullCategory?.text??o))}return o}function Jb(t){return t?.[A.originalCategoryValue]}function aa(t){let{arrayToSort:e,orderBy:r,sortingField:a,forceAscendingOrder:i,isNonAggregated:n,sortByCategory:s,preferLabel:o,isPieOrByFieldsChart:l}=t;if(e!==void 0&&e.length>1){let d=r===je.Descending&&i!==!0;e.sort((u,c)=>{let f=0,p=u[a];s===!0&&!l&&(p=ia({value:`${u[a]?.toString()}`,dataContext:u,specificField:o?A.xAxisField:void 0}));let h=c[a];return s===!0&&!l&&(h=ia({value:`${c[a]?.toString()}`,dataContext:c,specificField:o?A.xAxisField:void 0})),n===!0&&d&&s===!0&&(p=Number.isNaN(Number.parseFloat(`${p?.toString()}`))?p:Number.parseFloat(p),h=Number.isNaN(Number.parseFloat(`${h?.toString()}`))?h:Number.parseFloat(h)),s===!0&&(u[A.originalCategoryValue]===null||p===null)||u[mn.defaultGroupOfSlicesId]===!0?f=1:s===!0&&(c[A.originalCategoryValue]===null||h===null)||c[mn.defaultGroupOfSlicesId]===!0?f=-1:typeof p=="string"&&typeof h=="string"?(f=p.localeCompare(h,void 0,{numeric:!0}),d&&(f*=-1)):p===void 0?f=d?-1:1:h===void 0?f=d?1:-1:p!==null&&h!==null&&(p>h?f=d?-1:1:p<h&&(f=d?1:-1)),f})}}function Yb(t){let{arrayToSort:e,orderBy:r,sortingField:a,fieldList:i,isByFieldsChart:n,preferLabel:s}=t;e!==void 0&&e.length>1&&!Ue(a)&&r!==void 0&&r.length>0&&e.sort((o,l)=>{let d=o[a];s&&n&&typeof d=="string"&&(d=Xs(i,d));let u=r.indexOf(d?.toString()??"");u===-1&&(u=r.length);let c=l[a];s&&n&&typeof c=="string"&&(c=Xs(i,c));let f=r.indexOf(c?.toString()??"");return f===-1&&(f=r.length),u-f})}function fp(t){let{statsMap:e,dataContext:r,chartLimits:a}=t,i=!1;if(e!==void 0){let{maxScatterPointsBeforeAggregation:n}=ti(a),{queryNumberOfFeatures:s}=A.scatterplotAggregationFields;i=(e.get(s)??Number.NaN)>=n}else r!==void 0&&(i=A.scatterplotAggregationFields.dataContextXMinField in r);return i}function Xb(t){let e=!0,r=K(t.series);if(r===g.BarSeries||r===g.LineSeries||r===g.ComboLineAndBarSeries){let a=X(t.series);e=a!==x.BarAndLineNoAggregation&&a!==x.BarAndLineSplitByNoAggregation}return e}function ev(t){return X(t.series)!==x.PieNoAggregation}function tv(t){let{dataContext:e,chartConfig:r,chartLimits:a}=t,i=!0;if(r!==void 0)switch(K(r.series)){case g.BarSeries:case g.LineSeries:case g.ComboLineAndBarSeries:i=Xb(r);break;case g.ScatterSeries:i=fp({dataContext:e,chartLimits:a});break;case g.PieSeries:i=ev(r);break}return i}function rv(t,e){let r=t;switch(e){case Ae.Log:r=`log(${t})`;break;case Ae.Sqrt:r=`power(CAST(${t} AS FLOAT),0.5)`;break}return r}function Ai(t){let e=new Date(t).valueOf();return Number.isNaN(e)||(e=new Intl.DateTimeFormat("en-US",A.dateFormatUTC).format(t).replace(",","")),e}function yn(t){let{dataToConvert:e,x:r,y:a,fieldList:i}=t,n=[];if(e){let s=e[Pr];Object.entries(e).forEach(([o])=>{if(o!==""&&o!==Pr&&o in e){let l={[r]:Xs(i,o),[a]:e[o],[A.xAxisField]:o,[A.originalCategoryValue]:o};s!==void 0&&(l[Pr]=s),e[`${A.rendererSymbolField}_${o}`]!==void 0&&(l[A.rendererSymbolField]=e[`${A.rendererSymbolField}_${o}`]),n.push(l)}})}return n}function iv(t,e){let r=!0;if(t!==void 0&&t.length>1&&!Ue(e)){let a=0,i=0,n=0;t.forEach(s=>{let o=s[e];!Ev(o)||o===0?n+=1:o>0?a+=1:i+=1}),r=n===t.length||a>=0&&i===0||a===0&&i>=0}return r}function ln(t){let{countTotal:e,countPerSeries:r,numberOfSeries:a}=t,i,n=[];return typeof e=="number"&&Number.isFinite(e)&&n.push(e),typeof r=="number"&&Number.isFinite(r)&&n.push(r*a),n.length>0&&(i=Math.min(...n)),i}function hp(t,e){let r,{maxBarChartSeriesCount:a,maxBarUniqueSeriesCountTotal:i,maxBarTwoSeriesCountPerSeries:n,maxBarTwoSeriesCountTotal:s,maxBarThreePlusSeriesCountPerSeries:o,maxBarThreePlusSeriesCountTotal:l,maxLineChartSeriesCount:d,maxLineUniqueSeriesCountTotal:u,maxLineTwoSeriesCountPerSeries:c,maxLineTwoSeriesCountTotal:f,maxLineThreePlusSeriesCountPerSeries:p,maxLineThreePlusSeriesCountTotal:h,maxPieChartSliceCountTotal:m,maxGaugeByFeaturesLimit:y}=ti(e),b=K(t.series),v=t.series.length===0?1:t.series.length,S=X(t.series);switch(b){case g.ComboLineAndBarSeries:case g.BarSeries:v<=a&&(v===1?r=i:v===2?r=ln({countTotal:s,countPerSeries:n,numberOfSeries:v}):v>2&&(r=ln({countTotal:l,countPerSeries:o,numberOfSeries:v})));break;case g.LineSeries:v<=d&&(v===1?r=u:v===2?r=ln({countTotal:f,countPerSeries:c,numberOfSeries:v}):v>2&&(r=ln({countTotal:h,countPerSeries:p,numberOfSeries:v})));break;case g.PieSeries:r=m;break;case g.GaugeSeries:r=y;break;case g.ScatterSeries:case g.HistogramSeries:case g.BoxPlotSeries:}return(S===x.BarAndLineNoAggregation||S===x.BarAndLineMultiFields)&&r!==void 0&&(r=Math.ceil(r/v)),r}function Wc(t,e){let r=t;if(Number.isFinite(t)){let{factor:a,offset:i}=e??{};Number.isFinite(a)&&(r*=a),Number.isFinite(i)&&(r+=i)}return r}function av(t){let e=!1;if(t!==void 0){let r=t.replace(" ",""),a=/^%(0*100{1,1}\.?((?:\.)0*)?$)|(^%0*\d{0,2}\.?((?:\.)\d*)?)$/u,i=/^(0*100{1,1}\.?((?:\.)0*)?%$)|(^0*\d{0,2}\.?((?:\.)\d*)?%)$/u;e=a.test(r)||i.test(r)}return e}function hF(t){let e;if(av(t)){let r=/%(\d{1,3}(.\d+)?)$/u,a=/(\d{1,3}(.\d+)?)%$/u,i=t.replace(" ",""),n=r.exec(i)?.[1]??a.exec(i)?.[1];n!==void 0&&(e=Number(n))}return e}function nv(t){let{stringToTruncate:e,characterLimit:r,ellipsis:a=A.chartEllipsis}=t,i=e;return typeof r=="number"&&Number.isFinite(r)&&r>0&&r<e.length&&(i=e.slice(0,r),i=`${i}${a}`),i}function mF(t,e=":"){return t?`\u200F${e}`:`\u200E${e}`}function yF(t){return e=>{let r=typeof e!="string"?e?.toString()??"":e;return!Ue(r)&&r!==A.htmlEmptyContent&&(r=nv({stringToTruncate:r,characterLimit:t})),r}}function sv(t){let e=/[[]/gu,r=/[\]]/gu,a=/[{]/gu,i=/[}]/gu,n=/[']/gu;return t=t.replace(e,"[["),t=t.replace(r,"]]"),t=t.replace(a,"{{"),t=t.replace(i,"}}"),t=t.replace(n,"''"),t}function ov(t,e){let r="";return t!==void 0&&(r=`${e==="amChartsV5"?"fontStyle":"font-style"}:${t};`),r}function lv(t,e){let r="";return t===!0&&(r=`${e==="amChartsV5"?"letterSpacing":"letter-spacing"}:1px;`),r}function gF(t){let{textSymbol:e,placeholderString:r,format:a,axisLabelsBehavior:i,defaults:n}=t,s=ov(e?.font?.style,a),o=lv(e?.kerning,a),l=r??e?.text??"";if(a==="html"){let{wrap:d,maxWidth:u}=n??{};i===Mo.Wrap&&(d=!0,u=u??A.xAxisLabelMaxWidth);let c=d===!0&&Number.isFinite(u)?`max-width: ${u}px; word-break: break-word;`:"";l=`<p style="margin:0;${s}${o}${c}">${l}</p>`}else l=sv(l),(s!==""||o!=="")&&(l=`[${s}${o}]${l}[/]`);return l}function dv(t){return t?t.replace(/[A-Z]/gu,e=>`-${e.toLowerCase()}`):void 0}var bF=[g.BarSeries,g.BoxPlotSeries,g.LineSeries,g.PieSeries,g.HistogramSeries,g.ScatterSeries],vF=1,SF={PNG:"png"},Fi={ChartRenderer:1,LayerRenderer:2};function wF(t){let{chartConfig:e,queryObject:r}=t,a=!1;if(e.chartRenderer)a=!0;else{let{series:i}=e,n=K(i),s=X(i),o=hr(e),l=$r({seriesConfig:o,queryObject:r}),d=re(r)?.renderer;switch(d?.type){case et.Simple:a=n===g.HistogramSeries||n===g.ScatterSeries||s===x.BarAndLineMonoField||s===x.BoxPlotMonoField||s===x.BoxPlotMultiFields||s===x.BoxPlotMonoFieldAndCategory||s===x.BarAndLineNoAggregation&&i.length===1&&!l;break;case et.UniqueValue:{let u=d?.field,c=rt(o.query?.where),{x:f}=o;a=(s===x.BoxPlotMonoFieldAndSplitBy||s===x.BoxPlotMultiFieldsAndSplitBy||s===x.BoxPlotMonoFieldAndCategoryAndSplitBy||s===x.BarAndLineSplitByNoAggregation||s===x.BarAndLineSplitBy)&&u===c||(s===x.BoxPlotMonoFieldAndCategory||s===x.PieFromCategory||s===x.BarAndLineMonoField)&&u===f||s===x.BarAndLineNoAggregation||s===x.PieNoAggregation||n===g.ScatterSeries}break;case et.PieChart:a=s===x.PieFromFields||s===x.BarAndLineFromFields||s===x.BarAndLineMultiFields||s===x.BarAndLineMonoField||s===x.BoxPlotMonoField||s===x.BoxPlotMultiFields||s===x.BoxPlotMonoFieldAndCategory||s===x.BoxPlotMultiFieldsAndCategory;break;case et.ClassBreaks:a=n===g.HeatSeries||n===g.ScatterSeries||s===x.BarAndLineNoAggregation||s===x.PieNoAggregation;break;case et.Dictionary:case et.DotDensity:case et.Heatmap:break}}return a}function uv(t,e){return dv(t?.type)??e?.type}function cv(t){let e=A.rendererSymbolField,r=e in t?e:void 0;if(!r){let a=t[A.originalCategoryValue];r=Object.keys(t).find(i=>{let n=t[i];return i.includes(e)&&n?.label&&n?.uniqueValue===a}),r||(r=Object.keys(t).find(i=>i.includes(e))??"")}return t[r]?.label}function pv(t){return t?.type!==void 0&&(t.color!==void 0||t.label!==void 0||t.style!==void 0||t.outline!==void 0)}function mp(t){let{symbolField:e,dataItem:r,rendererSymbol:a,rendererOrigin:i}=t,n=!1;if(!pv(a))delete r[e];else{let s={...a};s.color!==void 0&&i===Fi.LayerRenderer&&(s.color[3]=pt*255),i===Fi.LayerRenderer&&(delete s.style,delete s.outline,delete s.label),r[e]=s,n=!0}return n}function fv(t){let{renderer:e,seriesConfig:r,chartSubType:a,dataItem:i,rendererOrigin:n}=t,s,o=!1,l=K(r),{outline:d,attributes:u}=e;return u.forEach(c=>{let{field:f}=c,{color:p,label:h}=c,m;Array.isArray(p)&&p?.length===4?m=p:p&&"toRgba"in p&&(m=p.toRgba());let y=!1,b=!0;switch(l){case g.BarSeries:case g.LineSeries:case g.ComboLineAndBarSeries:case g.RadarSeries:if(a!==x.BarAndLineFromFields){let v=r.find(S=>S.query?.outStatistics?.[0]?.onStatisticField===f);v!==void 0&&"y"in v?f=[v.y].flat()[0]:f=""}y=a!==x.BarAndLineFromFields||f===i[A.originalCategoryValue];break;case g.PieSeries:y=a===x.PieFromFields&&f===i[A.originalCategoryValue];break;case g.BoxPlotSeries:a===x.BoxPlotMonoField||a===x.BoxPlotMonoFieldAndCategory?y=f===r[0].y:f&&(a===x.BoxPlotMultiFields||a===x.BoxPlotMultiFieldsAndCategory)&&(y=r.map(v=>v.y).flat().includes(f)),b=!1;break}y&&m&&(s={type:we.SMS,color:m,label:b&&h?h:void 0},d!=null&&(s.outline=d),mp({dataItem:i,symbolField:a===x.BarAndLineFromFields||a===x.PieFromFields?A.rendererSymbolField:`${A.rendererSymbolField}_${f}`,rendererSymbol:s,rendererOrigin:n})&&(o=!0))}),{rendererSymbol:s,colorMatchApplied:o}}function hv(t){let{seriesConfig:e,chartSubType:r,rendererType:a}=t,i=A.rendererSymbolField;if(a===et.UniqueValue){if(vp(r)){let n=ft({where:e.query?.where,keepSurroundingQuotes:!1,escape:!1});n===null?i=A.nullValue:r===x.BarAndLineSplitBy&&typeof e.y=="string"?i=e.y:r===x.BarAndLineSplitByNoAggregation&&typeof e.y=="string"?i=`${e.y}_${n}`:i=`${n}`}}else if(a===et.PieChart)switch(r){case x.BoxPlotMultiFields:i=Array.isArray(e.y)?e.y.flat():e.y;break;case x.BarAndLineMonoField:case x.BarAndLineMultiFields:case x.BoxPlotMonoField:case x.BoxPlotMonoFieldAndCategory:case x.BoxPlotMultiFieldsAndCategory:i=e.y;break}return i}function yp(t){let{seriesConfig:e,chartSubType:r,rendererType:a,dataItem:i}=t,n=hv({seriesConfig:e,chartSubType:r,rendererType:a});return n instanceof Array&&e.type===g.BoxPlotSeries&&a===et.PieChart&&i!==void 0&&(n=n.find(s=>s===i[Bi])??n[0]),n=n!==A.rendererSymbolField?`${A.rendererSymbolField}_${n.toString()}`:n,n}function mv(t){let{chartRenderer:e,queryObject:r}=t,a=e!==void 0?{...re(r),renderer:oo.fromJSON(e)}:re(r);return new ib({layer:a})}async function yv(t){let{seriesConfig:e,dataItem:r,renderer:a,rendererType:i,rendererOrigin:n,chartSubType:s,splitByField:o,graphicTemplate:l,rendererFieldNames:d,mapAttributesToSymbol:u}=t,c,f=!1;if(i===et.PieChart){let p=fv({renderer:a,seriesConfig:e,chartSubType:s,dataItem:r,rendererOrigin:n});c=p.rendererSymbol,f=p.colorMatchApplied}else if(r?.[mn.defaultGroupOfSlicesId]!==!0){let{x:p}=e[0],h=new Map;o&&o.trim()!==""?e.forEach(m=>{if(m.type===g.BarSeries||m.type===g.LineSeries||m.type===g.BoxPlotSeries||m.type===g.RadarSeries){let y=yp({seriesConfig:m,chartSubType:s,rendererType:i,dataItem:r}),b=ft({where:m.query?.where,normalize:!0,keepSurroundingQuotes:!1,escape:!1});h.set(y,{...r,[o]:b})}}):e[0].type===g.HeatSeries&&i===et.ClassBreaks?h.set(A.rendererSymbolField,{[ne.valueField]:r[ne.valueField]}):h.set(K(e)===g.HistogramSeries?A.rendererSymbolFieldForHistogram:A.rendererSymbolField,{...r,[p]:Jb(r)});try{let m=Array.from(h.entries()),y=l.clone();y.layer=l.layer;let b=a?.uniqueValueInfos;for(let v=0;v<m.length;v+=1){let[S,C]=m[v];if(Vc({mode:"encode",x:p,splitByField:o,attributes:C}),d&&d.length>0&&Object.keys(C).forEach(F=>{d.includes(F)||delete C[F]}),y.attributes=C,u?.has(JSON.stringify(C)))c=u.get(JSON.stringify(C));else{if(c=(await Di.getDisplayedSymbol(y))?.toJSON(),c!=null){if(c.color===void 0){let O=(await Di.getDisplayedColor(y))?.toJSON();O&&(c.color=O.length===4?O:[...O,255])}let F=await Di.getLegendLabel(y);F!=null&&F!==""&&(c.label=F,c.uniqueValue=b?.find(O=>O.label===F)?.value??void 0)}u?.set(JSON.stringify(C),c)}Vc({mode:"revert",x:p,splitByField:o,attributes:r}),mp({dataItem:r,symbolField:S,rendererSymbol:c,rendererOrigin:n})&&(f=!0)}}catch{}}return{rendererSymbol:c,colorMatchApplied:f}}function Vc(t){let{splitByField:e,attributes:r,x:a,mode:i}=t;[a,e??""].forEach(n=>{r[n]===(i==="encode"?null:A.nullValue)&&(r[n]=i==="encode"?A.nullValue:null)})}function gv(t){let{dataItem:e,seriesConfig:r,chartSubType:a,colorMatch:i,rendererType:n}=t,s;if(i&&e!==void 0){let o=yp({seriesConfig:r,chartSubType:a,rendererType:n,dataItem:e});s=e[o]}return s}function xF(t){let{seriesSymbol:e,rendererSymbol:r,colorIndex:a}=t,i=r?.color??e.color;i=i??Dt({colorIndex:a,opacity:pt});let n={...e,color:i},s=n.type===we.SFS&&Zb(n.style);return r?.type===e.type&&r.style!==void 0&&!s&&(n.style=r.style),n.type!==we.SLS&&(n.outline={type:we.SLS,style:r?.outline?.style??n.outline?.style,width:r?.outline?.width??n.outline?.width,color:r?.outline?.color??n.outline?.color??r?.color}),n}function bv(t){let e=[];return t&&(e=t.series.flatMap(r=>r.query?.outStatistics?.map(a=>a.onStatisticField)).filter(r=>r!==void 0),e.length===0&&(e=nt(t.series))),e}function CF(t,e){let r=!1;if(t&&e&&e.length>0&&gp(t)){let a=xv(t),i=hr(t);a?r=bv(t).some(n=>e.includes(n)):r=e.includes(i.x)}return r}function vv(t){let e=[];if(t&&"type"in t&&typeof t.type=="string")switch(t.type){case"uniqueValue":case"unique-value":"field1"in t&&typeof t.field1=="string"&&(e=[t.field1]);break;case"classBreaks":case"class-breaks":"field"in t&&typeof t.field=="string"&&(e=[t.field]);break;case"pieChart":case"pie-chart":"attributes"in t&&Array.isArray(t.attributes)&&(e=t.attributes.map(r=>r.field));break}return e}function Pi(t){return K(t?.series)===g.HeatSeries}function at(t){return K(t?.series)===g.BoxPlotSeries}function Sv(t,e){return t[0].dataTransformationType!==e[0].dataTransformationType}function wv(t,e){return t[0].binCount!==e[0].binCount}function TF(t,e){let r=!0,a=K(t?.series),i=K(e?.series);return a&&a!==i&&(r=a===g.ComboLineAndBarSeries&&(i===g.BarSeries||i===g.LineSeries)||i===g.ComboLineAndBarSeries&&(a===g.BarSeries||a===g.LineSeries)||a===g.BarSeries&&i===g.LineSeries||a===g.LineSeries&&i===g.BarSeries),r}function Ks(t,e){return t!==void 0&&e!==void 0&&e>0}function FF(t){let{chartConfig:e,queryObject:r,chartData:a}=t,i=[],n=X(e.series),s=gp(e),o=re(r),l=e.chartRenderer??o?.renderer?.toJSON();return i=e.series.map((d,u)=>{let c=K([d]),f;return(c===g.BarSeries||c===g.LineSeries||c===g.RadarSeries)&&(d.type===g.BarSeries?f=d.fillSymbol?.color:(d.type===g.RadarSeries||d.type===g.LineSeries)&&(f=d.lineSymbol?.color),s?f=gv({dataItem:a[0],seriesConfig:d,chartSubType:n,colorMatch:s,rendererType:l?.type})?.color:f===void 0&&(f=Dt({colorIndex:u}))),f}).filter(d=>d!==void 0),i}function Js(t){return t!==x.PieNoAggregation&&t!==x.BarAndLineNoAggregation&&t!==x.BarAndLineSplitByNoAggregation}function xv(t){let e=X(t.series);return e===x.BarAndLineFromFields||e===x.PieFromFields||e===x.BoxPlotMonoField||e===x.BoxPlotMultiFields||e===x.BoxPlotMonoFieldAndSplitBy||e===x.BoxPlotMultiFieldsAndSplitBy}function Ei(t){return at(t)?t?.showMean??!1:!1}function Cv(t){return at(t)?t?.showOutliers:void 0}function IF(){return`{name} {${A.originalCategoryValue}} {dateY} {valueX} {dateX} {valueY}`}var H={Min:"min",FirstQuartile:"first_quartile",Median:"median",ThirdQuartile:"third_quartile",Max:"max",IQR:"iqr",Average:"avg",StandardDeviation:"stddev",Outlier:"outlier"},Ke=class extends Error{constructor(e,r,a){super(r),this.name=e,this.details=a}},Ye={Default:"defaultError",LayerLoadFailure:"layerLoadFailure",QueryFeaturesError:"queryFeaturesError",ChartDisposed:"ChartDisposeError",LayerFieldsNotFound:"layerFieldsNotFound",LayerNotSupported:"layerNotSupported"},x={NonSpecific:"nonSpecific",BarAndLineNoAggregation:"barAndLineNoAggregation",BarAndLineMonoField:"barAndLineMonoField",BarAndLineMultiFields:"barAndLineMultiFields",BarAndLineFromFields:"barAndLineFromFields",BarAndLineSplitBy:"barAndLineSplitBy",BarAndLineSplitByNoAggregation:"barAndLineSplitByNoAggregation",PieNoAggregation:"pieNoAggregation",PieFromCategory:"pieFromCategory",PieFromFields:"pieFromFields",BoxPlotMonoField:"boxPlotMonoField",BoxPlotMultiFields:"boxPlotMultiFields",BoxPlotMonoFieldAndCategory:"boxPlotMonoFieldAndCategory",BoxPlotMultiFieldsAndCategory:"boxPlotMultiFieldsAndCategory",BoxPlotMonoFieldAndSplitBy:"boxPlotMonoFieldAndSplitBy",BoxPlotMultiFieldsAndSplitBy:"boxPlotMultiFieldsAndSplitBy",BoxPlotMonoFieldAndCategoryAndSplitBy:"boxPlotMonoFieldAndCategoryAndSplitBy"},OF={SelectionByClick:"SelectionByClick",SelectionByRange:"SelectionByRange",ProgrammaticSelection:"ProgrammaticSelection",ClearSelection:"ClearSelection"};function gp(t){return t?.colorMatch??!1}function _c(t){let e=ra();if(t!==void 0){let r=K(t.series);(r===g.BarSeries||r===g.LineSeries||r===g.ComboLineAndBarSeries||r===g.BoxPlotSeries)&&(e=t.rotated??ra())}return e}function AF(t){return t?.map(e=>e.type)??[]}function uo(t){let e=t?.stackedType;if(e===void 0&&t!==void 0){let r=K(t.series);(r===g.BarSeries||r===g.LineSeries||r===g.ComboLineAndBarSeries||r===g.RadarSeries)&&(e=zb())}return e}function Tv(t){let e=t;return e=e.replace(/'/gu,"''"),e=e.replace(/[/\\"|[\]\\]/gu,"\\$&"),e}function Fv(t){let e=!1;if(typeof t!="number"){let r=new Intl.Segmenter;e=Array.from(r.segment(t),a=>a.segment).some(a=>a.charCodeAt(0)>255)}return e}function Ys(t){let e=t,r="";t.startsWith("'")&&t.endsWith("'")&&(e=t.slice(1,-1),r="'"),e=e.replace(/'/gu,"''");let a="";return Fv(e)&&(a="N"),`${a}${r}${e}${r}`}function bp(t){let{value:e,keepSurroundingQuotes:r,escape:a}=t,i=e?.trim();if(!Ue(i)){let n="";i.startsWith("'")&&i.endsWith("'")&&(i=i.slice(1,-1),r&&(n="'")),a!==!1&&(i=Tv(i)),i=`${n}${i}${n}`}return i}function lr(t){let{count:e,seriesCount:r,chartType:a,chartLimits:i}=t,{behaviorAfterLimit:n}=i??{},s=!0;if(n!==Dr.RenderUpToTheLimit){let{maxBarChartSeriesCount:o,maxBarUniqueSeriesCountTotal:l,maxBarTwoSeriesCountPerSeries:d,maxBarTwoSeriesCountTotal:u,maxBarThreePlusSeriesCountPerSeries:c,maxBarThreePlusSeriesCountTotal:f,maxLineChartSeriesCount:p,maxLineUniqueSeriesCountTotal:h,maxLineTwoSeriesCountPerSeries:m,maxLineTwoSeriesCountTotal:y,maxLineThreePlusSeriesCountPerSeries:b,maxLineThreePlusSeriesCountTotal:v,maxPieChartSliceCountTotal:S,maxGaugeByFeaturesLimit:C,maxBoxPlotSeriesCount:F,maxBoxUniqueSeriesCountTotal:O,maxBoxTwoSeriesCountTotal:N,maxBoxTwoSeriesCountPerSeries:E,maxBoxThreePlusSeriesCountTotal:P,maxBoxThreePlusSeriesCountPerSeries:R,maxHeatChartCellLimit:$}=ti(i);switch(a){case g.BarSeries:case g.ComboLineAndBarSeries:{let q=e/r;r<=o?r===0?s=!0:r===1?s=e<=l:r===2?s=e<=u&&q<=d:r>2&&(s=e<=f&&q<=c):s=!1}break;case g.LineSeries:case g.RadarSeries:{let q=e/r;r<=p?r===0?s=!0:r===1?s=e<=h:r===2?s=e<=y&&q<=m:r>2&&(s=e<=v&&q<=b):s=!1}break;case g.PieSeries:s=e<=S;break;case g.BoxPlotSeries:{let q=e/r;r<=F?r===0?s=!0:r===1?s=e<=O:r===2?s=e<=N&&q<=E:r>2&&(s=e<=P&&q<=R):s=!1}break;case g.HeatSeries:s=e<=$;break;case g.GaugeSeries:s=e<=C;break}}return s}function Xs(t=[],e){let r=t.find(a=>a.name===e)?.alias;return r!==""?r??e:e}function PF(t=[],e){let r=t.find(a=>a.alias===e)?.name;return r!==""?r??e:e}function EF(t){let e=!1;switch(K(t)){case g.HeatSeries:case g.PieSeries:e=!0;break;case g.BarSeries:case g.LineSeries:case g.RadarSeries:case g.ComboLineAndBarSeries:case g.BoxPlotSeries:e=t.length>1;break;case g.HistogramSeries:case g.ScatterSeries:{let r=t[0];e=r.overlays!==void 0&&Object.values(r.overlays).some(a=>a.created===!0);break}}return e}function Iv(t){let e=!0;return K(t.series)===g.ScatterSeries&&(e=t.series.length===1),e}function Ov(t){let e=!0;return K(t.series)===g.HistogramSeries&&(e=t.series.length<=1&&t.series[0].type===g.HistogramSeries&&(!("dataTransformationType"in t.series[0])||t.series[0].dataTransformationType!==void 0&&Object.values(Ae).includes(t.series[0].dataTransformationType))),e}function Av(t){let e=!0;return K(t.series)===g.PieSeries&&(e=t.series.length<=1),e}function Pv(t,e){let r=K(e?.series),a=r!==void 0&&t.includes(r);if(a&&e!==void 0)switch(r){case g.HistogramSeries:a=Ov(e);break;case g.ScatterSeries:a=Iv(e);break;case g.PieSeries:a=Av(e);break}return a}function Ue(t){return t==null||typeof t=="string"&&t.trim()===""}function fn(t,e){let r=e.find(a=>a in t);return{isInItem:r!==void 0,expr:r}}function Cn(t){return fn(t,dp)}function LF(t,e){let r;switch(t){case G.Second:r=e.seconds??"";break;case G.Minute:r=e.minutes??"";break;case G.Hour:r=e.hours??"";break;case G.Day:r=e.days??"";break;case G.Week:r=e.weeks??"";break;case G.Month:r=e.months??"";break;case G.Year:r=e.years??"";break;default:r="";break}return r}function NF(t){let e;switch(t){case sr.Mean:e=1;break;case sr.Median:e=2;break;case sr.StdDev:e=3;break;case sr.Normal:default:e=0;break}return e}function DF(t,e){if(e!==void 0){let{seriesId:r,overlayType:a,visible:i}=t.detail,n;switch(a){case sr.Mean:e.series[0].type===g.HistogramSeries&&(n=e.series[0].overlays?.mean);break;case sr.Median:e.series[0].type===g.HistogramSeries&&(n=e.series[0].overlays?.median);break;case sr.StdDev:e.series[0].type===g.HistogramSeries&&(n=e.series[0].overlays?.standardDeviation);break;case sr.Normal:e.series[0].type===g.HistogramSeries&&(n=e.series[0].overlays?.comparisonDistribution);break;case sr.Trendline:e.series[0].type===g.ScatterSeries&&(n=e.series[0].overlays?.trendLine);break;default:n=e.series.find(s=>s.id===r);break}n!==void 0&&(n.visible=i)}}function BF(t){return new Ld().sanitize(t)}function Ev(t){return t!=null&&!Number.isNaN(t)&&Number.isFinite(t)}function Lv(t,e){let r={fieldToSort:""};if(!Ue(t)){let a=t.trim(),i=a.split(" ").at(-1)?.toUpperCase();i===je.Ascending||i===je.Descending?r={fieldToSort:a.substring(0,a.lastIndexOf(" ")),orderBy:i}:(r={fieldToSort:a},e!==!1&&(r.orderBy=je.Ascending))}return r}function vp(t){return t===x.BarAndLineSplitBy||t===x.BarAndLineSplitByNoAggregation||t===x.BoxPlotMonoFieldAndSplitBy||t===x.BoxPlotMultiFieldsAndSplitBy||t===x.BoxPlotMonoFieldAndCategoryAndSplitBy}function MF(t){return t?.selectionPixelTarget?Dn(t.selectionPixelTarget.pixelRanges):t?.selectionOIDs===void 0||t.selectionOIDs.length===0}function $F(t={arrayA:[],arrayB:[],getKey:e=>e}){let{arrayA:e,arrayB:r,getKey:a}=t;if(r.length===0||e.length===0)return e;let i=new Map;r.forEach((l,d)=>{let u=a(l);i.set(u,d)});let n=[],s=[];e.forEach((l,d)=>{let u=a(l);i.has(u)&&(n.push(d),s.push(l))}),s.sort((l,d)=>{let u=a(l),c=a(d);return i.get(u)-i.get(c)});let o=[...e];return n.forEach((l,d)=>{o[l]=s[d]}),o}function qF(t,e){return(t===x.BarAndLineNoAggregation||t===x.BarAndLineSplitByNoAggregation)&&e!==void 0?e.x:A.xAxisField}function RF(t){let{r:e,g:r,b:a,a:i=1}=t,n=Math.round((1-i)*255+i*e),s=Math.round((1-i)*255+i*r),o=Math.round((1-i)*255+i*a);return .299*n+.587*s+.114*o>128}var Er=new Map;function Nv(t,e){let r=ie.now().offset/60,a=ie.now().setZone(t)??r,i=a.offset/60,n=e?a.setZone(e).offset/60:0;return i-n}function Sp(t){let{outTimeZone:e=Intl.DateTimeFormat().resolvedOptions().timeZone,dataTimeZone:r="UTC",runsOnClientQueryEngine:a}=t,i="",n=Nv(e,r);if(n!==0)if(a)i=`${n>0?"+":"-"}1*INTERVAL '${Math.abs(n)}' HOUR `;else{let s=Math.abs(n%1),o=Math.round(s*60);n=Math.floor(n),i=n>0?`+INTERVAL '${Math.abs(n)}:${o!==0?o:"00"}:01' HOUR TO SECOND`:`-INTERVAL '${Math.abs(n)-(o!==0?0:1)}:${o!==0?String(o-1):"59"}:59' HOUR TO SECOND`}return i}function Dv(t){let{dateFieldName:e,unit:r,runsOnClientQueryEngine:a}=t,i=Sp({runsOnClientQueryEngine:a}),n=`EXTRACT(YEAR FROM ${e} ${i})`,s=`EXTRACT(MONTH FROM ${e} ${i})`,o=`EXTRACT(DAY FROM ${e} ${i})`,l=`EXTRACT(HOUR FROM ${e} ${i})`,d=`EXTRACT(MINUTE FROM ${e} ${i})`,u=`EXTRACT(SECOND FROM ${e} ${i})`,c=[];switch(r){case G.Second:c=[n,s,o,l,d,u];break;case G.Minute:c=[n,s,o,l,d];break;case G.Hour:c=[n,s,o,l];break;case G.Day:case G.Week:case G.Month:case G.Year:c=[n,s,o];break}return c}function Bv(t){return t!==void 0&&"type"in t&&t.type==="imagery"}function Mv(t){return t!==void 0&&"type"in t&&t.type==="imagery-tile"}function $v(t){return t==="imagery"||t==="imagery-tile"}function Xe(t){return t!==void 0&&"type"in t&&$v(t.type)}function qv(t){let e=t?.iLayer?.layerType;return e==="ArcGISImageServiceLayer"||e==="ArcGISTiledImageServiceLayer"}function gn(t,e){if(Xe(t))throw new Error(e??"Raster layer is not supported by this operation.")}function kF(t){return t!==void 0&&(!("url"in t)||!t.url)}function Jt(t){return t!==void 0&&"view"in t&&"layer"in t&&t.layer.type==="feature"}function wp(t){return t!==void 0&&"type"in t&&t.type==="feature"}function xp(t){return t!==void 0&&"type"in t&&t.type==="subtype-sublayer"}function Rv(t){return wp(t)||xp(t)}function st(t){return xp(t)?t.parent??void 0:t}function Cp(t){return t?.capabilities?.query?.supportsDistance||st(t)?.sourceJSON?.advancedQueryCapabilities?.supportsQueryWithDistance===!0}function kv(t){return t?.capabilities?.queryAttributeBins?.supportsFixedInterval===!0&&t?.capabilities?.queryAttributeBins?.supportsStackBy}function na(t,e){return t!==void 0&&(Jt(t)||"capabilities"in t&&t.capabilities?.queryAttributeBins?.supportsDate===!0&&(Ue(e)||t.capabilities?.queryAttributeBins?.supportsStackBy))}function jv(t){let e=!1,r=st(re(t))?.sourceJSON;if(r){let a=r.queryBinsCapabilities?.supportsFixedIntervalBin,i=r.queryBinsCapabilities?.supportedStatisticTypes,n=[j.Maximum,j.Count].every(s=>i?.includes(s.toUpperCase())||i?.includes(s.toLowerCase()));e=a&&n}return e}function jF(t){let e;return Jt(t)?e=t.layer:e=t,e}function re(t){let e;return Jt(t)?e=t.layer:e=t,e}function Wv(t){let e=!1,r=st(t)?.sourceJSON?.advancedQueryCapabilities?.supportedSpatialAggregationStatistics??[],a=t?.capabilities?.query.supportedSpatialAggregationStatistics??{};return e=r.includes("EnvelopeAggregate")||"envelope"in a&&a.envelope===!0,e}function WF(t){let{chartConfig:e,queryObject:r}=t,a;if(r){let i=re(r);Bv(i)?a={id:i.id,layerType:"ArcGISImageServiceLayer"}:Mv(i)?a={id:i.id,layerType:"ArcGISTiledImageServiceLayer"}:a={id:i.id,layerType:"ArcGISFeatureLayer"},i.url&&(a.url=i.url)}return{...e,iLayer:a}}function Vv(t){let e;switch(t){case _r.Feet:e="esriSRUnit_Foot";break;case _r.Miles:e="esriSRUnit_StatuteMile";break;case _r.NauticalMiles:e="esriSRUnit_NauticalMile";break;case _r.USNauticalMiles:e="esriSRUnit_USNauticalMile";break;case _r.Meters:e="esriSRUnit_Meter";break;case _r.Kilometers:e="esriSRUnit_Kilometer";break}return e}async function _v(t){let{queryObject:e,queryConfig:r,outputFormat:a,dataFormat:i,outAnalytics:n}=t,{where:s,geometry:o,distance:l,units:d,timeExtent:u}=r,c,f=re(e),p=st(f);if(p){let h={where:Pe([s,p.definitionExpression])},m={query:h},y=Mi(o)?.extent?.toJSON();if(y!==void 0){let v=Vv(d),{xmin:S,ymin:C,xmax:F,ymax:O}=y;h.geometryType="esriGeometryEnvelope",h.geometry=`${S},${C},${F},${O}`,l!==void 0&&(h.distance=l.toString()),v!==void 0&&(h.units=v,o?.spatialReference?.wkid!=null&&(h.inSR=o.spatialReference.wkid.toString()))}u&&(h.time=`${u[0]},${u[1]}`);let b=`${p.url}/${p.layerId}/queryAnalytic?f=${a}&dataFormat=${i}&outAnalytics=${n}`;try{c=(await hn(b,m)).data?.features?.[0]?.attributes}catch(v){let S=(await qt(gt(document.documentElement).t9nLocale,$t("./assets/common/t9n"),"messages.")).errorStrings;throw new Ke(Ye.QueryFeaturesError,S.errors.queryError,v)}}return c}function Tp(t,e){return{lowerBoundaryAlias:`charts_lower_boundary_${t}`,upperBoundaryAlias:`charts_upper_boundary_${t}`,stackAlias:`charts_stack_alias_${e}`}}async function zv(t){let{chartConfig:e,queryObject:r,queryConfig:a,errorStrings:i,options:n}=t,s,o=re(r),l=kv(o);if(l&&r&&"queryAttributeBins"in r){let{x:d,y:u,xTemporalBinning:c,yTemporalBinning:f}=e.series[0],{outTimeZone:p,firstDayOfWeek:h,includeLeapDay:m}=e,y=a0({queryObject:r,queryConfig:a,x:d,y:u,xTemporalBinning:c,yTemporalBinning:f,configTimeZone:p,firstDayOfWeek:h,includeLeapDay:m,options:n});try{s=await r.queryAttributeBins(y)}catch(b){throw new Ke(Ye.QueryFeaturesError,i.errors.queryError,b)}}if(!l)throw new Ke(Ye.QueryFeaturesError,i.errors.queryBinsNotSupported,i.errors.queryBinsNotSupported);return s}async function Uv(t){let{chartConfig:e,queryObject:r,queryConfig:a,returnFeaturesExtent:i,errorStrings:n,abortKey:s}=t,o=e.series[0],l,{x:d,y:u}=o;a.groupByFieldsForStatistics=[d],d!==u&&a.groupByFieldsForStatistics.push(u),a&&i===!0&&!a.outStatistics?.some(c=>c.statisticType===j.EnvelopeAggregate)&&a.outStatistics?.push({statisticType:j.EnvelopeAggregate,onStatisticField:"1"});try{l=await Bt({queryObject:r,queryConfig:a,abortKey:s})}catch(c){throw new Ke(Ye.QueryFeaturesError,n.errors.queryError,c)}return l}async function Hv(t){let{queryObject:e,queryConfig:r,xStep:a,xMin:i,xMax:n,x:s,y:o,yStep:l,errorStrings:d}=t,u;if(e&&"queryAttributeBins"in e&&Number.isFinite(a)&&Number.isFinite(l)&&Number.isFinite(i)&&Number.isFinite(n)&&a>0&&l>0){let c=n0({queryObject:e,queryConfig:r,xStep:a,xMin:i,xMax:n,x:s,y:o,yStep:l});try{u=await e.queryAttributeBins(c)}catch(f){throw new Ke(Ye.QueryFeaturesError,d.errors.queryError,f)}}return u}async function Gv(t){let{queryConfig:e,x:r,queryObject:a,chartSubType:i,isGaugeByFeature:n}=t,s,o=re(a),{idField:l,isTraditionalTypeOID:d}=zt(o),u=po({queryObject:a,queryConfig:e});u.outFields=n||i===x.PieNoAggregation||i===x.BarAndLineNoAggregation||i===x.BarAndLineSplitByNoAggregation?[d?l:"*"]:[r],u.outFields?.[0]===r&&(u.returnDistinctValues=!0);try{s=await a.queryFeatureCount(u)}catch{s=Number.NaN}return s}async function da(t){let{queryObject:e,queryConfig:r,abortKey:a}=t,{outStatistics:i}=r,n=new Map;if(i!==void 0&&i.length>0){let s=i.map(u=>{let{statisticType:c,onStatisticField:f,outStatisticFieldName:p}=u;return{statisticType:c,onStatisticField:f,outStatisticFieldName:p?.toUpperCase()}});r.outStatistics=s,delete r.num,delete r.orderByFields;let o=po({queryObject:e,queryConfig:r}),l;try{l=await e.queryFeatures(o,{signal:a!==void 0?Er.get(a)?.signal:void 0})}catch(u){if(!lo.isAbortError(u)){let c=(await qt(gt(document.documentElement).t9nLocale,$t("./assets/common/t9n"),"messages.")).errorStrings;throw new Ke(Ye.QueryFeaturesError,c.errors.queryError,u)}}let d=l?.features?.[0]?.attributes;d!==void 0&&i.forEach(u=>{let{outStatisticFieldName:c}=u;if(c!==void 0){let f=d[c.toLowerCase()]??d[c.toUpperCase()]??d[c];f!==void 0&&n.set(c,f)}})}return n}async function Fp(t){let{queryObject:e,queryConfig:r,returnUniqueIdsOnly:a,abortKey:i}=t,n=[],s=re(e),o=s0(s),l=po({queryObject:e,queryConfig:r,maxRecordCountFactor:o});try{if(a===!0)if("queryObjectIds"in e)n=await e.queryObjectIds(l);else{let{idField:d,isTraditionalTypeOID:u}=zt(s),c=u?d:"*";l.outFields=[c],n=(await e.queryFeatures(l,{signal:i!==void 0?Er.get(i)?.signal:void 0})).features.map(f=>f.getObjectId())}else n=(await e.queryFeatures(l,{signal:i!==void 0?Er.get(i)?.signal:void 0})).features}catch(d){if(!lo.isAbortError(d)){let u=(await qt(gt(document.documentElement).t9nLocale,$t("./assets/common/t9n"),"messages.")).errorStrings;throw new Ke(Ye.QueryFeaturesError,u.errors.queryError,d)}}return n}async function Qv(t){let e=[],{featureCount:r,maxRecords:a,queryConfig:i}=t,n=[],s=0,o=i?.start??0;for(;s<me.maxParallelRequests&&o<r;){let l={...t};l.queryConfig={...i,start:o,num:Math.min(a,r-o)},e.push(Fp(l)),o+=a,s+=1}return n=(await Promise.all(e)).flat(),n}async function Bt(t){let{queryObject:e,queryConfig:r,returnUniqueIdsOnly:a,featureCount:i,noBatch:n,abortKey:s}=t,o=[],l=re(e),d=i??1,u=Op(l);if(n!==!0&&d>u&&l?.capabilities?.query.supportsPagination){let c=0,f=0,p=Math.ceil(d/u),h=Math.ceil(p/me.maxParallelRequests),m=[];for(;f<h;){c=f*me.maxParallelRequests*u;let y=Qv({queryConfig:{...r,start:c},queryObject:e,maxRecords:u,featureCount:d,returnUniqueIdsOnly:a,abortKey:s});m.push(y),f+=1}o=(await Promise.all(m)).flat()}else(Number.isNaN(d)||d>=0)&&(o=await Fp({queryObject:e,queryConfig:r,returnUniqueIdsOnly:a,abortKey:s}));return o}async function VF(t){let{queryObject:e,queryConfig:r,uniqueFeature:a,abortKey:i}=t,n={...r,returnDistinctValues:!0};return await Bt({queryObject:e,abortKey:i,queryConfig:n,returnUniqueIdsOnly:!0,featureCount:a===!0?1:void 0})}function Zv(t){if(t!==void 0){let e=Er.get(t);e!==void 0&&e.abort(),Er.set(t,new AbortController)}}function Ip(t){return{lowerBoundaryAlias:`charts_lower_boundary_${t}`,upperBoundaryAlias:`charts_upper_boundary_${t}`}}async function Kv(t){let{queryObject:e,dateField:r,splitByField:a,queryConfig:i,temporalBinning:n}=t,s=[],o;if(n){let{unit:l}=n;try{if(l){let d=st(re(e))??void 0;if(o=na(d,a),o&&e&&"queryAttributeBins"in e){let u=r0({queryObject:e,queryConfig:i,temporalBinning:n,dateField:r,splitByField:a});s=(await e.queryAttributeBins(u)).features}}}catch(d){let u=(await qt(gt(document.documentElement).t9nLocale,$t("./assets/common/t9n"),"messages.")).errorStrings;throw new Ke(Ye.QueryFeaturesError,u.errors.queryError,d)}}if(o===!1){let l=(await qt(gt(document.documentElement).t9nLocale,$t("./assets/common/t9n"),"messages.")).errorStrings;throw new Ke(Ye.QueryFeaturesError,l.errors.queryBinsNotSupported,l.errors.queryBinsNotSupported)}return s}function Jv(t){let e=!t.geometry||t.geometry.type==="extent",r=(t.where??"").toUpperCase(),a=!r.includes("CURRENT_TIMESTAMP")&&!r.includes("CURRENT_DATE")&&!r.includes("CURRENT_TIME");return e&&a}function Op(t){let e=me.maxRecords;if(t&&"sourceJSON"in t&&t.sourceJSON?.maxRecordCount){let{sourceJSON:r}=t;e=r.maxRecordCount,r.advancedQueryCapabilities?.supportsMaxRecordCountFactor===!0&&(e*=me.maxRecordCountFactor)}return e}function Pe(t,e){let r,a=Array.from(new Set(t)).filter(i=>i!=null&&i!==""&&!dr(i));return a.sort((i,n)=>n.length-i.length),a.length===1?[r]=a:a?.forEach(i=>{i!==void 0&&(Ue(r)?r=`(${i})`:r?.includes(`(${i})`)||(r=`${r} ${e??"AND"} (${i})`))}),r??"1=1"}function Yv(t,e){let r=e;if(t!==void 0){let a=re(t),i=st(a)?.timeExtent;i?.start!=null&&i?.end!=null&&(r=[i.start.valueOf(),i.end.valueOf()])}return r}function Xv(t){let{queryObject:e,defaultGeometry:r,ignoreViewExtent:a}=t,i=r;if(!a&&Jt(e)){let n=e.view.extent,{xmin:s,xmax:o,ymin:l,ymax:d,zmin:u,zmax:c}=n;i={xmin:s,ymin:l,zmin:u,xmax:o,ymax:d,zmax:c,spatialReference:n.spatialReference.toJSON()}}return i}function Mi(t){let e;return t!==void 0&&(e=so.fromJSON(t)),e}function e0(t){return t===void 0?["*"]:Array.from(new Set(t))}function Tn(t){let{queryType:e,queryObject:r,queryConfig:a}=t,{where:i,outStatistics:n,geometry:s,distance:o,units:l,timeExtent:d,returnDistinctValues:u}=a??{},c=re(r),f=st(c)?.createQuery()??new Kg,p,h=Fn(c).idFields;if(e==="AttributeBinsQuery"&&a?.objectIds?.[0]!==void 0&&h&&(p=`${h} IN (${a.objectIds.join(",")})`),e==="AttributeBinsQuery"&&(f=new Zg(f.toJSON())),f.where=Pe([f.where,i,p]),"returnDistinctValues"in f&&(f.returnDistinctValues=u??!1),n!==void 0){let y=Wv(c);f.outStatistics=n.filter(b=>b.statisticType!==j.EnvelopeAggregate||y).map(b=>Jg.fromJSON(b))}let m=Mi(s);return m!==void 0&&(f.geometry=m,a?.spatialRelationship&&(f.spatialRelationship=a.spatialRelationship),Cp(c)&&(o!==void 0&&(f.distance=o),l!==void 0&&(f.units=l))),d&&(f.timeExtent=new Yg({start:d?.[0],end:d?.[1]})),Jv(f)&&(f.cacheHint=!0),f}function t0(t){let e;switch(t){case $e.Start:e="first";break;case $e.End:e="last";break}return e}function r0(t){let{queryObject:e,queryConfig:r,temporalBinning:a,dateField:i,splitByField:n}=t,s=re(e),o=Ct(e).find(b=>b.name===i)?.type,l=Tn({queryType:"AttributeBinsQuery",queryObject:e,queryConfig:r}),{unit:d,size:u,timeAggregationType:c,start:f,end:p,offset:h,outTimeZone:m}=a,y=Ip(i);if(l.lowerBoundaryAlias=y.lowerBoundaryAlias,l.upperBoundaryAlias=y.upperBoundaryAlias,o!==ce.DateOnly&&(l.outTimeZone=m??Intl.DateTimeFormat().resolvedOptions().timeZone),l.binParameters={type:"date",field:i,interval:{unit:d,value:u},start:f,end:p,offset:h?{unit:h.unit,value:h.size}:null},l.binParameters.type==="date"&&(s?.capabilities?.queryAttributeBins?.supportsSnapToData&&(l.binParameters.snapToData=t0(c)),s?.capabilities?.queryAttributeBins?.supportsReturnFullIntervalBin&&(l.binParameters.returnFullIntervalBin=!0)),!Ue(n)){let b=st(s)?.fields.find(v=>v.name===n)?.type;(!b||b==="string"||b==="integer"||b==="small-integer"||b==="big-integer"||b==="double")&&(l.binParameters.stackBy={type:"field",value:n,valueType:b==="string"?"string":"integer"})}return l}function co(t){let{field:e,fieldType:r,unit:a,outTimeZone:i,dataTimeZone:n,runsOnClientQueryEngine:s,addIntervalStatement:o,addLeapDayExpression:l}=t,d,u,c=1,f=1;switch(a){case vt.MinuteOfDay:r!==ce.DateOnly&&(u="MINUTE",c=0,f=59);break;case vt.HourOfDay:r!==ce.DateOnly&&(u="HOUR",c=0,f=23);break;case vt.DayOfWeek:u="DOW",f=7;break;case vt.DayOfMonth:u="DAY",f=31;break;case vt.DayOfYear:u="DOY",f=366;break;case vt.WeekOfYear:u="WEEK",f=53;break;case vt.MonthOfYear:u="MONTH",f=12;break;case vt.QuarterOfYear:u="QUARTER",f=4;break}if(u){let p=o?` ${Sp({dataTimeZone:n,runsOnClientQueryEngine:s,outTimeZone:i})}`:"";d=i0({addLeapDayExpression:l,temporalKey:u,field:e,intervalStatement:p})}return{expression:d,start:c,end:f}}function i0(t){let{addLeapDayExpression:e=!1,temporalKey:r,field:a,intervalStatement:i}=t,n;return e&&a.length&&r==="DAY"?n=`CASE WHEN (EXTRACT(MONTH FROM ${a})=2 AND EXTRACT(DAY FROM ${a})=29) THEN 0 ELSE EXTRACT (${r} FROM ${a}${i}) END`:n=`EXTRACT (${r} FROM ${a}${i})`,n}function zc(t){let{temporalBinning:e,xOrY:r,xOrYFieldType:a,addIntervalStatement:i,outTimeZone:n,dataTimeZone:s,runsOnClientQueryEngine:o,includeLeapDay:l}=t,{unit:d}=e??{},u,c,f,p;return a===ce.Date||a===ce.DateOnly||a===ce.TimestampOffset?{expression:c,start:f,end:p}=co({field:r,fieldType:a,unit:d,addIntervalStatement:i,outTimeZone:n,dataTimeZone:s,runsOnClientQueryEngine:o,addLeapDayExpression:!l}):u=r,{field:u,expression:c,start:f,end:p}}function a0(t){let{queryObject:e,queryConfig:r,x:a,y:i,xTemporalBinning:n,yTemporalBinning:s,firstDayOfWeek:o,includeLeapDay:l,configTimeZone:d,options:u}=t,c=Ct(e),f=c.find(F=>F.name===a)?.type,p=c.find(F=>F.name===i)?.type,h=Tn({queryType:"AttributeBinsQuery",queryObject:e,queryConfig:r});if(h.binParameters={type:"fixed-interval",interval:1},h.lowerBoundaryAlias=me.heatChartLowerBoundaryAlias,h.upperBoundaryAlias=me.heatChartUpperBoundaryAlias,f!==ce.DateOnly){let F=Intl.DateTimeFormat().resolvedOptions().timeZone,O=u?.view&&"timeZone"in u?.view?u.view.timeZone:void 0,N=d??O??F;N==="unknown"?N="Etc/UTC":N==="system"&&(N=F),h.outTimeZone=N}o!==void 0&&(h.binParameters.firstDayOfWeek=o);let m=zc({temporalBinning:n,xOrY:a,xOrYFieldType:f,addIntervalStatement:!1,includeLeapDay:l}),{field:y,expression:b,start:v,end:S}=m;y?h.binParameters.field=y:b&&(h.binParameters.expression=b,h.binParameters.expressionValueType="integer",h.binParameters.type==="fixed-interval"&&(v!==void 0&&(h.binParameters.start=v),S!==void 0&&(h.binParameters.end=S)));let C=zc({temporalBinning:s,xOrY:i,xOrYFieldType:p,addIntervalStatement:!1,includeLeapDay:l});return C.field?h.binParameters.stackBy={type:"field",value:C.field}:C.expression&&(h.binParameters.stackBy={type:"expression",value:C.expression,valueType:"integer",alias:i}),h}function n0(t){let{queryObject:e,queryConfig:r,xStep:a,xMin:i,xMax:n,x:s,y:o,yStep:l}=t,d=Tn({queryType:"AttributeBinsQuery",queryObject:e,queryConfig:r}),u=Tp(s,o);return d.lowerBoundaryAlias=u.lowerBoundaryAlias,d.upperBoundaryAlias=u.upperBoundaryAlias,d.binParameters={type:"fixed-interval",field:s,interval:a,start:i,end:n,stackBy:{value:`FLOOR(${o} / ${l})`,type:"expression",alias:u.stackAlias,valueType:"integer"}},d}function po(t){let{queryObject:e,queryConfig:r,maxRecordCountFactor:a}=t,{groupByFieldsForStatistics:i,orderByFields:n,gdbVersion:s,start:o,num:l,outFields:d}=r??{},u=Tn({queryType:"Query",queryObject:e,queryConfig:r});u.returnGeometry=!1;let c=re(e);return u.outFields=e0(d),u.groupByFieldsForStatistics=i??u.groupByFieldsForStatistics,u.orderByFields=n??[],u.objectIds=r?.objectIds,a!==void 0&&(u.maxRecordCountFactor=a),s!==void 0&&s!==""&&(u.gdbVersion=s),l!==void 0&&(u.num=l),o!==void 0&&(u.start=o,u.num=u.num??Op(c)),u}function s0(t){return t&&"sourceJSON"in t&&t.sourceJSON?.advancedQueryCapabilities?.supportsMaxRecordCountFactor===!0?me.maxRecordCountFactor:void 0}var Ap={NonNumericAggregation:"nonNumericAggregation",DuplicateSeriesID:"duplicateSeriesId"},Or={Required:"required",MinLength:"minLength",MinItems:"minItems",MaxItems:"maxItems",Pattern:"pattern",AdditionalProperties:"additionalProperties",Enum:"enum",AnyOf:"anyOf"},ae={BadData:"badData",EmptyDataSet:"emptyDataSet",InvalidConfig:"invalidConfig",HistogramEmptyField:"histogramEmptyField",BarElementExceedsLimit:"barElementExceedsLimit",LineChartExceedsLimit:"lineChartExceedsLimit",BoxPlotExceedsLimit:"boxPlotExceedsLimit",BoxPlotOutliersExceedsLimit:"boxPlotOutliersExceedsLimit",HeatChartExceedsLimit:"heatChartExceedsLimit",PieChartExceedsLimit:"pieChartExceedsLimit",GaugeExceedsLimit:"gaugeExceedsLimit",PieChartMixOfNegativePositiveSlices:"PieChartMixOfNegativePositiveSlices",NegativeValueInSqrtCalculation:"negativeValueInSqrtCalculation",NegativeValueInLogCalculation:"negativeValueInLogCalculation",NegativeValueInXAxisLogScale:"negativeValueInXAxisLogScale",NegativeValueInYAxisLogScale:"negativeValueInYAxisLogScale"},o0=2048;function l0(t){let e;switch(t){case Ae.Log:e="log";break;case Ae.Sqrt:e="sqrt";break;case Ae.None:default:e=void 0;break}return e}async function d0(t){let{queryConfig:e,chartConfig:r,queryObject:a,options:i,abortKey:n}=t,s=r.series[0],{x:o,dataTransformationType:l,binCount:d}=s,u=re(a);if(!Xe(u))throw new Ke(Ye.LayerNotSupported);u.loaded||await u.load();let c=await u.generateRasterInfo(u.rasterFunction),f=i?.view,p=Mi(e.geometry)??u.fullExtent,h=c.bandCount===1?0:c.bandInfos.findIndex(b=>b.name===o),m,y;if(f===void 0&&(l===void 0||l===Ae.None)&&d&&Array.isArray(c.histograms)&&c.histograms.length>h&&c.histograms[h].size%d===0&&Array.isArray(c.statistics)&&c?.statistics?.length>h)m=c.histograms[h],y=c.statistics[h];else{let b,v,S;if(f)b=f.resolution,v=f.resolution,S=f.spatialReference;else{let N=o0,E=2,P=c.width,R=c.height,$=Math.max(0,Math.ceil(Math.log(Math.max(P,R)/N)/Math.log(E))),q=E**$;b=c.pixelSize.x*q,v=c.pixelSize.y*q,S=u.spatialReference}let C=new db({x:b,y:v,spatialReference:S}),F=l0(l),O=await Hg(u,{bandIds:[h],geometry:p,histogramSize:d??void 0,pixelSize:C,transformType:F},{signal:n!==void 0?Er.get(n)?.signal:void 0});y=O.statistics[0],m=O.histograms[0]}return{histogram:m,statistics:y}}function u0(t,e){let r=[],a=(t.max-t.min)/t.size;for(let i=0;i<t.size;i++){let n=t.min+i*a;r.push({minValue:n,maxValue:n+a,count:t.counts[i]})}if(e&&t.size!==e&&t.size%e===0){let i=t.size/e,n=[];for(let s=0;s<e;s++){let o=r[s*i].minValue,l=r[(s+1)*i-1].maxValue,d=0;for(let u=0;u<i;u++)d+=r[s*i+u].count;n.push({minValue:o,maxValue:l,count:d})}return n}return r}async function c0(t){let{chartConfig:e,queryConfig:r,queryObject:a,options:i,abortKey:n}=t;if(a===void 0)throw new Error("QueryObject is undefined!");let s,{statistics:o,histogram:l}=await d0({queryObject:a,chartConfig:e,queryConfig:r,options:i,abortKey:n});if(o&&l){let d=e.series[0].binCount??void 0,u=u0(l,d);u.length>0?s={valid:!0,count:u.length,data:{bins:u,min:o.min,max:o.max,mean:o.avg,median:o.median,stddev:o.stddev,sum:o.sum??o.avg*o.count,count:o.count}}:s={valid:!1,invalidType:ae.EmptyDataSet}}else s={valid:!1,invalidType:ae.BadData};return s}var p0=t=>t.series[0].x;function f0(t){let{chartConfig:e,layer:r,selectionDataItems:a}=t,i=eo(r,p0(e)),n=a.map(l=>[l.minValue,l.maxValue]).reduce((l,d,u)=>{if(u===0)l.push([...d]);else{let c=l[l.length-1];c[1]===d[0]?c[1]=d[1]:l.push([...d])}return l},[]),s=e.series[0],{dataTransformationType:o}=s;switch(o){case Ae.Log:n.forEach(l=>{l[0]=Math.exp(l[0]),l[1]=Math.exp(l[1])});break;case Ae.Sqrt:n.forEach(l=>{l[0]=l[0]*l[0],l[1]=l[1]*l[1]});break;case Ae.None:}return n.length>0?{bandId:i,pixelRanges:n}:void 0}var h0={dataFormat:"json",outputFormat:"json",typeKey:"analyticType",typeValue:"LinRegR2",fieldValue:"onAnalyticField",slopePropertyList:["Slope","SLOPE","slope"],interceptPropertyList:["Intercept","INTERCEPT","intercept"],r2PropertyList:["R2","r2"]};function sa(t,e){let r,a,i=e??(n=>n);for(let n of t){let s=i(n);s==null||Number.isNaN(s)||((r===void 0||s<r)&&(r=s),(a===void 0||s>a)&&(a=s))}return{min:r,max:a}}function m0(t,e){let r=0,a=0,i=e??(n=>n);for(let n of t){let s=i(n);s==null||Number.isNaN(s)||(r++,a+=s)}return r>0?a/r:void 0}function y0(t,e){let r=0,a=e??(i=>i);for(let i of t){let n=a(i);n==null||Number.isNaN(n)||(r+=n)}return r}function _F(t,e,r=1){let a=Math.max(0,Math.ceil((e-t)/r)),i=new Array(a);for(let n=0;n<a;n++)i[n]=t+n*r;return i}async function g0(t){let{queryObject:e}=t,r=!1;if(!Xe(e)){let a=Rv(e),i=re(e),n=st(i);if(a&&n?.url!==void 0&&n.url!==null){let s=`${n.url}/${n.layerId}?f=json`;try{let o=(await hn(s)).data,l=o?.advancedQueryCapabilities?.supportsQueryAnalytic===!0,d=o?.sqlParserVersion===void 0||n.version!=null&&n.version>=10.91;r=l&&d}catch{}}}return r}function b0(t){let{x:e,y:r,trendlineXToY:a,data:i}=t,{min:n,max:s}=i?sa(i,o=>o[e]):{min:Number.NaN,max:Number.NaN};return[{[e]:n??Number.NaN,[r]:a(n??Number.NaN)},{[e]:s??Number.NaN,[r]:a(s??Number.NaN)}]}function v0(t){let{data:e,x:r,y:a}=t,i=[];return e!==void 0&&(i=e.filter(n=>Number.isFinite(n[r])&&Number.isFinite(n[a])).map(n=>[n[r],n[a]])),i}async function S0(t){let{statsMap:e,queryObject:r,chartConfig:a,queryConfig:i}=t,n=a.series[0],{x:s,y:o}=n;gn(r);let l=Number.NaN,d=[{[s]:Number.NaN,[o]:Number.NaN},{[s]:Number.NaN,[o]:Number.NaN}],{dataFormat:u,outputFormat:c,typeKey:f,typeValue:p,fieldValue:h,slopePropertyList:m,interceptPropertyList:y,r2PropertyList:b}=h0,v=`[{"${f}": "${p}", "${h}":"${s},${o}"}]`,S=await _v({queryObject:r,queryConfig:i,outputFormat:c,dataFormat:u,outAnalytics:v});if(S!==void 0){let C=Number.NaN,F=Number.NaN,{expr:O}=fn(S,m),{expr:N}=fn(S,y),{expr:E}=fn(S,b);O!==void 0&&Number.isFinite(S[O])&&(C=S[O]),N!==void 0&&Number.isFinite(S[N])&&(F=S[N]),E!==void 0&&Number.isFinite(S[E])&&(l=S[E]);let{dataContextXMinField:P,dataContextXMaxField:R,dataContextYMinField:$,dataContextYMaxField:q}=A.scatterplotAggregationFields,B=e.get(P)??Number.NaN,k=e.get(R)??Number.NaN,M=e.get($)??Number.NaN,_=e.get(q)??Number.NaN,Q=(k-B)/100,V=B-Q,Z=Number.NaN;for(;!(Z>=M&&Z<=_)&&V<=k;)V+=Q,Z=C*V+F;let U=k+Q,oe=Number.NaN;for(;!(oe>=M&&oe<=_)&&U>=B;)U-=Q,oe=C*U+F;d=[{[s]:V,[o]:Z},{[s]:U,[o]:oe}]}return{r2:l,trendLinePoints:d}}function Pp(t){let{data:e,chartConfig:r}=t,a=r.series[0],{x:i,y:n}=a,{r2:s,trendLinePoints:o}=A.scatterplotSeries,l=v0({data:e,x:i,y:n});if(l!==void 0){let d=Nd(l),u=Dd(d);s=d.m===0?0:Bd(l,u),o=b0({x:i,y:n,trendlineXToY:u,data:e})}return{r2:s,trendLinePoints:o}}async function Ep(t){let e=await g0(t),{chartConfig:r}=t,a=r.series[0],{x:i,y:n}=a,{r2:s}=A.scatterplotSeries,o=[{[i]:Number.NaN,[n]:Number.NaN},{[i]:Number.NaN,[n]:Number.NaN}],l={r2:s,trendLinePoints:o},d=!1;if(e)try{l=await S0(t)}catch{d=!0}return(!e||d)&&(l=Pp(t)),l}var w0=50,x0=4194304;async function C0(t){let{layer:e,chartConfig:r,rawData:a}=t,i=r.series[0],{x:n,y:s}=i,{idField:o}=zt(e),l=(await e.generateRasterInfo(e.rasterFunction)).bandInfos,d=l.length===1,u=d?l?.[0].name:"";return a.map(c=>({...d&&{[n]:c.attributes?.[u],[s]:c.attributes?.[u]},...c.attributes,[me.uniqueIdsName]:c.attributes?.[o]}))??[]}async function T0(t){let{queryObject:e,queryConfig:r,abortKey:a}=t;if(!e||!Xe(e))throw new Ke(Ye.LayerNotSupported);return await N0({queryObject:e,queryConfig:r,imagerySkipFactor:w0,imageryMaxPixelCount:x0,abortKey:a})}async function F0(t){let{chartConfig:e,queryConfig:r,queryObject:a,sortData:i,calculateTrendLine:n,options:s,abortKey:o}=t;if(!a)throw new Error("QueryObject is undefined!");let l=await T0({queryObject:a,queryConfig:r,abortKey:o}),d=await C0({layer:a,chartConfig:e,rawData:l});i!==!1&&aa({arrayToSort:d,sortingField:e.series[0].x,orderBy:je.Ascending});let u=new Map,{r2:c,trendLinePoints:f}=n!==!1?await Ep({data:d,statsMap:u,queryConfig:r,options:s,queryObject:a,chartConfig:e}):A.scatterplotSeries;return{dataItems:d,r2:c,trendLinePoints:f}}var I0=t=>({x:t.series[0].x,y:t.series[0].y});function O0(t){let{chartConfig:e,layer:r,selectionDataItems:a}=t,i;if(a.length>0){let{x:n,y:s}=I0(e),o=eo(r,n),l=eo(r,s);if(o!==void 0&&l!==void 0){let d=a[0]?.[n],u=a[0]?.[s],c=d,f=u;a.forEach(p=>{let h=p[n],m=p[s];h<d?d=h:h>c&&(c=h),m<u?u=m:m>f&&(f=m)}),i={xBandId:o,yBandId:l,pixelRanges:new np({xmin:d,xmax:c,ymin:u,ymax:f})}}}return i}var Lp="PixelID",A0=[g.BarSeries,g.HistogramSeries,g.ScatterSeries];async function zF(t,e){let r=!1;if(Pv(A0,t))switch(K(t?.series)){case g.BarSeries:e.loaded||await e.load(),r=!!(await e.generateRasterInfo(e.rasterFunction)).attributeTable;break;case g.HistogramSeries:case g.ScatterSeries:r=!0;break}return r}async function P0(t){let{layer:e,chartConfig:r}=t,a;return Xe(e)?a=e:r?.iLayer?.layerType==="ArcGISImageServiceLayer"?a=await Dp(r.iLayer):r?.iLayer?.layerType==="ArcGISTiledImageServiceLayer"&&(a=await Bp(r.iLayer)),a}function E0(t){let e;switch(t){case"f32":e=ce.Single;break;case"f64":e=ce.Double;break;default:e=ce.Integer;break}return e}function Np(t){if(!t.loaded)throw new Error("Raster layer must be loaded to get its ID field name");let e=t.serviceRasterInfo?.attributeTable?.fields.find(r=>r.type==="oid");return e?e.name:Lp}function L0(t){let{layer:e,rasterInfo:r,usePopupTemplateFieldsInfo:a}=t,i=r??e.serviceRasterInfo??void 0,n;if(!e.loaded||!i)throw new Error("Raster layer must be loaded and have rasterInfo available to fetch its fields info");try{if(i.attributeTable)n=i.attributeTable.fields.map(s=>s.toJSON());else{let s=E0(i.pixelType),o=i.bandInfos.map(l=>({name:l.name,alias:l.name,type:s}));a===!0&&e?.popupTemplate?.fieldInfos!==void 0&&o.map(l=>{let d=e.popupTemplate?.fieldInfos?.find(u=>u.fieldName?.toLowerCase()===l.name.toLowerCase())?.label;return d&&d!==l.name&&(l.alias=d),l}),n=[{name:Lp,alias:"Pixel ID",type:ce.OID},...o]}}catch{n=[]}return n}var Dp=ma(async t=>{let e={},r=t.layerDefinition;e.definitionExpression=r?.definitionExpression,e.id=t.id,t.url!==void 0&&(e.url=t.url),t.itemId!==void 0&&t.layerDefinition?.id!==void 0&&(e.portalItem={id:t.itemId});let a=new ob(e);return await a.load(),a},t=>JSON.stringify(t,Object.keys(t).sort())),Bp=ma(async t=>{let e={};e.id=t.id,t.url!==void 0&&(e.url=t.url),t.itemId!==void 0&&(e.portalItem={id:t.itemId});let r=new lb(e);return await r.load(),r},t=>JSON.stringify(t,Object.keys(t).sort())),eo=(t,e)=>{let r,a=t.serviceRasterInfo?.bandInfos;if(e&&a&&a.length>0){let i=e.toLowerCase(),n=a.findIndex(s=>s.name.toLowerCase()===i);n>-1&&(r=n)}return r},UF=t=>{let{chartConfig:e,layer:r,selectionDataItems:a}=t,i=K(e.series),n;switch(i){case g.HistogramSeries:n=f0({chartConfig:e,layer:r,selectionDataItems:a});break;case g.ScatterSeries:n=O0({chartConfig:e,layer:r,selectionDataItems:a});break;default:n=void 0;break}return n};async function N0(t){let{queryObject:e,queryConfig:r,imagerySkipFactor:a,imageryMaxPixelCount:i,abortKey:n}=t,s=[];if(e!==void 0)try{let o=re(e);o.loaded||await o.load();let l={geometry:Mi(r.geometry)??o.fullExtent,autoResample:!0,maxPixelCount:i,skipFactor:a},d=n&&Er.get(n)?.signal||void 0,u=await Gg(o,l,{signal:d});s=op.fromJSON(u.featureSet).features}catch{s=[]}return s}function D0(t){let{queryObject:e,defaultGeometry:r,ignoreViewExtent:a,viewExtent:i}=t,n=r;if(!a&&i){let{xmin:s,xmax:o,ymin:l,ymax:d,zmin:u,zmax:c}=i;n={xmin:s,ymin:l,zmin:u,xmax:o,ymax:d,zmax:c,spatialReference:i.spatialReference.toJSON()}}else if(!n&&e.fullExtent){let{xmin:s,xmax:o,ymin:l,ymax:d,zmin:u,zmax:c}=e.fullExtent;n={xmin:s,ymin:l,zmin:u,xmax:o,ymax:d,zmax:c,spatialReference:e.fullExtent.spatialReference.toJSON()}}return n}function B0(t){let e,r,a;return t!==void 0&&(e=t.type,(e===et.UniqueValue||e===et.ClassBreaks)&&(r=t.field??void 0,e===et.ClassBreaks&&(a=t.normalizationField??void 0))),{rendererType:e,rendererField:r,rendererNormalizationField:a}}var Mp=ma(async(t,e)=>{let r=t.featureCollection,a,i;if(r?.layers?.[0]!==void 0){let o=r.layers[0];a=o.featureSet,i=o.layerDefinition}else i=t.layerDefinition;let n={};if(a!==void 0){if(n.source=op.fromJSON(a).features,i?.fields!==void 0&&(n.fields=i.fields.map(o=>tb.fromJSON(o))),i?.objectIdField!==void 0&&(n.objectIdField=i.objectIdField),i?.geometryType!==void 0){let o=so.fromJSON({geometryType:i.geometryType});o?.type!==void 0&&o?.type!=="extent"&&(n.geometryType=o.type)}i?.spatialReference!==void 0&&(n.spatialReference=i.spatialReference)}else n.id=t.id,i?.id!==void 0&&(n.layerId=i.id),t.url!==void 0&&(n.url=t.url),t.itemId!==void 0&&i?.id!==void 0&&(n.portalItem={id:t.itemId});if(i!==void 0){let o=i.drawingInfo;o?.renderer!==void 0&&(n.renderer=oo.fromJSON(o.renderer))}let s=new Xg(n);return await s.load({signal:e}),s},t=>JSON.stringify(t));async function HF(t){let e;switch(t?.layerType??""){case"ArcGISFeatureLayer":e=await Mp(t);break;case"ArcGISImageServiceLayer":e=await Dp(t);break;case"ArcGISTiledImageServiceLayer":e=await Bp(t);break;default:throw new Ke(Ye.LayerNotSupported)}return e}async function GF(t){let{layer:e,view:r,chartConfig:a,filterByExtent:i,abortSignal:n}=t,s=Xe(e)||qv(a),o;if(s)o=await P0(t);else{let l=re(e),d=st(l);d!==void 0?i&&r!==void 0&&!d.isTable?(d.outFields=["*"],o=await r.whenLayerView(d)):o=e:a?.iLayer&&a.iLayer?.layerType==="ArcGISFeatureLayer"&&(o=await Mp(a.iLayer,n))}return o}function Ct(t,e){let r=re(t),a=[];if(r!==void 0){let i=e===!0&&r?.popupTemplate?.fieldInfos!==void 0;Xe(r)?a=L0({layer:r,usePopupTemplateFieldsInfo:e}):a=r.fields.map(n=>{let s=n.toJSON();if(i){let o=r.popupTemplate?.fieldInfos?.find(l=>l.fieldName?.toLowerCase()===n.name.toLowerCase())?.label;o!==void 0&&o!==n.name&&(s.alias=o)}return s})}return a}function $p(t,e=[]){return e.find(r=>r.name===t)}function Fn(t){let e,r=!1;if(Xe(t))e=[Np(t)];else{let a=st(t);a&&("uniqueIdFields"in a&&a.uniqueIdFields&&a.uniqueIdFields.length>0?e=a.uniqueIdFields:(e=[a.objectIdField],r=!0))}return{idFields:e,isTraditionalTypeOID:r}}function zt(t){let e="",r=!1;if(Xe(t))e=Np(t);else if(t){let a=Fn(t);r=a.isTraditionalTypeOID,a.idFields&&(e=a.idFields[0])}return{idField:e,isTraditionalTypeOID:r}}function Li(t){let e=[ce.Single,ce.Double,ce.SmallInteger,ce.Integer,ce.BigInteger];return t!==void 0&&e.includes(t.type)}function M0(t){return t?.type===ce.Date||t?.type===ce.DateOnly||t?.type===ce.TimestampOffset}function QF(t){return t?.type===ce.String}function ZF(t){return t?.type===ce.TimeOnly}function KF(t){let e=[ce.SmallInteger,ce.Integer,ce.BigInteger];return t!==void 0&&e.includes(t.type)}function $0(t){return t.filter(e=>M0(e)).map(e=>e.name)}function JF(t){return t.filter(e=>Li(e)).map(e=>e.name)}function to(t,e){let r;if(e){let a=re(t).getFieldDomain(e);a instanceof eb&&(r=a)}return r}function ro(t,e){let r=e?.getName(t?.toString())??e?.getName(t)??e?.getName(Number(t));return r===null&&(r=void 0),r}function Uc(t){let{queryObject:e,fieldName:r,fieldValue:a}=t;return Xe(e)?void 0:ro(a,to(e,r))}async function qp(t){let e=[];return t&&!st(t)?.isTable&&t.fieldsIndex&&(e=await sp.getRendererFields(t.renderer,t.fieldsIndex)),e}function q0(t){let e="/rest/services",r=t.toLowerCase(),a=r.indexOf(e);return r=a>-1?t.substring(0,a):t,`${r}/rest/info`}async function R0(t){let e=!0,r=".arcgis.com/",a=t?.url,i=a?.includes(r);if(a&&i&&st(t)?.sourceJSON?.serviceItemId!==void 0){let n=q0(a);try{let s=(await hn(n,{query:{f:"json"}})).data;if(s.owningTenant!==void 0&&s.owningSystemUrl!==void 0){let o=`${s.owningSystemUrl}/sharing/rest/portals/${s.owningTenant}`,l=(await hn(o,{authMode:"auto",query:{f:"json"}})).data,d=new rb({sourceJSON:l});await d.load(),e=d?.sourceJSON?.subscriptionInfo?.dataStoreLevel===void 0}}catch{}}return e}function k0(t){let{queryObject:e,fieldToMatch:r,returnUndefinedIfNotFound:a}=t,i=Ct(e),n=j0(i,r),s=a?"":r;return n?.name??s}function j0(t,e){let r=t.find(a=>e===a.name);return r||(r=t.find(a=>e.toUpperCase()===a.name.toUpperCase())),r}function YF(t){let{fieldsList:e,queryObject:r,returnUndefinedIfNotFound:a}=t,i=e;return i!==void 0&&(i=i.map(n=>k0({queryObject:r,fieldToMatch:n,returnUndefinedIfNotFound:a}))),i}function Rp(t){let{queryObject:e,chartConfig:r,runtimeDataFilters:a,ignoreViewExtent:i,viewExtent:n}=t,{series:s,dataFilters:o}=r,{where:l,gdbVersion:d,timeExtent:u,geometry:c,distance:f,units:p,objectIds:h,spatialRelationship:m}=o??{},{where:y,gdbVersion:b,timeExtent:v,geometry:S,distance:C,units:F,objectIds:O,spatialRelationship:N}=a??{},E=s[0],{query:P}=E,{where:R}=P??{},$=X(s),q={...P};return q.where=Pe([l,y]),$!==x.BarAndLineSplitBy&&$!==x.BoxPlotMonoFieldAndSplitBy&&$!==x.BoxPlotMonoFieldAndCategoryAndSplitBy&&$!==x.BoxPlotMultiFieldsAndSplitBy&&$!==x.BarAndLineSplitByNoAggregation&&(q.where=Pe([q.where,R])),r.orderOptions?.orderByFields!==void 0&&(q.orderByFields=r.orderOptions.orderByFields),q.gdbVersion=b??d,q.timeExtent=Yv(e,v??u),q.geometry=Xe(e)?D0({queryObject:e,defaultGeometry:S??c,ignoreViewExtent:i,viewExtent:n}):Xv({queryObject:e,defaultGeometry:S??c,ignoreViewExtent:i}),q.distance=C??f,q.units=F??p,q.objectIds=O??h,q.spatialRelationship=N??m,P?.outStatistics?.[0]?.statisticType===j.Count&&(q.returnDistinctValues=P?.returnDistinctValues??!1),q}var W0=t=>{let e;if("portalItem"in t){let r=t.portalItem?.id;typeof r=="string"&&(e=r)}return e};function XF(t){let{view:e,portalItemId:r}=t,a;if(e&&r){let i=Array.from(e.map?.allLayers??[]).find(n=>W0(n)===r);i&&(a=i)}return a}var Jr=["1.0.0","1.0.1","2.0.0","3.0.0","3.1.0","3.2.0","3.3.0","3.4.0","3.5.0","3.6.0","3.7.0","3.8.0","3.9.0","3.9.1","3.9.2","3.10.0","3.11.0","4.0.0","4.0.1","5.0.0","6.0.0","6.1.0","6.2.0","6.2.1","6.3.0","6.4.0","7.0.0","7.1.0","7.1.1","7.2.0","7.2.1","7.3.1","7.4.0","7.4.1","7.5.0","7.5.1","7.6.0","8.0.0","8.0.1","9.0.0","9.1.0","9.2.0","9.3.0","9.4.0","9.5.0","9.6.0","9.6.1","9.7.0","10.0.0","11.0.0","12.0.0","13.0.0","14.0.0","14.0.1","15.0.0","16.0.0","16.1.0","16.1.1","17.0.0","17.1.0","17.2.0","17.2.1","18.0.0","18.1.0","18.1.1","18.1.2","18.1.3","19.0.0","20.0.0","20.1.0","20.2.0","21.0.0","21.1.0","22.0.0","23.0.0","23.1.0","23.2.0","23.3.0","24.0.0","24.1.0","24.2.0","24.3.0","24.4.0","24.5.0","24.6.0","24.7.0","24.8.0","25.0.0"],V0="1.0.0",_0="unrecognized.version",z0=[g.LineSeries,g.BarSeries,g.ComboLineAndBarSeries,g.RadarSeries];function Hs(t,e){let r=0;if(t!==e){let a=t.split("."),i=e.split(".");for(let n=0;n<a.length;n+=1){let s=Number.parseInt(a[n],10),o=Number.parseInt(i[n],10);if(s>o||Number.isNaN(o)){r=1;break}if(s<o){r=-1;break}}}return r}function U0(t){return t!==void 0?/^([1-9]\d*|0)(\.(([1-9]\d*)|0)){2}$/u.test(t):!1}function H0(t){let e=yr.Same,r=[];if(U0(t)&&t!==void 0){Jr.sort(Hs);let a=Hs(t,Jr[Jr.length-1]);if(a===1?e=yr.Newer:a===-1&&(e=yr.Older),e===yr.Newer||e===yr.Same)r.push(t);else{for(let i=Jr.length-2;i>=0;i-=1)if(Hs(t,Jr[i])>=0){r=Jr.slice(i,Jr.length);break}r.length===0&&r.push(V0)}}else e=yr.Unrecognized,r.push(_0);return{versionStatus:e,versions:r}}function hr(t){let{series:e}=t,r=("showMean"in t?t.showMean:!1)===!0?e.find(a=>a.type===g.LineSeries):e[0];return r??=e[0],r}function e1(t,e){let r=t!==null?t.toString():null,a=e!=null?e.toString():null;return a!==null&&a!==r?we.SFS:we.SLS}function rt(t,e){let r="";return t!==void 0&&t.includes("=")&&(r=e!==!1?bp({value:t.split("=")[0]}):t.split("=")[0].trim()),r}function ft(t){let{where:e,normalize:r,keepSurroundingQuotes:a,escape:i}=t,n="";return e!==void 0&&e.includes("=")&&(n=e.split("=").slice(1).join("=").trim(),n==="null"?n=null:n.trim()!==""&&!Number.isNaN(Number(n))?n=Number(n):r===!1?i===!0&&(n=Ys(n)):n=bp({value:n,keepSurroundingQuotes:a,escape:i})),n}function dr(t){let e=!1;if(t===void 0||t==="")e=!0;else if(t.includes("=")){let r=rt(t,!1),a=ft({where:t,normalize:!1});e=r===`${a}`}return e}function ur(t){let{where:e,normalize:r,escape:a}=t,i=r===void 0?!0:r,n=rt(e),s=ft({where:e,normalize:i,keepSurroundingQuotes:!0,escape:a}),o=e;return n!==""&&s!==""&&(o=`${n}=${s}`),o}function G0(t){let e=x.PieFromCategory;return t[0].query?.outStatistics===void 0?e=x.PieNoAggregation:t[0].query?.groupByFieldsForStatistics===void 0&&(e=x.PieFromFields),e}function Q0(t){let e=x.BarAndLineMonoField,r=t[0].query?.where;return t[0].query?.groupByFieldsForStatistics===void 0&&(t[0].query?.outStatistics??[]).length>0?e=x.BarAndLineFromFields:r===void 0&&t[0].query?.outStatistics===void 0?e=x.BarAndLineNoAggregation:dr(r)?t.length>1&&(e=x.BarAndLineMultiFields):e=t[0].query?.outStatistics===void 0?x.BarAndLineSplitByNoAggregation:x.BarAndLineSplitBy,e}function Z0(t){let e=x.BoxPlotMonoField,r=t.length===1,a=t.find(o=>o.type===g.LineSeries)??t[0],{x:i}=a,n="y"in a?a.y:"",s=a.query?.where;return i===Bi?typeof n=="object"&&n.length>1?dr(s)?r&&(e=x.BoxPlotMultiFields):e=x.BoxPlotMultiFieldsAndSplitBy:r?e=x.BoxPlotMonoField:dr(s)||(e=x.BoxPlotMonoFieldAndSplitBy):r?e=x.BoxPlotMonoFieldAndCategory:dr(s)?e=x.BoxPlotMultiFieldsAndCategory:e=x.BoxPlotMonoFieldAndCategoryAndSplitBy,e}function X(t){let e=x.NonSpecific;if(t?.[0]!==void 0)switch(K(t)){case g.PieSeries:e=G0(t);break;case g.RadarSeries:case g.BarSeries:case g.LineSeries:case g.ComboLineAndBarSeries:e=Q0(t);break;case g.BoxPlotSeries:e=Z0(t);break}return e}function $r(t){let{seriesConfig:e,xAxisValueFormatType:r,setTimeBinningInfoWhenNotProvided:a,queryObject:i}=t,n=!1;if(!Xe(i)&&re(i)?.fields?.find(s=>s.name===e.x)?.type!=="time-only"&&_t(e)&&e.binTemporalData!==!1&&r===g.DateAxisFormat){let s=X([e]);if(e.temporalBinning&&s!==x.BarAndLineNoAggregation&&s!==x.BarAndLineSplitByNoAggregation){let{unit:o,size:l}=e.temporalBinning;n=a===!0||l!==void 0&&l>0&&o!==void 0}}return n}function _t(t){return z0.includes(t?.type)}function K0(t){let{previousConfig:e,newConfig:r,behaviorAfterLimit:a}=t,i=e.series,n=r.series,s=!1,o=!1;(a===Dr.RenderUpToTheLimit||e.orderOptions?.data===void 0||r.orderOptions?.data===void 0)&&(o=!ir(e.orderOptions?.orderByFields,r.orderOptions?.orderByFields));let l=Bn(i.map(u=>u.query),["where","outStatistics[0].outStatisticFieldName","outStatistics[0].onStatisticField"]),d=Bn(n.map(u=>u.query),["where","outStatistics[0].outStatisticFieldName","outStatistics[0].onStatisticField"]);return s=!ir(l,d),s||o}function J0(t,e){return JSON.stringify(t.dataFilters)!==JSON.stringify(e.dataFilters)}function Y0(t,e){let r=!1;if(e.length&&t.length)if(e[0].x!==t[0].x)r=!0;else{let a=K(t);if(a!==g.HistogramSeries&&a!==g.GaugeSeries){let i=nt(t).sort(),n=nt(e).sort();r=JSON.stringify(i)!==JSON.stringify(n)}}return r}function X0(t,e){return(t??!1)!==(e?.filterBySelection??!1)}function eS(t,e){return _t(t.series[0])&&_t(e.series[0])&&(t.series[0].binTemporalData??A.binTemporalData)!==(e.series[0].binTemporalData??A.binTemporalData)}function tS(t,e){let r=t.axes?.[0].valueFormat.type,a=e.axes?.[0].valueFormat.type,i=X(e.series),n=i===x.BarAndLineNoAggregation||i===x.BarAndLineSplitByNoAggregation,s=r===g.DateAxisFormat&&a===g.NumberAxisFormat,o=r===g.NumberAxisFormat&&a===g.DateAxisFormat;return r!==a&&(n||s||o)}function rS(t){let{previousSeries:e,newConfig:r,setTimeBinningInfoWhenNotProvided:a,queryObject:i}=t,n=r.series?.[0],s=!1,o=!1;if(n&&_t(n)&&$r({seriesConfig:n,xAxisValueFormatType:Yt(r),setTimeBinningInfoWhenNotProvided:a,queryObject:i})){let l=e[0];s=JSON.stringify(l.temporalBinning)!==JSON.stringify(n.temporalBinning),o=a===!0&&(n.temporalBinning?.size??0)<=0}return{timeBinningChanged:s,newTimeBinningWillBeCalculated:o}}function Hc(t,e){return e.length!==t.length}function iS(t,e){return Ei(t)!==Ei(e)}function aS(t,e){return JSON.stringify(t.series[0]?.valueConversion)!==JSON.stringify(e.series[0]?.valueConversion)}function nS(t,e){return JSON.stringify(t.series[0]?.xTemporalBinning)!==JSON.stringify(e.series[0]?.xTemporalBinning)||JSON.stringify(t.series[0]?.yTemporalBinning)!==JSON.stringify(e.series[0]?.yTemporalBinning)||(t.firstDayOfWeek??7)!==(e.firstDayOfWeek??7)||t.outTimeZone!==e.outTimeZone||(t.nullPolicy??dt.Null)!==(e.nullPolicy??dt.Null)}function sS(t,e){return(t.hideEmptyRowsAndColumns??!1)!==(e.hideEmptyRowsAndColumns??!1)}function oS(t,e){return(t.includeLeapDay??Oi.heatChart.includeLeapDay)!==(e.includeLeapDay??Oi.heatChart.includeLeapDay)}function lS(t){let{previousConfig:e,newConfig:r,fieldList:a}=t,i=e.series[0],n=r.series[0],s=!1;if(i.type===g.ScatterSeries&&n.type===g.ScatterSeries&&a&&a.length>0){let o=new Set(i.additionalTooltipFields||[]),l=new Set(n.additionalTooltipFields||[]);if(!ir(o,l)){let d=Array.from(l).filter(u=>!o.has(u));d.length>0&&(s=a?.some(u=>d.includes(u.name)&&!Li(u)))}}return s}function t1(t,e){return(t.colorMatch??!1)!==(e.colorMatch??!1)}function r1(t,e){return(t.stackedType??bt.Side)!==(e.stackedType??bt.Side)}function bn(t){let e={...t};return e.position===void 0&&(e.position=Oi.heatChart.legend.position),e}function i1(t,e){let r=t.legend??{type:g.Legend},a=e.legend??{type:g.Legend},i=bn(r),n=bn(a);return!ir(i,n)}function a1(t,e){let r=t.legend??{type:g.Legend},a=e.legend??{type:g.Legend},i=bn(r),n=bn(a);return i.position!==n.position}function n1(t,e){return JSON.stringify(t.series[0]?.gradientRules)!==JSON.stringify(e.series[0]?.gradientRules)}function s1(t,e){return t.series[0].heatRulesType!==e.series[0].heatRulesType}function o1(t){let{oldConfig:e,newConfig:r}=t,a=!1,i=e.series[0],n=r.series[0],s=K(e.series),o=K(r.series);if(s===g.PieSeries&&o===g.PieSeries){let{slices:l,sliceGrouping:d}=i,{slices:u,sliceGrouping:c}=n,f=l?.map(y=>({sliceId:y.sliceId,label:y.label})),p=u?.map(y=>({sliceId:y.sliceId,label:y.label})),h=d?.label,m=c?.label;a=JSON.stringify(f)!==JSON.stringify(p)||JSON.stringify(h)!==JSON.stringify(m)}return a}function dS(t){let{previousSelectionOIDs:e,options:r}=t,a=!1;return r?.filterBySelection===!0&&(a=e?.length!==r?.selectionData?.selectionOIDs?.length||!ir(e,r?.selectionData?.selectionOIDs)),a}function l1(t,e){return t?.length!==e?.length||t?.some((r,a)=>{let i=ft({where:r?.query?.where}),n=ft({where:e?.[a]?.query?.where});return i!==n})}function d1(t,e){let r=nt(t),a=nt(e);return JSON.stringify(r)!==JSON.stringify(a)}function u1(t,e){let r,a,i,n;return _t(t.series[0])&&(r=t.series[0].temporalBinning?.unit,i=t.series[0].temporalBinning?.size),_t(e.series[0])&&(a=e.series[0].temporalBinning?.unit,n=e.series[0].temporalBinning?.size),Ks(r,i)&&!Ks(a,n)}function c1(t,e){return t.axes?.length===3&&e.axes?.length===2||t.axes?.length===2&&e.axes?.length===3}function p1(t,e){return JSON.stringify(t.series.map(r=>r.assignToSecondValueAxis??!1))!==JSON.stringify(e.series.map(r=>r.assignToSecondValueAxis??!1))}function f1(t,e){let r=t.axes?.map(i=>i?.guides?.map(n=>n?.above===!0)),a=e.axes?.map(i=>i?.guides?.map(n=>n?.above===!0));return JSON.stringify(r)!==JSON.stringify(a)}function h1(t,e){return _c(t)!==_c(e)}function m1(t,e){return(t.showOutliers??A.boxPlot.boxPlotOutliersVisibility)!==(e.showOutliers??A.boxPlot.boxPlotOutliersVisibility)}function y1(t,e){return(t.standardizeValues??A.boxPlot.boxPlotStandardizeValuesVisibility)!==(e.standardizeValues??A.boxPlot.boxPlotStandardizeValuesVisibility)}function g1(t,e){return JSON.stringify(t?.chartRenderer)!==JSON.stringify(e?.chartRenderer)}function b1(t,e){let r=t.axes?.[0].valueFormat.type===g.DateAxisFormat?t.axes[0].valueFormat.intlOptions.timeZone:void 0,a=e.axes?.[0].valueFormat.type===g.DateAxisFormat?e.axes[0].valueFormat.intlOptions.timeZone:void 0;return r!==a}function v1(t,e){let r=!1,a=t.series[0],i=e.series[0];if(a.type===g.ScatterSeries&&i.type===g.ScatterSeries){let{sizePolicy:n}=a,{sizePolicy:s}=i;r=JSON.stringify(n)!==JSON.stringify(s)}return r}function S1(t,e){let r=!1,a=t.series[0],i=e.series[0];if(a.type===g.ScatterSeries&&i.type===g.ScatterSeries){let{sizePolicy:n}=a,{sizePolicy:s}=i;r=n===void 0&&s!==void 0||n!==void 0&&s===void 0||n?.field!==s?.field}return r}function uS(t){let{previousConfig:e,newConfig:r,options:a,previousFilterBySelection:i,previousSelectionOIDs:n,fieldList:s,queryObject:o}=t,{series:l}=r,{series:d}=e,u=K(l),c=!1,f=!1,p=!1,h={common:{layerChanged:!1,queryChanged:!1,xOrYChanged:!1,numberOfSeriesChanged:!1,configFiltersChanged:!1,filterBySelectionChanged:!1,dataForFilterBySelectionChanged:!1,binTemporalDataChanged:!1,timeBinningChanged:!1,newTimeBinningWillBeCalculated:!1,valueFormatChangeRequiresNewData:!1},histogram:{dataPropsChanged:!1},gauge:{valueConversionChanged:!1},boxPlot:{showMeanChanged:!1},heatChart:{binningChanged:!1,hideEmptyRowsAndColumnsChanged:!1,includeLeapDay:!1},scatterPlot:{tooltipFieldsChanged:!1}};switch(h.common.queryChanged=K0({previousConfig:e,newConfig:r,behaviorAfterLimit:a?.chartLimits?.behaviorAfterLimit}),h.common.configFiltersChanged=J0(e,r),h.common.xOrYChanged=Y0(d,l),h.common.filterBySelectionChanged=X0(i,a),h.common.dataForFilterBySelectionChanged=dS({previousSelectionOIDs:n,options:a}),h.common.binTemporalDataChanged=eS(e,r),h.common.valueFormatChangeRequiresNewData=tS(e,r),h.common={...h.common,...rS({previousSeries:d,newConfig:r,setTimeBinningInfoWhenNotProvided:a?.setTimeBinningInfoWhenNotProvided,queryObject:o})},u){case g.HistogramSeries:h.histogram.dataPropsChanged=wv(d,l)||Sv(d,l);break;case g.LineSeries:case g.BarSeries:case g.ComboLineAndBarSeries:h.common.numberOfSeriesChanged=Hc(d,l);break;case g.BoxPlotSeries:at(e)&&at(r)&&(h.common.numberOfSeriesChanged=Hc(d,l),h.boxPlot.showMeanChanged=iS(e,r));break;case g.GaugeSeries:h.gauge.valueConversionChanged=aS(e,r);break;case g.HeatSeries:Pi(e)&&Pi(r)&&(h.heatChart.binningChanged=nS(e,r),h.heatChart.hideEmptyRowsAndColumnsChanged=sS(e,r),h.heatChart.includeLeapDay=oS(e,r));break;case g.ScatterSeries:h.scatterPlot.tooltipFieldsChanged=lS({previousConfig:e,newConfig:r,fieldList:s});break}return f=Object.values(h.common).some(m=>m),(h.gauge.valueConversionChanged||h.histogram.dataPropsChanged||h.boxPlot.showMeanChanged||h.heatChart.binningChanged||h.heatChart.hideEmptyRowsAndColumnsChanged||h.heatChart.includeLeapDay||h.scatterPlot.tooltipFieldsChanged)&&(p=!0),c=f||p,{dataUpdateNeeded:c,dataUpdateDetails:h}}function w1(t,e){let r=Vr(t);if(r&&r.series.length>1){let{preferLabel:a,orderBy:i}=r.orderOptions?.series??{};if(i!==void 0){let n;if(a===!1){let s=X(r.series);n=vp(s)?"splitByValue":"name"}else n="name";r.series.sort((s,o)=>{let l,d;n==="splitByValue"?(l=ft({where:s.query?.where})??"",d=ft({where:o.query?.where})??""):(l=s.name,d=o.name);let[u,c]=i.toUpperCase()===je.Descending?[d,l]:[l,d];return typeof u=="string"&&typeof c=="string"?u.localeCompare(c):Number(u)-Number(c)})}}return Qb({data:r?.series.map(a=>a.id),htmlContainer:e}),r}function cS(t){let e,r=t?.orderOptions?.data;return t.series?.length>0&&r?.orderType===ut.MultiAxes&&(e=[],e.push({sortingField:ne.xField,orderBy:r.orderByX??je.Ascending}),e.push({sortingField:r.orderByY!==void 0?ne.yField:"",orderBy:r.orderByY})),e}function pS(t){let e=X(t.series),r;if(t.orderOptions?.data!==void 0){let a=t.orderOptions?.data?.orderType??ut.Category,i=t.orderOptions?.data&&"orderBy"in t.orderOptions.data?t.orderOptions.data.orderBy:void 0;if(a===ut.Category)a=t.series[0].x;else{a===ut.Mean?a=H.Average:a===ut.Median&&(a=H.Median);let n=e===x.BoxPlotMultiFieldsAndCategory&&typeof t.series[0].y=="string"?t.series[0].y:void 0,s=rt(t.series[0].query?.where),o=ft({where:t.series[0].query?.where});a=He({key:a,y:n,chartSubType:e,splitBy:s,splitByValue:o}),Array.isArray(i)&&(i=je.Ascending)}r={sortingField:a,orderBy:i??je.Ascending,preferLabel:t.orderOptions.data&&"preferLabel"in t.orderOptions.data?t.orderOptions.data.preferLabel??!0:!0}}return r}function fS(t){let e=t.series[0],{x:r,y:a}=e,i=X(t.series)===x.PieFromFields,n=X(t.series)===x.BarAndLineFromFields,s,o="",l;if(t.orderOptions?.data!==void 0){let d=t.orderOptions.data&&"preferLabel"in t.orderOptions.data?t.orderOptions.data.preferLabel:!0;if(o=t.orderOptions?.data?.orderType??ut.Category,l=t.orderOptions?.data&&"orderBy"in t.orderOptions.data?t.orderOptions.data.orderBy:void 0,o===ut.Category?i?o=ct:o=d?r:Oi.originalCategoryValue:o=i?Vt:[a].flat()[0],o!==void 0&&o!==""){let u=uo(t);if(K(t.series)!==g.PieSeries&&o!==r&&t.series?.length>1)switch(u){case bt.Stacked:o=A.technicalSortingFieldBySum;break;case bt.Stacked100:o=A.technicalSortingFieldByPercent;break;case bt.Side:typeof a=="string"&&(o=a);break}s={sortingField:o,orderBy:l??je.Ascending,preferLabel:d}}}else(n||i)&&t.series[0].query?.outStatistics&&(l=t.series[0].query.outStatistics.map(d=>d.onStatisticField),l?.length>1&&(s={sortingField:Oi.originalCategoryValue,orderBy:l,preferLabel:!1}));return s}function io(t){let e,r=K(t.series);if(t.series?.length>0){let a;switch(r){case g.HeatSeries:Pi(t)&&(e=cS(t));break;case g.BoxPlotSeries:at(t)&&(a=pS(t));break;case g.LineSeries:case g.BarSeries:case g.RadarSeries:case g.PieSeries:a=fS(t);break}!e&&a&&(e=[],e.push(a))}return e}function x1(t){let{oldConfig:e,newConfig:r,dataWasUpdated:a}=t,i=K(r.series),n=X(r.series),s=!1,o=!1;if(n!==x.BoxPlotMonoField&&n!==x.BoxPlotMonoFieldAndSplitBy&&r.orderOptions?.data!==void 0){let l=io(e),d=io(r);if(i===g.HeatSeries){let u=l?l[0]:void 0,c=d?d[0]:void 0,f=l?l[1]:void 0,p=d?d[1]:void 0;o=e.orderOptions?.data?.orderType!==r.orderOptions?.data?.orderType||u?.sortingField!==c?.sortingField||u?.orderBy!==c?.orderBy||f?.sortingField!==p?.sortingField||f?.orderBy!==p?.orderBy,s=o||a}else{let u=l?l[0]:void 0,c=d?d[0]:void 0;o=e.orderOptions?.data?.orderType!==r.orderOptions?.data?.orderType||u?.sortingField!==c?.sortingField||u?.orderBy!==c?.orderBy||(u?.preferLabel??!0)!==(c?.preferLabel??!0),s=o||a}}return s}function hS(t=Ae.None,e){return t===Ae.None||t===Ae.Log&&e>0||t===Ae.Sqrt&&e>=0}function kp(t,e){let r={valid:!1};return e===!0?r.invalidType=ae.HistogramEmptyField:t===Ae.Log?r.invalidType=ae.NegativeValueInLogCalculation:t===Ae.Sqrt&&(r.invalidType=ae.NegativeValueInSqrtCalculation),r}function mS(t,e){let r=t;switch(e){case Ae.Log:r=Math.log(t);break;case Ae.Sqrt:r=Math.sqrt(t);break}return r}function yS(t){let e=t;if(t){let r=t.toString().split(".");if(r[1]!==void 0){let a=10**-r[1].length;e=t-a}}return e}function jp(t){let e="field";switch(t){case Ae.Log:e="natural-log";break;case Ae.Sqrt:e="square-root";break;case Ae.None:}return e}async function gS(t){let{queryObject:e,fieldName:r,queryConfig:a,abortKey:i}=t,n=re(e),{idField:s,isTraditionalTypeOID:o}=zt(n),l=o?s:"*",d=`${j.Count}_${s}`,u=`${j.Count}_${r}`,c=`${j.Minimum}_${r}`,f=`${j.Maximum}_${r}`,p={...a,outStatistics:[{statisticType:j.Count,onStatisticField:l,outStatisticFieldName:d},{statisticType:j.Count,onStatisticField:r,outStatisticFieldName:u},{statisticType:j.Minimum,onStatisticField:r,outStatisticFieldName:c},{statisticType:j.Maximum,onStatisticField:r,outStatisticFieldName:f}]},h=await da({queryObject:e,queryConfig:p,abortKey:i}),m=h.get(d)??Number.NaN,y=h.get(u)??Number.NaN,b=h.get(c)??Number.NaN,v=h.get(f)??Number.NaN;return{countExcludingNulls:y,countIncludingNulls:m,min:b,max:v}}async function bS(t){let{queryConfig:e,chartConfig:r,queryObject:a,abortKey:i}=t,n=r.series[0],{x:s,dataTransformationType:o}=n,l=[],{countIncludingNulls:d,countExcludingNulls:u,min:c,max:f}=await gS({queryObject:a,queryConfig:e,fieldName:s,abortKey:i}),p=hS(o,c),h=u<2||c===f,m={...e};return m.where=Pe([m.where,`${s} is not null`]),{rawData:l,dataCompatibleWithTransformation:p,dataCountIncompatible:h,countExcludingNulls:u,countIncludingNulls:d}}function vS(t){let e={...t};return e.avg=e.avg??Number.NaN,e.count=e.count??Number.NaN,e.max=e.max??Number.NaN,e.min=e.min??Number.NaN,e.stddev=e.stddev??Number.NaN,e.sum=e.sum??Number.NaN,e.variance=e.variance??Number.NaN,e.median=e.median??Number.NaN,e}function SS(t){let{seriesConfig:e,layer:r,useFeaturesInView:a,view:i,queryConfig:n}=t,{x:s,dataTransformationType:o}=e,l={layer:r,view:i,field:s,sqlWhere:dr(n.where)?void 0:n.where,useFeaturesInView:a};return o!==Ae.None&&(l={...l,normalizationType:jp(o)}),l}function wS(t){let{seriesConfig:e,layer:r,useFeaturesInView:a,view:i,minValue:n,maxValue:s,queryConfig:o}=t,{x:l,binCount:d,dataTransformationType:u}=e,c={layer:r,view:i,field:l,minValue:n,maxValue:s,numBins:d??Cb,classificationMethod:"equal-interval",sqlWhere:dr(o.where)?void 0:o.where,useFeaturesInView:a};return u!==Ae.None&&(c={...c,normalizationType:jp(u)}),c}function xS(t,e){let r=Number.NaN;return t!==void 0&&e!==void 0&&(r=t-e),r}async function CS(t){let{chartConfig:e,queryConfig:r,queryObject:a,countExcludingNulls:i,countIncludingNulls:n,options:s,errorStrings:o}=t,l=e.series[0],{dataTransformationType:d}=l,u={valid:!0},c=re(a),f=Mi(r?.geometry)?.extent?.toJSON()!==void 0,p=s?.view,h=SS({seriesConfig:l,layer:c,view:p,useFeaturesInView:f,queryConfig:r}),m;if(p!==void 0&&(m=new Rc({geometry:p.extent}),p.extent!==void 0&&Cp(c))){let{distance:E,units:P}=r;E!==void 0&&(m.distance=E),P!==void 0&&(m.units=P)}if(r.timeExtent){let E={start:r.timeExtent[0],end:r.timeExtent[1]};m===void 0?m=new Rc({timeExtent:E}):m.timeExtent=E}h.filter=m;let y;h.outStatisticTypes={exclude:["median"]};try{y=await kc(h)}catch(E){throw new Ke(Ye.QueryFeaturesError,o.errors.queryError,E)}h.outStatisticTypes={include:["median"]};try{let E=await kc(h);E?.median&&(y.median=E.median)}catch{}y=vS(y);let{avg:b,count:v,stddev:S,min:C,max:F,sum:O,median:N}=y;if(v===0)u={...kp(d)};else{let E=wS({seriesConfig:l,layer:c,view:p,useFeaturesInView:f,minValue:yS(C),maxValue:F,valueExpression:h.valueExpression,queryConfig:r});E.filter=m;let P;try{P=await ab(E)}catch($){throw new Ke(Ye.QueryFeaturesError,o.errors.queryError,$)}let R=xS(n,i);u.data={mean:b,stddev:S,min:C,max:F,median:Number(N),bins:P?.bins,count:i,nulls:R,sum:O??void 0},u.data.bins.length>0&&(u.data.bins[u.data.bins.length-1].isLastBin=!0)}return u}async function Wp(t){let{chartConfig:e,queryConfig:r,queryObject:a,options:i,abortKey:n,errorStrings:s}=t,{series:o}=e,l=o[0],d;if(Xe(a))d=await c0(t);else{let{rawData:u,dataCompatibleWithTransformation:c,dataCountIncompatible:f,countIncludingNulls:p,countExcludingNulls:h}=await bS({queryObject:a,chartConfig:e,queryConfig:r,abortKey:n});d={valid:!0},!c||f?d=kp(l.dataTransformationType,f):d=await CS({chartConfig:e,queryObject:a,queryConfig:r,countIncludingNulls:p,countExcludingNulls:h,options:i,errorStrings:s})}return d}async function TS(t){let{queryObject:e,queryConfig:r,chartConfig:a,x:i}=t,{series:n}=a,{dataTransformationType:s}=n[0],o={...r,orderByFields:[i],outFields:[i]};return{valid:!0,data:{dataItems:(await Bt({queryObject:e,queryConfig:o})).map(l=>({[i]:mS(l.attributes[i],s)}))}}}var Xr={groupByCaseBegin:"CASE",groupByOutKeyword:"OUT",groupByCaseEnd:"ELSE 'OUT' END"};function C1(t){return K(t.series)!==g.BoxPlotSeries?A.xAxisField:t.series[0].x}function T1(t){let e=uo(t);return e===bt.Stacked||e===bt.Stacked100}function F1(t,e){let r=[],a=new Map,i=new Map;return t.forEach((n,s)=>i.set(n.id,s)),e.forEach((n,s)=>{let o=i.get(n.id);if(o!==void 0){let l=new Set;for(;a.has(o)&&!l.has(o);)l.add(o),o=a.get(o)??o;o!==s&&(r.push([o,s]),a.set(s,o))}}),r}function FS(t){let e={...t};return t.showMean===!0&&(e.series=[e.series[0]],e.series[0].query?.where!==void 0&&delete e.series[0].query.where),e}function Vp(t){return Pi(t)&&or(t?.axes?.[0]?.valueFormat)&&or(t?.axes?.[1]?.valueFormat)}function vn(t){let{dataInfo:e,chartType:r,subError:a}=t;switch(e.valid=!1,r){case g.BarSeries:case g.ComboLineAndBarSeries:e.invalidType=ae.BarElementExceedsLimit;break;case g.LineSeries:e.invalidType=ae.LineChartExceedsLimit;break;case g.PieSeries:e.invalidType=ae.PieChartExceedsLimit;break;case g.GaugeSeries:e.invalidType=ae.GaugeExceedsLimit;break;case g.BoxPlotSeries:a?.outlierLimit===!0?e.invalidType=ae.BoxPlotOutliersExceedsLimit:e.invalidType=ae.BoxPlotExceedsLimit;break;case g.HeatSeries:e.invalidType=ae.HeatChartExceedsLimit;break}}function IS(t,e){t.valid=!1,t.invalidType=e}function I1(t){let{invalidType:e,chartLimits:r,elementCount:a,seriesCount:i,queryObject:n,filterBySelection:s,formatLocale:o=lf(document.documentElement),isTemporalChart:l,errorStrings:d}=t,u=d.errors.defaultInvalidChart,c,f=new Intl.NumberFormat(o),p=ti(r),{maxCategoryCount:h}=p,m=d.modalHeaders.invalidChart;switch(e){case ae.BarElementExceedsLimit:{m=d.modalHeaders.tooManyFeatures;let y=Number.NaN,b=Number.NaN,v="";i!==void 0&&(i<=p.maxBarChartSeriesCount?i===1?(v=d.errors.uniqueSeriesBarCountCannotExceedLimit,y=p.maxBarUniqueSeriesCountTotal):i===2?(v=d.errors.twoSeriesBarCountCannotExceedLimit,y=p.maxBarTwoSeriesCountTotal,b=p.maxBarTwoSeriesCountPerSeries):i>2&&(v=d.errors.threePlusSeriesBarCountCannotExceedLimit,y=p.maxBarThreePlusSeriesCountTotal,b=p.maxBarThreePlusSeriesCountPerSeries):(v=d.errors.barSeriesCountCannotExceedLimit,b=p.maxBarChartSeriesCount));let S=f.format(y),C=f.format(b),F=a!==void 0?f.format(a):"";u=Re(v,{totalLimit:S,seriesLimit:C,elementCount:F}),c={actualCount:a??Number.NaN,totalLimit:y,seriesLimit:b};break}case ae.LineChartExceedsLimit:{m=d.modalHeaders.tooManyFeatures;let y=Number.NaN,b=Number.NaN,v="";i!==void 0&&(i<=p.maxLineChartSeriesCount?i===1?(v=l?d.errors.uniqueTemporalSeriesLineCountCannotExceedLimit:d.errors.uniqueSeriesLineCountCannotExceedLimit,y=p.maxLineUniqueSeriesCountTotal):i===2?(v=l?d.errors.twoTemporalSeriesLineCountCannotExceedLimit:d.errors.twoSeriesLineCountCannotExceedLimit,y=p.maxLineTwoSeriesCountTotal,b=p.maxLineTwoSeriesCountPerSeries):i>2&&(v=l?d.errors.threePlusTemporalSeriesLineCountCannotExceedLimit:d.errors.threePlusSeriesLineCountCannotExceedLimit,y=p.maxLineThreePlusSeriesCountTotal,b=p.maxLineThreePlusSeriesCountPerSeries):(v=d.errors.lineSeriesCountCannotExceedLimit,b=p.maxLineChartSeriesCount));let S=f.format(y),C=f.format(b),F=a!==void 0?f.format(a):"";u=Re(v,{elementCount:F,seriesLimit:C,totalLimit:S}),c={actualCount:a??Number.NaN,totalLimit:y,seriesLimit:b}}break;case ae.BoxPlotExceedsLimit:{m=d.modalHeaders.tooManyFeatures;let y=Number.NaN,b=Number.NaN,v="";i!==void 0&&(i<=p.maxBoxPlotSeriesCount?i===1?(v=d.errors.uniqueSeriesBoxCountCannotExceedLimit,y=p.maxBoxUniqueSeriesCountTotal):i===2?(v=d.errors.twoSeriesBoxCountCannotExceedLimit,y=p.maxBoxTwoSeriesCountTotal,b=p.maxBoxTwoSeriesCountPerSeries):i>2&&(v=d.errors.threePlusBoxLineCountCannotExceedLimit,y=p.maxBoxThreePlusSeriesCountTotal,b=p.maxBoxThreePlusSeriesCountPerSeries):(v=d.errors.boxSeriesCountCannotExceedLimit,b=p.maxBoxPlotSeriesCount));let S=f.format(y),C=f.format(b),F=a!==void 0?f.format(a):"";u=Re(v,{elementCount:F,seriesLimit:C,totalLimit:S}),c={actualCount:a??Number.NaN,totalLimit:y,seriesLimit:b}}break;case ae.BoxPlotOutliersExceedsLimit:{m=d.modalHeaders.tooManyFeatures;let y=d.errors.boxSeriesOutlierCannotExceedLimit,b=p.maxBoxPlotOutlierLimit,v=f.format(b);u=Re(y,{totalLimit:v}),c={actualCount:a??Number.NaN,totalLimit:b}}break;case ae.HeatChartExceedsLimit:{m=d.modalHeaders.tooManyFeatures;let y=d.errors.heatChartCannotExceedLimit,b=p.maxHeatChartCellLimit,v=f.format(b),S=a!==void 0?f.format(a):"";u=Re(y,{featureCount:S,totalLimit:v}),c={actualCount:a??Number.NaN,totalLimit:b}}break;case ae.PieChartExceedsLimit:{m=d.modalHeaders.tooManyFeatures;let y=d.errors.pieChartSlicesCannotExceedLimit,b=p.maxPieChartSliceCountTotal,v=f.format(b),S=a!==void 0?f.format(a):"";u=Re(y,{sliceCount:S,totalLimit:v}),c={actualCount:a??Number.NaN,totalLimit:b}}break;case ae.GaugeExceedsLimit:{m=d.modalHeaders.tooManyFeatures;let y=d.errors.gaugeCannotExceedLimit,b=p.maxGaugeByFeaturesLimit,v=f.format(b),S=a!==void 0?f.format(a):"";u=Re(y,{featureCount:S,totalLimit:v}),c={actualCount:a??Number.NaN,totalLimit:b}}break;case ae.PieChartMixOfNegativePositiveSlices:m=d.modalHeaders.cannotCombineNegativeAndPositiveSlices,u=d.errors.pieChartCannotHaveMixtureOfPositiveAndNegativeSlices;break;case ae.NegativeValueInSqrtCalculation:m=d.modalHeaders.invalidData,u=d.errors.negativeValueInDataForSqrtTransformation;break;case ae.NegativeValueInLogCalculation:m=d.modalHeaders.invalidData,u=d.errors.negativeValueInDataForLogTransformation;break;case ae.HistogramEmptyField:s===!0?(m=d.modalHeaders.noDataAvailable,u=d.errors.noDataFBSMessage):Jt(n)?(m=d.modalHeaders.noDataAvailable,u=d.errors.noDataFBEMessage):(m=d.modalHeaders.invalidChart,u=d.errors.histogramEmptyField);break;case ae.EmptyDataSet:m=d.modalHeaders.noDataAvailable,s===!0?u=d.errors.noDataFBSMessage:Jt(n)?u=d.errors.noDataFBEMessage:u=d.errors.noDataMessage;break;case ae.NegativeValueInXAxisLogScale:u=d.errors.logarithmicXAxisNotPossible;break;case ae.NegativeValueInYAxisLogScale:u=d.errors.logarithmicYAxisNotPossible;break;case ae.BadData:}if(u===d.errors.defaultInvalidChart&&(e===ae.BarElementExceedsLimit||e===ae.LineChartExceedsLimit||e===ae.HeatChartExceedsLimit||e===ae.PieChartExceedsLimit||e===ae.GaugeExceedsLimit||e===ae.BoxPlotExceedsLimit)&&typeof a=="number"&&typeof i=="number"&&a/i>h){let y=a/i;u=Re(d.errors.categoryCountCannotExceedLimit,{categoryCount:f.format(y),maxCategoryCount:f.format(h)})}return{keyword:e??ae.BadData,header:m,message:u,params:c}}function Ni(t,e){return`${e}_${t}`}function ao(t){let{value:e,mean:r,stdDev:a}=t;return(e-r)/a}function fo(t){let{dataItem:e,chartSubType:r,y:a,splitByValue:i,meanPerField:n,stdDevPerField:s}=t,o=e,l={chartSubType:r,y:a,splitByValue:i},d=He({...l,key:H.Average}),u=He({...l,key:H.StandardDeviation}),c=n??Number(e[d]),f=s??Number(e[u]);return Number.isFinite(c)&&Number.isFinite(f)&&Object.values(H).forEach(p=>{let h=He({key:p,y:a,chartSubType:r,splitByValue:i}),m=e[h];if(m!=null){let y=Number(m);if(Number.isFinite(y)){l={...l,key:p,showOutliers:!1,standardizeValues:!0};let b=He(l);if(o[b]=ao({mean:c,stdDev:f,value:y}),p===H.Min||p===H.Max){l={...l,key:p,showOutliers:!0,standardizeValues:!0},b=He(l),l={...l,standardizeValues:!1,splitByValue:i};let v=He(l);y=Number(e[v]),Number.isFinite(y)&&(o[b]=ao({mean:c,stdDev:f,value:y}))}}}}),o}function OS(t){let{data:e,yList:r,calculateZScore:a=!1}=t,i=e[0],n=new Map;return r.forEach(s=>{let o={};Object.keys(i).forEach(l=>{l.startsWith(s)?o[l.replace(`${s}_`,"")]=i[l]:l.includes(A.rendererSymbolField)&&(o[l]=i[l]),o[A.boxPlot.boxPlotCategory]=s,a&&(o=fo({dataItem:o,chartSubType:x.BoxPlotMultiFields}))}),n.set(s,o)}),Array.from(n.values())}function AS(t){let{data:e,splitByField:r,y:a}=t,i={[A.boxPlot.boxPlotCategory]:a};return e.forEach(n=>{let s=n[r];s!==void 0&&Object.keys(n).forEach(o=>{o===A.rendererSymbolField?i[`${o}_${s?.toString()}`]=n[o]:o===A.boxPlot.boxPlotMeanLineMarkerId?i[o]=n[o]:i[`${s?.toString()}_${o}`]=n[o]})}),[i]}function PS(t){let{splitByField:e,data:r,yList:a,calculateZScore:i=!1,meanAndStdDevPerField:n}=t,s=new Map;return r.forEach(o=>{let l=o[e];a.forEach(d=>{let u={[A.boxPlot.boxPlotCategory]:d};Object.entries(o).forEach(([c,f])=>{c.startsWith(`${d}_`)?u[`${l}_${c.replace(`${d}_`,"")}`]=f:c.includes(A.rendererSymbolField)?u[`${c}_${l}`]=f:c===A.boxPlot.boxPlotMeanLineMarkerId&&(u[c]=o[c])}),i&&(u=fo({dataItem:u,chartSubType:x.BoxPlotMultiFieldsAndSplitBy,splitByValue:l,meanPerField:n?.[Ni(d,j.Average)],stdDevPerField:n?.[Ni(d,j.StandardDeviation)]})),s.set(d,{...s.get(d)??{},...u})})}),Array.from(s.values())}function ES(t){let{data:e,yList:r,calculateZScore:a=!1,meanAndStdDevPerField:i}=t,n=e;return a&&n.forEach(s=>{r.forEach(o=>{fo({dataItem:s,chartSubType:x.BoxPlotMultiFieldsAndCategory,y:o,meanPerField:i?.[Ni(o,j.Average)],stdDevPerField:i?.[Ni(o,j.StandardDeviation)]})})}),n}function LS(t){let{splitByField:e,x:r,data:a}=t,i=new Map;return a.forEach(n=>{let s=n[r],o={[r]:s},l=n[e];Object.entries(n).forEach(([d,u])=>{if(d.includes(A.rendererSymbolField))o[`${A.rendererSymbolField}_${l?.toString()}`]=u;else if(d===A.boxPlot.boxPlotMeanLineMarkerId)o[d]=n[d];else if(d!==e&&d!==r){let c=d!==A.xAxisField&&d!==A.originalCategoryValue?`${l?.toString()}_${d}`:d;o[c]=u}}),i.set(s,{...i.get(s)??{},...o})}),Array.from(i.values())}function NS(t,e){let{series:r}=t,a=r[0],{y:i}=a,n=X(t.series),s={y:n===x.BoxPlotMultiFieldsAndCategory?i:void 0,chartSubType:n},o=t.series.map(l=>{let d=ft({where:l.query?.where,normalize:!1,escape:!0});return d!==null&&`${d}`.startsWith("'")&&`${d}`.endsWith("'")&&(d=d.substring(1,d.length-1)),d});o.length===0&&o.push(" "),e.forEach(l=>{o.forEach(d=>{s.splitByValue=d;let u=He({...s,key:H.Min,showOutliers:!0}),c=He({...s,key:H.Min,showOutliers:!1}),f=He({...s,key:H.Max,showOutliers:!0}),p=He({...s,key:H.Max,showOutliers:!1});l[f]===void 0&&l[p]!==void 0&&(l[f]=l[p]),l[u]===void 0&&l[c]!==void 0&&(l[u]=l[c])})})}function DS(t,e){let r,a,i=t[e[H.IQR]],n=t[e[H.FirstQuartile]],s=t[e[H.ThirdQuartile]];return Number.isFinite(i)&&Number.isFinite(n)&&Number.isFinite(s)&&(r=n-i*1.5,a=s+i*1.5),{outlierMinThreshold:r,outlierMaxThreshold:a}}function Gc(t){let{yField:e,xField:r,xValue:a,splitByField:i,splitByValue:n,outlierMaxThreshold:s,outlierMinThreshold:o,target:l}=t,d;if(r!==void 0&&a!==void 0){let f=typeof a!="string"?a:`'${Ys(a)}'`;d=`${r}=${f.toString()}`}let u;if(i!==void 0&&n!==void 0){let f=typeof n!="string"?n:`'${Ys(n)}'`;u=`${i}=${f.toString()}`}let c;return l==="outliers"&&o!==s?c=`(${e}<${o} OR ${e}>${s})`:l==="alternativeData"&&(o===s?c=`(${e}=${o})`:c=`(${e}>=${o} AND ${e}<=${s})`),[d,u,c].filter(f=>f!==void 0).join(" AND ")}function _p(t){let{data:e,yField:r,x:a,chartSubType:i,splitByField:n}=t,s=i===x.BoxPlotMonoField||i===x.BoxPlotMonoFieldAndCategory||i===x.BoxPlotMonoFieldAndSplitBy||i===x.BoxPlotMonoFieldAndCategoryAndSplitBy?void 0:r,o=Ii(s),l=[],d=[],{maxOperandsPerWhereClause:u}=xn(),c=[],f=[],p=1;return e.forEach((h,m)=>{let{outlierMinThreshold:y,outlierMaxThreshold:b}=DS(h,o);if(typeof y=="number"&&typeof b=="number"){let v={yField:r,outlierMinThreshold:y,outlierMaxThreshold:b};(i===x.BoxPlotMonoFieldAndCategory||i===x.BoxPlotMultiFieldsAndCategory||i===x.BoxPlotMonoFieldAndCategoryAndSplitBy)&&a!==void 0&&a in h&&(v.xField=a,v.xValue=ia({value:h[a],dataContext:h,keepNullValues:!0})),(i===x.BoxPlotMonoFieldAndSplitBy||i===x.BoxPlotMultiFieldsAndSplitBy||i===x.BoxPlotMonoFieldAndCategoryAndSplitBy)&&n!==void 0&&n in h&&(v.splitByField=n,v.splitByValue=h[n]),c.push(Gc({...v,target:"outliers"})),f.push(Gc({...v,target:"alternativeData"})),(p%u===0||m===e.length-1)&&(l.push(Pe(c,"OR")),d.push(Pe(f,"OR")),c=[],f=[])}p+=1}),{outliersFilterBatches:l,dataWithoutOutliersFilterBatches:d}}function BS(t){let{data:e,outlierDataItem:r,chartSubType:a,x:i,y:n,meanAndStdDevPerField:s,splitByField:o}=t,l=s?.[Ni(n,j.Average)],d=s?.[Ni(n,j.StandardDeviation)];if(l===void 0&&d===void 0)switch(a){case x.BoxPlotMultiFields:{let u=Ii(n),c=e[0];l=Number(c[u[H.Average]]),d=Number(c[u[H.StandardDeviation]]);break}case x.BoxPlotMultiFieldsAndCategory:{let u=e.find(c=>c[i]===r[i]);if(u!==void 0){let c=Ii(n);l=Number(u[c[H.Average]]),d=Number(u[c[H.StandardDeviation]])}break}case x.BoxPlotMultiFieldsAndSplitBy:{let u=e.find(c=>c[o]===r[o]);if(u!==void 0){let c=Ii(n);l=Number(u[c[H.Average]]),d=Number(u[c[H.StandardDeviation]])}break}}return{mean:l,stdDev:d}}async function MS(t){let{seriesConfig:e,data:r,uniqueQuery:a,queryObject:i,meanAndStdDevPerField:n,abortKey:s}=t,o=X(e),l=e[0],{x:d}=l,u=rt(l.query?.where),c=re(i),f=zt(c).idField,p=nt(e),h=[];for(let b=0;b<p.length;b+=1){let v=p[b],{outliersFilterBatches:S}=_p({data:r,yField:v,x:d,chartSubType:o,splitByField:u});for(let C=0;C<S.length;C+=1){let F=S[C];if(F!==""){let O=[];d!==A.boxPlot.boxPlotCategory&&O.push(d),O.push(v),u!==""&&O.push(u),O.push(f);let N={...a,where:Pe([a.where,F]),groupByFieldsForStatistics:void 0,outStatistics:void 0,orderByFields:void 0,num:void 0,outFields:O};h.push(Bt({queryObject:i,queryConfig:N,featureCount:1,abortKey:s}))}}}let m=await Promise.all(h),y=new Map;for(let b=0;b<m.length;b+=1){let v=m[b],S=p[b];v.forEach(C=>{let F={...C.attributes};if(F[S]!==void 0){d===A.boxPlot.boxPlotCategory&&(F[A.boxPlot.boxPlotCategory]=S);let O={key:H.Outlier,chartSubType:o};switch(o){case x.BoxPlotMonoFieldAndSplitBy:case x.BoxPlotMultiFieldsAndSplitBy:case x.BoxPlotMonoFieldAndCategoryAndSplitBy:O={...O,splitByValue:F[u]};break;case x.BoxPlotMultiFieldsAndCategory:O={...O,y:S};break}let N=He(O),E=F[S];F[N]=E;let P=`${F[d]}-${F[u]}-${E}`,R=y.get(P);if(F[me.uniqueIdsName]=[...R?.[me.uniqueIdsName]??[],F[f]],delete F[f],sf(o)){let $=He({...O,standardizeValues:!0}),{mean:q,stdDev:B}=BS({data:r,outlierDataItem:F,chartSubType:o,x:d,y:S,splitByField:u,meanAndStdDevPerField:n});q!==void 0&&B!==void 0&&(F[$]=ao({value:E,mean:q,stdDev:B}))}delete F[S],F[A.boxPlot.boxPlotOutlierId]=!0,y.set(P,F)}})}return Array.from(y.values())}async function $S(t){let{data:e,queryObject:r,uniqueQuery:a,elementCount:i,chartConfig:n,chartLimits:s,abortKey:o}=t,l=[],{series:d,showMean:u}=n,c=On({showMean:u,seriesConfig:d}),f=X(d),p=hr(n),{x:h}=p,m=rt(p.query?.where),y=[];for(let v=0;v<c.length;v+=1){let S=c[v],{dataWithoutOutliersFilterBatches:C}=_p({data:e,yField:S,x:h,chartSubType:f,splitByField:m});for(let F=0;F<C.length;F+=1){let O=C[F],N={...a,where:Pe([a.where,O])};N.outStatistics!==void 0&&(N.outStatistics=N.outStatistics?.filter(E=>(E.statisticType===j.Minimum||E.statisticType===j.Maximum)&&E.onStatisticField===S).map(E=>({...E,outStatisticFieldName:`${E.outStatisticFieldName}${A.boxPlot.boxPlotOutliersSuffix}`}))),y.push(In({queryObject:r,uniqueQuery:N,chartConfig:n,elementCount:i,isTimeBinningSeries:!1,showMean:u,chartLimits:s,abortKey:o}))}}let b=await Promise.all(y);for(let v=0;v<b.length;v+=1)l.push(...b[v]);return f!==x.BoxPlotMonoFieldAndCategoryAndSplitBy&&(l=oa({data:l,x:m!==void 0&&m!==""?m:h})),l}async function qS(t){let{queryObject:e,uniqueQuery:r,chartConfig:a,abortKey:i}=t,n,{series:s,showMean:o}=a,l=X(s);if(l===x.BoxPlotMultiFieldsAndCategory||l===x.BoxPlotMultiFieldsAndSplitBy){let d=On({showMean:o,seriesConfig:s}),u={...r};delete u.outStatistics,delete u.groupByFieldsForStatistics,delete u.orderByFields;let c=[];for(let p=0;p<d.length;p+=1){let h=d[p];c.push({statisticType:j.Average,onStatisticField:h,outStatisticFieldName:`${j.Average}_${h}`},{statisticType:j.StandardDeviation,onStatisticField:h,outStatisticFieldName:`${j.StandardDeviation}_${h}`})}u.outStatistics=c;let f=await Bt({queryObject:e,queryConfig:u,featureCount:1,abortKey:i});f.length>0&&(n=f[0].attributes)}return n}function RS(t){let{data:e,additionalData:r,chartConfig:a}=t,i=a.series[0],{x:n}=i,s=rt(i.query?.where);return e.map(o=>{let l=o,d=r.find(u=>u[n]===o[n]&&(s===""?!0:u[s]===o[s]));return d!==void 0&&(l={...o,...d}),l})}function zp(t){let{chartConfig:e,data:r,calculateZScore:a=!1,meanAndStdDevPerField:i}=t,{series:n,showMean:s}=e,o=hr(e),l=X(e.series),{x:d}=o,u=On({showMean:s,seriesConfig:n}),c=r;if(r?.[0]!==void 0){let f=rt(o.query?.where);switch(l){case x.BoxPlotMonoField:c[0][A.boxPlot.boxPlotCategory]=u[0];break;case x.BoxPlotMultiFields:c=OS({data:r,yList:u,calculateZScore:a});break;case x.BoxPlotMonoFieldAndSplitBy:c=AS({data:r,splitByField:f,y:u[0]});break;case x.BoxPlotMultiFieldsAndSplitBy:c=PS({splitByField:f,data:r,yList:u,meanAndStdDevPerField:i,calculateZScore:a});break;case x.BoxPlotMultiFieldsAndCategory:c=ES({data:r,yList:u,meanAndStdDevPerField:i,calculateZScore:a});break;case x.BoxPlotMonoFieldAndCategoryAndSplitBy:c=LS({splitByField:f,x:d,data:r});break;case x.BoxPlotMonoFieldAndCategory:}}return NS(e,c),c}async function kS(t){let{data:e,queryObject:r,uniqueQuery:a,fetchFullBoxPlotData:i,chartConfig:n,elementCount:s,chartLimits:o,abortKey:l}=t,d=e,u=[];if(d!==void 0){let{series:c}=n,f=await qS({queryObject:r,uniqueQuery:a,chartConfig:n,abortKey:l});if(i!==!1){u=await MS({queryObject:r,uniqueQuery:a,seriesConfig:c,data:d,abortKey:l});let p=await $S({queryObject:r,uniqueQuery:a,elementCount:s,data:e,chartConfig:n,chartLimits:o,abortKey:l});d=RS({data:d,additionalData:p,chartConfig:n})}d=zp({chartConfig:n,data:d,meanAndStdDevPerField:f,calculateZScore:!0})}return{dataItems:d,outliers:u}}function jS(t){let{whereValue:e,outStatistics:r,y:a}=t,i=me.outStatistics.outStatisticFieldName??"";return r?.outStatisticFieldName!==void 0?i=r.outStatisticFieldName:r?.onStatisticField!==void 0&&r.statisticType!==void 0?i=`${r.statisticType}_${r.onStatisticField}_${e}`:a!==void 0&&(i=[a].flat()[0]),i}function WS(t){let e=new Map;for(let r=0;r<t.length;r+=1){let a=t[r],i=a.query?.where;if(i!==void 0&&"y"in a){let n=ft({where:i,normalize:!0,escape:!1});if(n!==""){let s=jS({whereValue:n,outStatistics:a.query?.outStatistics?.[0],y:a.y});a.y=s,e.set(n,s)}}}return e}function VS(t){let{uniqueQuery:e,splitByField:r,x:a}=t,i=[...e.groupByFieldsForStatistics??[],a,r].filter(n=>n!==void 0&&n.trim()!==""&&n!==Bi);e.groupByFieldsForStatistics=Array.from(new Set(i))}function Up(t){return t.statisticType===j.ContinuousPercentile||t.statisticType===j.DiscretePercentile}function _S(t){let{uniqueQuery:e,y:r,useGenericOutStatFieldName:a,queryObject:i,chartSubType:n,isTimeBinningSeries:s,returnFeaturesExtent:o,splitByField:l}=t,d=me.outStatistics;if(e.outStatistics?.[0]!==void 0){n!==x.PieFromFields&&n!==x.BarAndLineFromFields&&(e.outStatistics[0].outStatisticFieldName=a?d.outStatisticFieldName:[r].flat()[0]);let{outStatistics:u}=e;for(let c=0;c<u.length;c+=1){let f=u[c];f!==void 0&&Up(f)&&(s&&!na(i)?(u[c].statisticType=j.Count,delete u[c].statisticParameters):u[c]={...u[c],statisticParameters:u[c].statisticParameters??{value:A.defaultStatParameterValue}})}}else{let u=re(i),{idField:c,isTraditionalTypeOID:f}=zt(u),p=f?c:"*";e.outStatistics=[{statisticType:d.statisticType,onStatisticField:p,outStatisticFieldName:a?d.outStatisticFieldName:[r].flat()[0]}]}o===!0&&(!s||Ue(l))&&e.outStatistics?.push({statisticType:j.EnvelopeAggregate,onStatisticField:"1"})}function zS(t){let{chartConfig:e,fetchFullBoxPlotData:r}=t,{series:a}=e,i=Ei(e),n=[{statisticType:j.Average,suffix:H.Average}];r===!0&&(n=[...n,{statisticType:j.Minimum,suffix:H.Min},{statisticType:j.ContinuousPercentile,statisticParameters:{value:.25},suffix:H.FirstQuartile},{statisticType:j.ContinuousPercentile,statisticParameters:{value:.5},suffix:H.Median},{statisticType:j.ContinuousPercentile,statisticParameters:{value:.75},suffix:H.ThirdQuartile},{statisticType:j.Maximum,suffix:H.Max},{statisticType:j.StandardDeviation,suffix:H.StandardDeviation}]);let s=new Set;return i&&"y"in a[0]?[a[0].y].flat().forEach(o=>s.add(o)):a.forEach(o=>{"y"in o&&[o.y].flat().forEach(l=>s.add(l))}),[...s].flatMap(o=>n.map(l=>{let d={onStatisticField:o,statisticType:l.statisticType,outStatisticFieldName:`${o}_${l.suffix}`};return l.statisticType===j.ContinuousPercentile&&(d.statisticParameters=l.statisticParameters),d}))}function US(t,e){for(let r=1;r<e.length;r+=1){let a={...e[r].query?.outStatistics?.[0]};a!==void 0&&t.outStatistics!==void 0&&t.outStatistics.push(a)}}function HS(t){let{uniqueQuery:e,x:r,splitByField:a,unit:i,chartSubType:n,objectIdFields:s,runsOnClientQueryEngine:o}=t;if(i!==void 0){let l=Dv({dateFieldName:r,unit:i,runsOnClientQueryEngine:o});e.orderByFields=l,e.groupByFieldsForStatistics=l,n===x.BarAndLineSplitBy&&!Ue(a)?e.groupByFieldsForStatistics.push(a):n===x.BarAndLineNoAggregation&&(e.groupByFieldsForStatistics=s,e.outStatistics=[{onStatisticField:s.length>1?"*":s[0],outStatisticFieldName:`COUNT_${s[0]}`,statisticType:j.Count}])}}function Hp(t){let{chartConfig:e,options:r,uniqueQuery:a}=t;if(r?.chartLimits?.behaviorAfterLimit===Dr.RenderUpToTheLimit){let i=hp(e,r?.chartLimits);if(i!==void 0){let n=X(e.series);if(n===x.PieFromFields||n===x.BarAndLineFromFields){if(a.outStatistics?.[0]!==void 0){let s=(d,u)=>d.statisticType===j.EnvelopeAggregate===u,o=a.outStatistics.filter(d=>s(d,!0)),l=a.outStatistics.filter(d=>s(d,!1));l.splice(i),a.outStatistics=[...l,...o]}}else a.num=i}}}function ho(t){let{chartConfig:e,queryConfig:r,options:a,queryObject:i,timeIntervalInfo:n,fetchFullBoxPlotData:s}=t,{setTimeBinningInfoWhenNotProvided:o,returnFeaturesExtent:l}=a??{},d=e.series,u=X(d),c=hr(e),{query:f,x:p}=c,h="y"in c?c.y:void 0,m=$r({xAxisValueFormatType:Yt(e),setTimeBinningInfoWhenNotProvided:o,seriesConfig:c,queryObject:i}),y=new Map,b=!1,v=!1,S=!1,C=!1,F=!1,O={};if(f!==void 0){O=Vr(f);let M=rt(f.where),_="";switch(r.fetchNullValues!==!0&&(p!==A.boxPlot.boxPlotCategory&&(_=`${p} IS NOT NULL`),M.trim()!==""&&M!==p&&!dr(f.where)&&(_=Pe([_,`${M} IS NOT NULL`]))),u){case x.BarAndLineSplitBy:{y=WS(d),C=!0,b=!0,v=!0;break}case x.BarAndLineMultiFields:US(O,d),v=!0;break;case x.PieFromFields:case x.BarAndLineFromFields:_="",S=!0,v=!0;break;case x.BarAndLineMonoField:case x.PieFromCategory:v=!0;break;case x.BoxPlotMonoField:case x.BoxPlotMultiFields:S=!0,F=!0;break;case x.BoxPlotMonoFieldAndCategory:case x.BoxPlotMultiFieldsAndCategory:case x.BoxPlotMonoFieldAndSplitBy:case x.BoxPlotMonoFieldAndCategoryAndSplitBy:case x.BoxPlotMultiFieldsAndSplitBy:{F=!0,C=!0,S=!0;break}case x.PieNoAggregation:case x.BarAndLineNoAggregation:case x.BarAndLineSplitByNoAggregation:}if(v&&_S({uniqueQuery:O,y:h,useGenericOutStatFieldName:b,queryObject:i,chartSubType:u,isTimeBinningSeries:m,returnFeaturesExtent:l,splitByField:M}),C&&VS({uniqueQuery:O,splitByField:M,x:p}),at(e)&&F&&(O.outStatistics=zS({chartConfig:e,fetchFullBoxPlotData:s})),S?delete O.orderByFields:r.orderByFields!==void 0&&(O.orderByFields=r.orderByFields.filter(Q=>{let V=Q.split(" ");return!Ue(V[0])})),m&&_t(d[0])){let Q=re(i),{idFields:V}=Fn(Q);Ct(i).find(Z=>Z.name===p)?.type!==ce.DateOnly&&V&&HS({uniqueQuery:O,x:p,splitByField:rt(f.where),unit:n?.unit??d[0].temporalBinning?.unit,chartSubType:u,objectIdFields:V,runsOnClientQueryEngine:Jt(i)})}O.where=_}Hp({chartConfig:e,options:a,uniqueQuery:O});let{gdbVersion:N,geometry:E,distance:P,units:R,timeExtent:$,where:q,objectIds:B,spatialRelationship:k}=r;return N!==void 0&&(O.gdbVersion=N),E!==void 0&&(O.geometry=E),P!==void 0&&(O.distance=P),R!==void 0&&(O.units=R),$!==void 0&&(O.timeExtent=$),B!==void 0&&(O.objectIds=B),k!==void 0&&(O.spatialRelationship=k),q!==void 0&&(O.where=Pe([O.where,q])),{uniqueQuery:O,mapToStatField:y}}async function GS(t){let{queryObject:e,queryConfig:r,chartConfig:a,abortKey:i}=t,n=a.series[0],{x:s,valueConversion:o}=n,l=bo(a),d=await Bt({queryObject:e,queryConfig:r,featureCount:r.num??1,abortKey:i}),u=[{[s]:null}];if(l)u=d.map(c=>{yo(c.attributes,s);let f=Wc(c.attributes[s],o);return{...c.attributes,[s]:f}});else if(d.length>0){let c=d[0].attributes[s]??d[0].attributes[s.toUpperCase()]??d[0].attributes[s.toLowerCase()];c=Wc(c,o),u=[{[s]:c}]}return u}async function QS(t){let{queryObject:e,chartConfig:r,queryConfig:a,options:i,abortKey:n}=t,{chartLimits:s}=i??{},o={valid:!0},{behaviorAfterLimit:l,maxGaugeByFeaturesLimit:d}=s??{},u=bo(r),c=!0,f;if(u&&(f=(await rf({chartConfig:r,queryObject:e,queryConfig:a,behaviorAfterLimit:l,numberMaxOfFeaturesToFetch:d,isGaugeByFeature:u})).elementCount,i?.chartLimits?.behaviorAfterLimit!==Dr.RenderUpToTheLimit&&(c=lr({count:f??0,seriesCount:r.series.length,chartType:g.GaugeSeries,chartLimits:s})),i&&(Number.isFinite(d)||Number.isFinite(f)))){let p=Math.min(d??Number.NaN,f??Number.NaN);Number.isFinite(p)&&(i.chartLimits={...s,maxGaugeByFeaturesLimit:p}),Hp({chartConfig:r,options:i,uniqueQuery:a})}if(Number.isNaN(c)||c){let p=await GS({queryObject:e,chartConfig:r,queryConfig:a,abortKey:n});o.data={dataItems:p},o.count=p.length}else o.count=f,vn({dataInfo:o,chartType:g.GaugeSeries});return o}async function O1(t){let{queryObject:e,chartConfig:r,queryConfig:a}=t,{minimumFromField:i,maximumFromField:n}=r.axes[0],s=[],o="",l="";i!==void 0&&(typeof i=="string"?(o=`${j.Minimum}_${i}`,s.push({statisticType:j.Minimum,onStatisticField:i,outStatisticFieldName:o})):(o=`${i.statisticType}_${i.onStatisticField}`,s.push({...i,outStatisticFieldName:o}))),n!==void 0&&(typeof n=="string"?(l=`${j.Maximum}_${n}`,s.push({statisticType:j.Maximum,onStatisticField:n,outStatisticFieldName:l})):(l=`${n.statisticType}_${n.onStatisticField}`,s.push({...n,outStatisticFieldName:l})));let d={...a,outStatistics:s,orderByFields:void 0,groupByFieldsForStatistics:void 0,returnDistinctValues:void 0,fetchNullValues:void 0,num:void 0},u=await da({queryObject:e,queryConfig:d}),c=u.get(o),f=u.get(l);return{minimumFromData:c,maximumFromData:f}}function Qc(t){let{orderBy:e,axisFormatOptions:r}=t;return e!==void 0&&r!==void 0&&(!Array.isArray(e)||r?.type===g.CategoryAxisFormat)}function Zc(t,e,r){let a=0;if(Array.isArray(r)){let i=t?.toString()??"",n=e?.toString()??"",s=r.indexOf(i),o=r.indexOf(n);s===-1&&(s=r.length),o===-1&&(o=r.length),a=s-o}else r===je.Descending?typeof t=="string"&&typeof e=="string"?a=e.localeCompare(t,void 0,{numeric:!0}):a=(Number(e)||0)-(Number(t)||0):r===je.Ascending&&(typeof t=="string"&&typeof e=="string"?a=t.localeCompare(e,void 0,{numeric:!0}):a=(Number(t)||0)-(Number(e)||0));return a}function ZS(t){let{arrayToSort:e,chartConfig:r,dataOrderParameters:a}=t,i,n,s=!1,o=!1,l=!1;a&&e.length>1&&([i,n]=a,s=i&&i.sortingField.length>0&&Qc({orderBy:i.orderBy,axisFormatOptions:r.axes?.[0]?.valueFormat}),o=n&&n.sortingField.length>0&&Qc({orderBy:n.orderBy,axisFormatOptions:r.axes?.[1]?.valueFormat}),l=s||o),l&&e.sort((d,u)=>{let c=0;if(s&&i?.sortingField){let f=i.orderBy;c=Zc(d[i.sortingField],u[i.sortingField],f)}if(c===0&&o&&n?.sortingField){let f=n.orderBy;c=Zc(d[n.sortingField],u[n.sortingField],f)}return c})}function Sn(t){let{arrayToSort:e,chartConfig:r,fieldList:a,isTimeBinningSeries:i}=t;if(i!==!0&&e[0]!==void 0){let{series:n}=r,s=X(n),o=K(n),l=Yt(r),d=io(r);if(Pi(r)&&e!==void 0)ZS({arrayToSort:e,chartConfig:r,dataOrderParameters:d});else if(d?.[0]!==void 0&&e!==void 0&&e.length>1){let{orderBy:u}=d[0],{sortingField:c}=d[0],f=r.orderOptions?.data?.orderType===ut.Category,p=d[0].preferLabel!==!1,h=s===x.BarAndLineFromFields||s===x.PieFromFields||s===x.BoxPlotMultiFields||s===x.BoxPlotMultiFieldsAndSplitBy,m=h||o===g.PieSeries,y=s===x.PieNoAggregation||s===x.BarAndLineNoAggregation||s===x.BarAndLineSplitByNoAggregation;if(f&&m&&(!p||(o===g.LineSeries||o===g.RadarSeries)&&l===g.NumberAxisFormat)&&(c=A.originalCategoryValue),Array.isArray(u))Yb({arrayToSort:e,orderBy:u,sortingField:c,fieldList:a,isByFieldsChart:h,preferLabel:p});else{let b=l===g.DateAxisFormat&&f;aa({arrayToSort:e,orderBy:u,sortingField:c,forceAscendingOrder:b,isNonAggregated:y,sortByCategory:f,preferLabel:p,isPieOrByFieldsChart:m})}}}}function A1(t){let{alteredConfig:e,dataInfo:r,fieldList:a,options:i,queryObject:n}=t,s=vo(r.data);if(s&&Sn({arrayToSort:s,chartConfig:e,fieldList:a,isTimeBinningSeries:$r({seriesConfig:hr(e),xAxisValueFormatType:Yt(e),setTimeBinningInfoWhenNotProvided:i?.setTimeBinningInfoWhenNotProvided,queryObject:n})}),at(e)){let o=r?.data&&"meanLines"in r.data?r.data.meanLines:void 0;o&&Sn({arrayToSort:o,chartConfig:e})}}function P1(t){let{config:e,previousConfig:r,dataUpdateNeededProps:a,updatedProps:i,options:n,filterBySelection:s,previousSelectionOIDs:o,fieldList:l,queryObject:d}=t,u=Array.from(i.keys()).some(f=>{let p=!1;if(a.includes(f)){let{oldValue:h,newValue:m}=i.get(f)??{};p=!ir(h,m)}return p}),c;if(!u&&i.get("layer")){let{oldValue:f,newValue:p}=i.get("layer")??{};u=Jt(f)!==Jt(p)}if(i.get("layer")&&(c={common:{layerChanged:!0}}),e&&r){let f=uS({previousConfig:r,newConfig:e,options:n,previousFilterBySelection:i.has("filterBySelection")?i.get("filterBySelection")?.oldValue:s,previousSelectionOIDs:o,fieldList:l,queryObject:d});c=f.dataUpdateDetails,u=u||f.dataUpdateNeeded}return{dataUpdateNeeded:u,dataUpdateDetails:c}}function KS(t){return t?.type==="uniqueValue"&&(t.uniqueValueInfos=t.uniqueValueInfos.map(e=>{let r=e.value===null?A.nullValue:e.value;return{...e,value:r}})),t}async function E1(t){let{data:e,queryObject:r,chartConfig:a,allowColorMatch:i}=t,n=!1,s=[];if(i&&!Xe(r)){let{series:o,chartRenderer:l}=a,d=KS(l),u=d?Fi.ChartRenderer:Fi.LayerRenderer,c=r?re(r):void 0,f=d??c?.renderer,p;c&&u===Fi.LayerRenderer?s=await qp(c):u===Fi.ChartRenderer&&(s=vv(f));let h=uv(d,c?.renderer),m=mv({chartRenderer:l,queryObject:r}),y=K(o),b=X(o),v=hr(a),S=rt(v.query?.where);p=new Map;for(let C=0;C<(y===g.HistogramSeries&&e.length>0?1:e.length);C+=1){let F=e[C],O=await yv({seriesConfig:a.series,dataItem:F,renderer:f,rendererType:h,rendererOrigin:u,chartSubType:b,splitByField:S,graphicTemplate:m,mapAttributesToSymbol:p,rendererFieldNames:s});n=n||O.colorMatchApplied}}return{dataItems:e,colorMatchApplied:n,rendererFieldNames:s}}function JS(t){let{itemsA:e,itemsB:r,isPieFromFields:a,x:i,y:n,outStatisticFieldName:s}=t,o=Vr(e),l=Vr(r),d=!1;if(o===void 0&&l!==void 0||o!==void 0&&l===void 0)d=!0;else if(!a){let u=[A.originalCategoryValue,A.originalYCategoryValue,A.originalDateValue,A.xAxisField,A.technicalSortingFieldBySum,A.technicalSortingFieldByPercent,A.pieChart.technicalFieldSlicePercent,A.pieChart.technicalFieldGroupedSlices,A.pieChart.technicalFieldSliceId,A.originalServerBinningRange,A.lastTemporalBin,A.technicalFieldSplitByField,me.uniqueIdsName,ne.valueField,...dp],c=(m,y)=>{let b=y[A.originalCategoryValue];b!==void 0&&i&&(y[i]=b);let v=y[A.originalYCategoryValue];v!==void 0&&n&&(y[n]=v),i&&y[ne.xField]!==void 0&&(y[i]=y[A.originalCategoryValue]!==void 0?y[A.originalCategoryValue]:y[ne.xField],delete y[ne.xField]),n&&y[ne.yField]!==void 0&&(y[n]=y[A.originalYCategoryValue]!==void 0?y[A.originalYCategoryValue]:y[ne.yField],delete y[ne.yField]),s&&y[ne.valueField]!==void 0&&(y[s]=y[ne.valueField],delete y[ne.valueField]);let S={};return Object.keys(y).forEach(C=>{!u.includes(C)&&!C.includes(A.rendererSymbolField)&&(S[C]=y[C])}),m.push(S),m},f=(m,y)=>JSON.stringify(m).localeCompare(JSON.stringify(y)),p=o?.reduce(c,[])?.sort(f),h=l?.reduce(c,[])?.sort(f);p&&h&&i&&p.length!==h.length&&(p=oa({data:p,x:i}),h=oa({data:h,x:i})),d=p?.length!==h?.length||!ir(p,h)}return d}function YS(t){let{chartConfig:e,currentSelectionDataItems:r,options:a}=t,{selectionData:i}=a??{},n=[];if(e!==void 0){let s=e.series,o=X(s),{selectionItems:l}=i??{};if(l!==void 0&&JS({itemsA:l,itemsB:r,isPieFromFields:X(e.series)===x.PieFromFields,x:e.series[0].x,y:"y"in e.series[0]?e.series[0].y.toString():void 0,outStatisticFieldName:e.series[0].query?.outStatistics?.[0]?.outStatisticFieldName})?n=l:n=r??[],s.length>1&&o!==x.BarAndLineNoAggregation&&o!==x.BarAndLineSplitByNoAggregation){let d=rt(s[0].query?.where);n=oa({data:n,x:s[0].x,splitByField:d})}Sn({arrayToSort:n,chartConfig:e})}return n??[]}function Lr(t,e){let r="";if(t.trim()!==""&&e!==void 0)if(e===null)r=`${t} IS NULL`;else{let a=typeof e!="number"?"'":"";r=`${t}=${a}${e.toString()}${a}`}return r}function XS(t){let{dataContext:e,xAxisField:r,yAxisField:a,options:i}=t,n="",{dataContextXMinField:s,dataContextXMaxField:o,dataContextYMinField:l,dataContextYMaxField:d}=A.scatterplotAggregationFields;if(fp({dataContext:e,chartLimits:i?.chartLimits})){let{[s]:u,[o]:c}=e,f=r!==a?e[l]:u,p=r!==a?e[d]:c;if(!Number.isNaN(u)&&!Number.isNaN(c)&&!Number.isNaN(f)&&!Number.isNaN(p)){let h=[];u===c?h.push(`${r}=${u?.toString()}`):(h.push(`${r}>=${u?.toString()}`),h.push(`${r}<=${c?.toString()}`)),f===p?h.push(`${a}=${f?.toString()}`):(h.push(`${a}>=${f?.toString()}`),h.push(`${a}<=${p?.toString()}`)),n=Pe(h)}}else n=Pe([ur({where:Lr(r,e[r])}),a!==void 0?ur({where:Lr(a,e[a])}):""]);return n}function Kc(t){let{fieldsIndex:e,fieldName:r,inputDate:a}=t,i=e.get(r),n=e.getTimeZone(r);return sb(new Date(a),{type:"date"},{type:i,timeZone:n})}function Gp(t){let{xAxisField:e,dataContext:r,queryObject:a}=t,i="",n=r[A.originalServerBinningRange]??r[A.dateBinningRange];if(ha(n)&&n.length===2){let[s,o]=n,l=!0,d=Jt(a);if(d){let u=re(a),{fieldsIndex:c}=u;s=Kc({fieldsIndex:c,fieldName:e,inputDate:s}),o=Kc({fieldsIndex:c,fieldName:e,inputDate:o})}else typeof s=="number"&&typeof o=="number"?Number.isFinite(s)&&Number.isFinite(o)?(s=Ai(s),o=Ai(o)):l=!1:typeof s=="string"&&typeof o=="string"&&(s=new Date(s).toISOString(),o=new Date(o).toISOString());if(l){let u=d?"":"'",c=r[A.lastTemporalBin]===!0?"<=":"<";i=`${e}>=${u}${s}${u} AND ${e}${c}${u}${o}${u}`}}return i}function Qp(t,e){let r="";if(Number.isFinite(t)){let a=1/10**A.queryMaxFloatPrecision;r=`${e}>=${t-a} AND ${e}<=${t+a}`}return r}function Zp(t){let{xAxisField:e,yAxisField:r,splitBy:a,dataContext:i,xAxisFieldType:n,chartConfig:s}=t,o="";if(e!==void 0&&e!==A.boxPlot.boxPlotCategory){let u=ia({value:i[e],dataContext:i,keepNullValues:!0});n===ce.Double?o=Qp(u,e):(Yr(s.axes?.[0].valueFormat)&&(u=Ai(u)),o=ur({where:Lr(e,u),normalize:!1,escape:!0}))}let l=ur({where:a??"",normalize:!1,escape:!0}),d="";if(Cv(s)){let u=X(s.series)===x.BoxPlotMultiFieldsAndCategory?r:void 0,c=He({key:H.Min,showOutliers:!0,splitBy:a,y:u}),f=He({key:H.Max,showOutliers:!0,splitBy:a,y:u}),p=e===A.boxPlot.boxPlotCategory?i[e]:r;if(!Ue(p)){let h=i[c],m=i[f];Number.isFinite(h)&&Number.isFinite(m)&&(d=`${p?.toString()}>=${h?.toString()} AND ${p?.toString()}<=${m?.toString()}`)}}return Pe([o,l,d])}function ew(t){let{xAxisField:e,splitBy:r,dataContext:a,xAxisFieldType:i,chartConfig:n,queryObject:s}=t,o="";if(A.dateBinningRange in a)o=Gp({xAxisField:e,dataContext:a,queryObject:s});else if(X(n.series)!==x.BarAndLineFromFields){let d=ia({value:a[e],dataContext:a,keepNullValues:!0});i===ce.Double?o=Qp(d,e):(Yr(n.axes?.[0].valueFormat)&&i!==ce.TimeOnly&&(d=Ai(d)),o=ur({where:Lr(e,d),normalize:!1,escape:!0}))}let l=ur({where:r??"",normalize:!1,escape:!0});return Pe([o,l])}function tw(t){let{xAxisField:e,dataContext:r,chartConfig:a}=t,i=r[A.originalCategoryValue];return i===void 0&&(i=r[e]),X(a.series)===x.PieFromFields?"":ur({where:Lr(e,i),normalize:!1,escape:!0})}function Jc(t){let{field:e,fieldType:r,fieldValue:a,unit:i,outTimeZone:n,dataTimeZone:s,runsOnClientQueryEngine:o}=t,l,{expression:d}=co({field:e,fieldType:r,unit:i,addIntervalStatement:!0,outTimeZone:n,dataTimeZone:s,runsOnClientQueryEngine:o});return d&&(l=`${d}=${a}`),l}function rw(t){let{xAxisFieldType:e,yAxisFieldType:r,dataContext:a,chartConfig:i,outTimeZone:n,dataTimeZone:s,runsOnClientQueryEngine:o}=t,l=i.series[0],d="";if(l.type===g.HeatSeries){let u,c,f=a[ne.xField],p=a[A.originalCategoryValue],h=a[ne.yField],m=a[A.originalYCategoryValue],y=i.axes?.[0]?.valueFormat?.type,b=i.axes?.[1]?.valueFormat?.type;y===g.CategoryAxisFormat?u=ur({where:Lr(l.x,p??f),normalize:!1,escape:!0}):u=Jc({field:l.x,fieldType:e,fieldValue:f,unit:l.xTemporalBinning?.unit,outTimeZone:n,dataTimeZone:s,runsOnClientQueryEngine:o}),b===g.CategoryAxisFormat?c=ur({where:Lr(l.y,m??h),normalize:!1,escape:!0}):c=Jc({field:l.y,fieldType:r,fieldValue:h,unit:l.yTemporalBinning?.unit,outTimeZone:n,dataTimeZone:s,runsOnClientQueryEngine:o}),u&&(d=u),c&&(d=Pe([d,c]))}return d}function iw(t){let{xAxisField:e,dataContext:r,chartConfig:a}=t,i="",n=a.series[0],{minValue:s,maxValue:o}=r;if(Number.isFinite(s)&&Number.isFinite(o)&&n.type===g.HistogramSeries){let l=rv(e,n.dataTransformationType),d=r.isLastBin?"<=":"<";i=Pe([`${l}>=${s?.toString()}`,`${l}${d}${o?.toString()}`])}return i}function L1(t){let{chartConfig:e}=t,r=K(e.series),a="";switch(r){case g.ScatterSeries:a=XS(t);break;case g.HeatSeries:a=rw(t);break;case g.RadarSeries:case g.BarSeries:case g.LineSeries:case g.ComboLineAndBarSeries:a=ew(t);break;case g.BoxPlotSeries:a=Zp(t);break;case g.HistogramSeries:a=iw(t);break;case g.PieSeries:a=tw(t);break}return a}async function aw(t){let{queryObject:e,queryConfig:r,chartConfig:a,currentSelectionDataItems:i,options:n,errorStrings:s,abortKey:o}=t,l=X(a.series),d={valid:!0,data:{dataItems:[]}};if(i!==void 0&&i.length>0){let u=hr(a),{x:c}=u,f="y"in u?u.y:"",p=Ct(e).find(S=>S.name===c)?.type,h=[],m=i.reduce((S,C)=>{let F=[];if(me.uniqueIdsName in C)h.push(C[me.uniqueIdsName]);else{switch(l){case x.BoxPlotMonoFieldAndSplitBy:case x.BoxPlotMultiFieldsAndSplitBy:case x.BoxPlotMonoFieldAndCategoryAndSplitBy:{let E=rt(u.query?.where??""),P=`_${H.Average}`;Object.keys(C).forEach(R=>{if(R.includes(P)){let $=R.replace(P,"");$.trim()!==""&&F.push(Lr(E,$))}});break}}let O=[f].flat(),N=O.length===1?O[0]:"";if(l===x.BoxPlotMultiFieldsAndCategory){let E=`_${H.FirstQuartile}`,P=Object.keys(C).find(R=>R.includes(E));P!==void 0&&(N=P.replace(E,""))}F.length===0&&F.push(""),F.forEach(E=>{let P=Zp({chartConfig:a,xAxisField:c,yAxisField:N,splitBy:E,dataContext:C,xAxisFieldType:p});S.push(P)})}return S},[]),y=re(e);if(y!==void 0&&h.length>0){let S=zt(y).idField;m.push(`${S} IN (${h.join(",")})`)}let b=m.join(" OR "),v={...r};v.where=Pe([v.where,b]),d=await mo({queryObject:e,chartConfig:a,queryConfig:v,options:n,errorStrings:s,abortKey:o})}return d}async function nw(t){let{queryObject:e,queryConfig:r,chartConfig:a,currentSelectionDataItems:i,dataForFilterBySelectionChanged:n,options:s,errorStrings:o,abortKey:l}=t;gn(e);let{series:d}=a,u=K(d),c=Yt(a),f={valid:!0},p=s?.selectionData?.selectionItems??[];n||(p=YS({chartConfig:a,currentSelectionDataItems:i,options:s}));let h=!1;switch(u){case g.HeatSeries:f.data={dataItems:p};break;case g.PieSeries:if(X(a.series)===x.PieFromFields){let{x:m,y}=a.series[0],b=Vr(p);b.forEach(v=>{m in v&&(v[ct]=v[m],delete v[m]),y in v&&(v[Vt]=v[y],delete v[y])}),f.data={dataItems:b}}else f.data={dataItems:p};f.count=p.length,h=!0;break;case g.BoxPlotSeries:at(a)&&(f=await aw({queryObject:e,queryConfig:r,chartConfig:a,currentSelectionDataItems:i,options:s,errorStrings:o,abortKey:l}));break;case g.BarSeries:case g.ComboLineAndBarSeries:case g.RadarSeries:case g.LineSeries:if(p.length===0||!$r({xAxisValueFormatType:c,setTimeBinningInfoWhenNotProvided:s?.setTimeBinningInfoWhenNotProvided,seriesConfig:d[0],queryObject:e}))f.data={dataItems:p},f.count=p.length*d.length,h=!0;else{let m={...r};if(i!==void 0&&i.length>0){let y=i.map(v=>Gp({xAxisField:d[0].x,dataContext:v,queryObject:e})),b=Pe(y,"OR");m.where=Pe([m.where,b])}f=await go({queryObject:e,queryConfig:m,chartConfig:a,options:s})}break;case g.HistogramSeries:{if(p.length===0)f.data={mean:Number.NaN,median:Number.NaN,stddev:Number.NaN,max:Number.NaN,min:Number.NaN,bins:[]},f.count=0;else{let{x:m}=d[0],y=p.map((S,C)=>{let{minValue:F,maxValue:O}=S,N=C===p.length-1?"<=":"<";return`${m} >= ${F} AND ${m} ${N} ${O}`}),b=Pe(y,"OR"),v={...r};v.where=Pe([v.where,b]),f=await Wp({queryObject:e,chartConfig:a,queryConfig:v,options:s,errorStrings:o,abortKey:l})}break}case g.ScatterSeries:{if(p.length===0){let{r2:m,trendLinePoints:y}=A.scatterplotSeries;f.data={dataItems:[],r2:m,trendLinePoints:y,count:0},f.count=0}else{let{r2:m,trendLinePoints:y}=Pp({data:p,chartConfig:a});f.data={dataItems:p,r2:m,trendLinePoints:y},f.count=p.length}break}}return h&&f.data!==void 0&&Sn({arrayToSort:"dataItems"in f.data?f.data.dataItems:f.data,chartConfig:a}),f}async function mo(t){let{queryObject:e,chartConfig:r,queryConfig:a,options:i,errorStrings:n,abortKey:s}=t,o={valid:!0},l=Ei(r),d=await no({queryObject:e,queryConfig:a,fetchFullBoxPlotData:!l,options:i,chartConfig:r,abortKey:s});if(!l)o=d;else{let u={dataItems:[]};u.meanLines=d.data.dataItems;let c=FS(r),f=(await no({queryObject:e,queryConfig:a,fetchFullBoxPlotData:!0,options:i,chartConfig:c,abortKey:s})).data;u.dataItems=f.dataItems,u.outliers=f.outliers,o.data=u}return o}async function sw(t){let{queryObject:e,chartConfig:r,queryConfig:a,options:i,errorStrings:n,abortKey:s,fieldList:o,currentSelectionDataItems:l,dataForFilterBySelectionChanged:d,preFetchedQueryResponse:u}=t,{series:c}=r,{filterBySelection:f}=i??{},p=K(c),h={valid:!0};if(f===!0)h=await nw({queryObject:e,queryConfig:a,chartConfig:r,currentSelectionDataItems:l,dataForFilterBySelectionChanged:d,options:i,errorStrings:n,abortKey:s});else switch(p){case g.HeatSeries:gn(e),h=await af({chartConfig:r,queryConfig:a,queryObject:e,errorStrings:n,options:i,abortKey:s});break;case g.BoxPlotSeries:at(r)&&(h=await mo({queryObject:e,chartConfig:r,queryConfig:a,options:i,errorStrings:n,abortKey:s}));break;case g.BarSeries:case g.ComboLineAndBarSeries:case g.PieSeries:case g.RadarSeries:case g.LineSeries:{let m={queryObject:e,queryConfig:a,chartConfig:r,options:i,abortKey:s,fieldList:o,preFetchedQueryResponse:u};$r({xAxisValueFormatType:Yt(r),setTimeBinningInfoWhenNotProvided:i?.setTimeBinningInfoWhenNotProvided,seriesConfig:c[0],queryObject:e})?h=await go(m):h=await no(m);break}case g.ScatterSeries:h.data=await nf({queryObject:e,queryConfig:a,options:i,chartConfig:r,errorStrings:n,abortKey:s});break;case g.HistogramSeries:h=await Wp({queryObject:e,queryConfig:a,chartConfig:r,options:i,abortKey:s,errorStrings:n});break;case g.GaugeSeries:gn(e),h=await QS({queryObject:e,chartConfig:r,queryConfig:a,options:i,abortKey:s});break}return h}async function N1(t){let{queryObject:e,chartConfig:r,abortKey:a,currentSelectionDataItems:i,dataForFilterBySelectionChanged:n,options:s,errorStrings:o,fieldList:l,preFetchedQueryResponse:d}=t,u={valid:!0},c=Rp({queryObject:e,chartConfig:r,runtimeDataFilters:s?.runtimeDataFilters,ignoreViewExtent:s?.ignoreViewExtent,viewExtent:s?.view?.extent});return Zv(a),u=await sw({chartConfig:r,queryObject:e,queryConfig:c,currentSelectionDataItems:i,dataForFilterBySelectionChanged:n,options:s,abortKey:a,errorStrings:o,fieldList:l,preFetchedQueryResponse:d}),u.queryConfig=c,u}function ow(t,e,r){let a=new Map;for(let i=0;i<t.length;i+=1)a.set(t[i],{[r]:t[i]});for(let i=0;i<e.length;i+=1){let n=e[i][r];(typeof n=="string"||typeof n=="number")&&a.set(n,e[i])}return[...a.values()]}async function lw(t){let{seriesData:e,chartConfig:r,queryConfig:a,queryObject:i,categoryOrDateCount:n,behaviorAfterLimit:s,abortKey:o}=t,{series:l}=r,d=e,u=X(l),c=Yt(r);if(s!==Dr.RenderUpToTheLimit&&n!==void 0&&n>e.length&&u!==x.BarAndLineFromFields&&u!==x.BarAndLineNoAggregation&&u!==x.PieNoAggregation&&c===g.CategoryAxisFormat){let{x:f}=l[0],p={...a,returnDistinctValues:!0,outFields:[f]};delete p.outStatistics,delete p.orderByFields,delete p.groupByFieldsForStatistics;let h=(await Bt({queryObject:i,queryConfig:p,featureCount:n,abortKey:o})).map(m=>m.attributes[f]).filter(m=>m!=null);h.length>e.length&&(d=ow(h,e,f))}return d}function dw(t,e){let r=t,{series:a}=e;if(Yt(e)===g.CategoryAxisFormat&&a[0].query?.outStatistics?.[0].statisticType===j.Count){let i=a.reduce((n,s)=>{let o=s.query?.outStatistics?.[0].outStatisticFieldName??[s.y].flat()[0];return n[o]=0,n},{});for(let n=0;n<t.length;n+=1)t[n]={...i,...t[n]}}return r}var Kp=[x.BarAndLineMonoField,x.BarAndLineMultiFields,x.PieNoAggregation,x.PieFromCategory,x.BoxPlotMonoFieldAndCategory,x.BoxPlotMultiFieldsAndCategory,x.BoxPlotMonoFieldAndCategoryAndSplitBy],uw=8e3;function Jp(t,e){let r=t;return e===G.Week?r/=7:e===G.Month?r/=30:e===G.Year&&(r/=365),r=Math.ceil(r),r}function Nr(t){let{date:e,unit:r,nextOrPrevious:a,size:i}=t;if(i!==void 0&&Number.isFinite(i)){let n=a==="next"?i:-i;switch(r){case G.Second:return ie.fromMillis(e).plus({seconds:n}).valueOf();case G.Minute:return ie.fromMillis(e).plus({minutes:n}).valueOf();case G.Hour:return ie.fromMillis(e).plus({hours:n}).valueOf();case G.Week:case G.Day:return ie.fromMillis(e).plus({days:n}).valueOf();case G.Month:return ie.fromMillis(e).plus({months:n}).valueOf();case G.Year:return ie.fromMillis(e).plus({years:n}).valueOf()}}return e}function cw(t){let{binFirstOrLastIndex:e,data:r,x:a,timeIntervalInfo:i}=t,{unit:n,size:s}=i,o=n===G.Week?(s??1)*7:s,l=r[e][a],d=e,u=Nr({date:l,unit:n,size:o,nextOrPrevious:"next"}),c=r[d][a];for(;d+1<r.length&&c<u;)d+=1,c=r[d]?.[a];let f=d+1>=r.length,p=d;f&&r[p]!==void 0&&(p+=1);let h=f?Nr({date:l,unit:n,size:o,nextOrPrevious:"next"}):r[d][a];return{binStartDate:l,binEndDate:h,last:f,nextBinFirstOrLastIndex:d,sliceStartIndex:e,sliceEndIndex:p}}function pw(t){let{binFirstOrLastIndex:e,data:r,x:a,timeIntervalInfo:i}=t,{unit:n,size:s}=i,o=n===G.Week?(s??1)*7:s,l=r[e][a],d=e,u=Nr({date:l,unit:n,size:o,nextOrPrevious:"previous"}),c=r[d][a];for(;d-1>=0&&c>u;)d-=1,c=r[d]?.[a];let f=d-1<=0,p=e;return f&&r[p]!==void 0&&(p-=1),f&&(d=0),{binStartDate:f?Nr({date:l,unit:n,size:o,nextOrPrevious:"previous"}):r[d][a],binEndDate:l,nextBinFirstOrLastIndex:d,sliceStartIndex:d,sliceEndIndex:p,last:f}}function fw(t){let{binsToRegroup:e,statisticType:r,y:a,nullPolicy:i}=t,n;i!==dt.Interpolate&&(n=i===dt.Zero?0:null);let s=e.filter(o=>Number.isFinite(o[a]));if(s.length>0)switch(r){case j.Count:case j.Sum:n=y0(s,o=>o[a]);break;case j.Minimum:n=sa(s,o=>o[a]).min;break;case j.Maximum:n=sa(s,o=>o[a]).max;break;case j.Average:n=m0(s,o=>o[a]);break;case j.ContinuousPercentile:}return n}function hw(t){let{data:e,seriesConfig:r,timeIntervalInfo:a,dateMinTimestamp:i,dateMaxTimestamp:n}=t,s=[],{unit:o}=a,l=a.size??1,d=r[0],{x:u}=d,c,f;if(_t(d)&&(f=d.temporalBinning?.nullPolicy,c=d.temporalBinning?.timeAggregationType),l>1||o===G.Week||o===G.Month||o===G.Year){let{query:p}=r[0],h=nt(r),{statisticType:m}=p?.outStatistics?.[0]??zi,y=!1,b=c===$e.End?e.length-1:0,v={binFirstOrLastIndex:b,data:e,x:u,timeIntervalInfo:a};for(;!y;){let S={},{binStartDate:C,binEndDate:F,last:O,nextBinFirstOrLastIndex:N,sliceStartIndex:E,sliceEndIndex:P}=c===$e.End?pw(v):cw(v);if(y=O,S=c===$e.End?S=e[P-1]:S=e[b],F>n&&C<n||C<i&&F>i||C>=i&&F<=n){let R=e.slice(E,P).filter(B=>!(A.dateBinModel in B));h.forEach(B=>{S[B]=fw({binsToRegroup:R,statisticType:m,y:B,nullPolicy:f})});let $=R.map(B=>B[Pr]).filter(B=>B!==void 0),q=Kb($);q!==void 0&&(S[Pr]=q),S[u]=C,S[A.xAxisField]=C,S[A.dateBinningRange]=[C,F],delete S[A.dateBinModel],s.push(S)}else O&&c!==$e.End&&s.length>0&&(s[s.length-1][A.dateBinningRange][1]=s[s.length-1][A.dateBinningRange][1]+1);b=N,v.binFirstOrLastIndex=N}c===$e.End&&(s=s.reverse())}else l===1?s=e.map((p,h)=>{let m=p[u],y=e[h+1]?.[u];return y=typeof y=="number"?y-1:Nr({date:m,unit:o,size:l,nextOrPrevious:"next"}),{...p,[A.dateBinningRange]:[m,y]}}):s=e;return s}function Yp(t){let{dateMinTimestamp:e,dateMaxTimestamp:r,timeIntervalInfo:a}=t,{size:i,unit:n}=a,s=0,o=0;if(i!==void 0&&Number.isFinite(i)&&Number.isFinite(e)&&Number.isFinite(r)){let l=-1,d=ie.fromMillis(e),u=ie.fromMillis(r);switch(n){case G.Second:l=u.diff(d,"seconds").get("seconds");break;case G.Minute:l=u.diff(d,"minutes").get("minutes");break;case G.Hour:l=u.diff(d,"hours").get("hours");break;case G.Day:case G.Month:case G.Year:l=u.diff(d,"days").get("days");break;case G.Week:l=u.diff(d,"weeks").get("weeks");break}Number.isFinite(l)&&(o=Math.ceil(l)+1,s=i===1?o:Math.ceil(o/i))}return{numberOfFinalBinsWithinDataRange:s,numberOfSingleBinsWithinDataRange:o}}function Xp(t){let e=t[0].temporalBinning?.nullPolicy;return t.reduce((r,a)=>{r[A.dateBinModel]=void 0;let i=a.query?.outStatistics?.[0].outStatisticFieldName??[a.y].flat()[0];return e!==dt.Interpolate&&(r[i]=e===dt.Zero?0:null),r},{})}function mw(t){let{dateMaxTimestamp:e,numberOfFinalBinsWithinDataRange:r,numberOfSingleBinsWithinDataRange:a,data:i,seriesConfig:n,timeIntervalInfo:s}=t,{size:o,unit:l}=s,{x:d}=n[0],u=n[0].temporalBinning?.timeAggregationType,c=i[0][d],f=e;if(o!==void 0&&Number.isFinite(o)&&a/r!==o){let p=Math.ceil(a/r)*r-a;l===G.Week&&(p*=7);let h=Xp(n);if(u===$e.End){let m=i[0][d];for(let y=0;y<p;y+=1)m=Nr({date:m,unit:l,size:1,nextOrPrevious:"previous"}),i.push({...h,[d]:m,[A.xAxisField]:m});p>0&&(c=i[i.length-1][d])}else{let m=i[i.length-1][d];for(let y=0;y<p;y+=1)m=Nr({date:m,unit:l,size:1,nextOrPrevious:"next"}),i.push({...h,[d]:m,[A.xAxisField]:m});f=i[i.length-1][d]}}return{newDateMin:c,newDateMax:f}}function yw(t){let{numberOfSingleBinsWithinDataRange:e,dataLength:r,unit:a}=t;return Jp(r,a)>=e}async function gw(t){let{queryObject:e,queryConfig:r,x:a}=t,i=`MIN_${a}`,n=`MAX_${a}`,s=`COUNT_${a}`,o={...r,outStatistics:[{statisticType:j.Minimum,onStatisticField:a,outStatisticFieldName:i},{statisticType:j.Maximum,onStatisticField:a,outStatisticFieldName:n},{statisticType:j.Count,onStatisticField:a,outStatisticFieldName:s}]};delete o.groupByFieldsForStatistics,delete o.orderByFields;let l=await da({queryObject:e,queryConfig:o}),d=l.get(i),u=l.get(n),c=l.get(s);return typeof d=="string"&&(d=new Date(d).valueOf()),typeof u=="string"&&(u=new Date(u).valueOf()),{dateRange:{dateMinTimestamp:d,dateMaxTimestamp:u},numberOfFeatures:c}}function bw(t){let{newDateMin:e,newDateMax:r,seriesConfig:a,data:i,numberOfSingleBinsWithinDataRange:n,initialNumberOfBins:s,timeIntervalInfo:o}=t,{unit:l}=o,d=i;if(!yw({numberOfSingleBinsWithinDataRange:n,dataLength:s,unit:l})){let{x:u}=a[0],c=a[0].temporalBinning?.timeAggregationType,f=Xp(a),p=c===$e.End?r:e,h=c===$e.End?i.length-1:0;for(;h<i.length&&(c===$e.End&&p>e||c!==$e.End&&p<r);)p!==i[h][u]?d.push({...f,[u]:p,[A.xAxisField]:p}):h=c===$e.End?h-1:h+1,p=Nr({date:p,unit:l===G.Month||l===G.Year?G.Day:l,size:1,nextOrPrevious:c===$e.End?"previous":"next"})}return d}function vw(t){let{data:e,seriesConfig:r,dateMinTimestamp:a,dateMaxTimestamp:i}=t,n=e;if(r[0].temporalBinning?.trimIncompleteTimeInterval!==!1){let{timeAggregationType:s}=r[0].temporalBinning??{},o=e[0]?.[A.dateBinningRange]?.[0],l=e[e.length-1]?.[A.dateBinningRange]?.[1];if(s===$e.End?o<a:l>i)if(s===$e.End){let d=o;for(;d<a&&e.length>0;)e.shift(),e.length>0&&(d=e[0][A.dateBinningRange]?.[0])}else{let d=l;for(;d>i&&e.length>0;)e.pop(),e.length>0&&(d=e[e.length-1][A.dateBinningRange]?.[1])}}return n}function Sw(t){let{groupByFieldsForStatistics:e,dateField:r,queryStartDate:a,queryEndDate:i,y:n,binIndex:s,lastBin:o}=t,l=e===""?Xr.groupByCaseBegin:e;return l=Re(Lx,{groupByFieldsForStatistics:l,dateField:r,startDate:`${a}`,endDate:`${i}`,y:[n].flat()[0],binIndex:`${s}`,endDateOperand:o?"<=":"<"}),l}function*ww(t){let{queryObject:e,seriesConfig:r,queryConfig:a,completeData:i}=t;for(let n=0;n<r.length;n+=1){let s=r[n],{query:o,x:l,y:d}=s,u=[{onStatisticField:o?.outStatistics?.[0]?.onStatisticField??"",outStatisticFieldName:j.ContinuousPercentile,statisticType:j.ContinuousPercentile,statisticParameters:{value:.5}}],c=Xr.groupByCaseBegin;for(let p=0;p<i.length;p+=1){let h=i[p],[m,y]=h[A.dateBinningRange],b=Ai(m),v=Ai(y);c=Sw({groupByFieldsForStatistics:c,queryStartDate:b,queryEndDate:v,dateField:l,y:[d].flat()[0],binIndex:p,lastBin:p===i.length-1})}c=`${c} ${Xr.groupByCaseEnd}`;let f={...a,groupByFieldsForStatistics:[c],outStatistics:u,orderByFields:void 0};yield Bt({queryObject:e,queryConfig:f,noBatch:!0})}}async function xw(t){let{queryObject:e,data:r,seriesConfig:a,queryConfig:i}=t,n=r,{statisticType:s}=a[0].query?.outStatistics?.[0]??zi;if(s===j.ContinuousPercentile&&n.length>0){let o=ww({queryObject:e,completeData:n,seriesConfig:a,queryConfig:i}),l=(await Promise.all(o)).flat();if(l.length>0){let{isInItem:d,expr:u}=Cn(l[0].attributes);d&&l.forEach(c=>{let f=c.attributes[`${u}`];if(f!==void 0){let[p,h]=f.split("|");if(h!==void 0){let m=c.attributes[j.ContinuousPercentile];n[h][`${p}`]=m}}})}}return n}function Yc(t){let{dataItem:e,nullPolicy:r,statField:a,aggregationType:i}=t;if(a){let n=e[a];if(i===j.Count&&n===0||n===void 0||n===null)switch(!0){case r===dt.Zero:e[a]=0;break;case r===dt.Null:e[a]=null;break;case r===dt.Interpolate:delete e[a];break}}}function Cw(t){let{chartConfig:e,queryResults:r,mapToStatField:a,splitByField:i,x:n,y:s,nullPolicy:o,queryObject:l}=t,d=Ip(n),u=Ct(l).find(m=>m.name===n)?.type,c=[],f=e.series[0],p="temporalBinning"in f?f.temporalBinning?.trimIncompleteTimeInterval:!1,h="temporalBinning"in f?f.temporalBinning?.timeAggregationType:!1;return r.forEach((m,y)=>{if(!(p&&(y===0&&h===$e.End||y===r.length-1&&h===$e.Start))){let{attributes:b,stackedAttributes:v}=m,S=b[d.lowerBoundaryAlias],C=b[d.upperBoundaryAlias],F=S,O=C,N=(P,R)=>{let $=P;if(R===ce.DateOnly&&(typeof P=="string"&&P.length===10||typeof P=="number"))if(typeof P=="string"){let q=P.split("-");q.length===3&&($=ie.local(Number(q[0]),Number(q[1]),Number(q[2])).valueOf())}else $=new Date(P),$=new Date($.valueOf()+$.getTimezoneOffset()*6e4),$=ie.local($.getFullYear(),$.getMonth()+1,$.getDate()).valueOf();else typeof P=="string"&&["+","-"].forEach(q=>{q&&P.lastIndexOf(q)===P.length-6&&($=new Date(P.slice(0,P.lastIndexOf(q))).valueOf())});return $};S=N(S,u),C=N(C,u);let E=f.query?.outStatistics?.[0].statisticType??zi.statisticType;if(typeof S=="number"&&typeof C=="number"){let P={...b};P[A.originalServerBinningRange]=[F,O],P[n]=S,P[A.xAxisField]=S,P[A.dateBinningRange]=[S,C],delete P[d.lowerBoundaryAlias],delete P[d.upperBoundaryAlias],v&&i&&!Ue(i)&&a?v.forEach(q=>{let B=q[i];if(B===null||typeof B=="string"||typeof B=="number"){let k=a?.get(B);k!==void 0&&(P[k]=q[me.outStatistics?.outStatisticFieldName??""],Yc({dataItem:P,statField:k,nullPolicy:o,aggregationType:E}))}}):typeof s=="string"&&Yc({dataItem:P,statField:s,nullPolicy:o,aggregationType:E});let{featureExtent:R,featureExtentKey:$}=ef({feature:m,splitByField:i});R&&(P[$]=R),c.push(P)}}}),c}async function Tw(t){let{queryObject:e,queryResults:r,x:a,queryConfig:i,seriesConfig:n,dateRange:s,timeIntervalInfo:o}=t,l=r,{dateMinTimestamp:d,dateMaxTimestamp:u}=s;if(d&&u){let c=r.length;if(aa({arrayToSort:l,sortingField:a}),c>1){let{numberOfFinalBinsWithinDataRange:f,numberOfSingleBinsWithinDataRange:p}=Yp({dateMinTimestamp:d,dateMaxTimestamp:u,timeIntervalInfo:o}),{newDateMin:h,newDateMax:m}=mw({dateMaxTimestamp:u,data:l,numberOfFinalBinsWithinDataRange:f,numberOfSingleBinsWithinDataRange:p,seriesConfig:n,timeIntervalInfo:o});l=bw({newDateMin:h,newDateMax:m,seriesConfig:n,data:l,initialNumberOfBins:c,numberOfSingleBinsWithinDataRange:p,timeIntervalInfo:o}),aa({arrayToSort:l,sortingField:a}),l=hw({data:l,seriesConfig:n,dateMinTimestamp:d,dateMaxTimestamp:u,timeIntervalInfo:o}),l=vw({data:l,seriesConfig:n,dateMinTimestamp:d,dateMaxTimestamp:u}),e&&(l=await xw({queryObject:e,data:l,seriesConfig:n,queryConfig:i}))}}return l}function Fw(t){return Math.floor(Math.min(Math.max(8,Math.sqrt(t??8)),128)+.5)}function Iw(t){let{dateRange:e,numberOfFeatures:r}=t,a,i,{dateMinTimestamp:n,dateMaxTimestamp:s}=e;if(n&&s){typeof n=="string"&&(n=new Date(n).valueOf()),typeof s=="string"&&(s=new Date(s).valueOf());let o=Fw(r),l=(s-n)/o,d=ip.findIndex(b=>b.threshold>l),u=ip[d],{unitMs:c,preferredIntervalSize:f}=u;({unit:a}=u);let p=l/c,h=f.findIndex(b=>b>=p),m=f[h],y=h===0?f[0]:f[h-1];i=m-p<p-y?m:y}return{size:i,unit:a}}function Ow(t){let{series:e,isTimeBinningSeries:r,setTimeBinningInfoWhenNotProvided:a}=t,i=!1;if(_t(e)&&r){let{unit:n,size:s}=e.temporalBinning??{};i=!Ks(n,s)&&a===!0}return i}function Aw(t){let e=[];for(let r=1;r<=6;r+=1){let a=t[`EXPR_${r}`]??t[`Expr${r}`]??t[`expr${r}`]??t[`EXPR${r}`];a!==null&&e.push(a)}return ie.local(Number(e[0]??1969),Number(e[1]??1),Number(e[2]??1),Number(e[3]??0),Number(e[4]??0),Number(e[5]??0)).valueOf()}function ef(t){let{feature:e,splitByField:r,chartSubType:a}=t,i;if(e.aggregateGeometries&&"Extent"in e.aggregateGeometries)i=e.aggregateGeometries.Extent;else{let o=e.aggregateGeometries??e.geometry;o?.extent&&(i=o.extent)}let n=i?.toJSON(),s=Pr;return n!==void 0&&r!==void 0&&a!==void 0&&a===x.BarAndLineSplitBy&&(s=e.attributes[r]!==void 0?`${Pr}_${e.attributes[r]}`:Pr),{featureExtent:n,featureExtentKey:s}}function Pw(t){let{input:e,x:r,splitByField:a}=t;return e.reduce((i,n)=>(a!==void 0&&a!==r&&!(A.technicalFieldSplitByField in n)&&delete n[a],Object.assign(i,n)),{})}function oa(t){let{data:e,x:r,splitByField:a}=t,i=e;if(e!==void 0&&e.length>0){let n=new Map;for(let s of e){let o=s[r];if(o==null||o===void 0)continue;let l=n.get(o)??[];l.push(s),n.set(o,l)}i=Array.from(n.values(),s=>Pw({input:s,x:r,splitByField:a}))}return i}function Ew(t,e){let r=t,a=K(e);if(a!==g.PieSeries&&a!==g.BoxPlotSeries){let i=nt(e),n=e[0].y;t.forEach(s=>{let o=0;if(i.forEach(l=>{let d=s[l];Number.isFinite(d)&&(o+=d)}),s[A.technicalSortingFieldBySum]=o,Number.isFinite(o)&&o>0){let l=s[n];if(Number.isFinite(l)){let d=l/o;s[A.technicalSortingFieldByPercent]=d}}})}return r}function Lw(t,e){let r=e,a=nt(t),i=a.length===1;return a.forEach(n=>{let s=Ii(i?void 0:n),o=r[s[H.FirstQuartile]],l=r[s[H.ThirdQuartile]];Number.isFinite(o)&&Number.isFinite(l)&&l>=o&&(r[s[H.IQR]]=l-o)}),r}function Nw(t,e){let r=e.series[0],a=t;if(r.type===g.HeatSeries){let{x:i,y:n}=r;a[ne.xField]=a[i]?.toString(),delete a[i],a[ne.yField]=a[n]?.toString(),delete a[n];let s=r.query?.outStatistics?.[0]?.outStatisticFieldName;s&&(a[ne.valueField]=a[s],delete a[s])}return a}function yo(t,e){[e].flat().forEach(r=>{r&&(t[r]===void 0&&(t[r]=t[r.toUpperCase()]!==void 0?t[r.toUpperCase()]:t[r.toLowerCase()]),t[r]!==void 0?(r!==r.toUpperCase()&&delete t[r.toUpperCase()],r!==r.toLowerCase()&&delete t[r.toLowerCase()]):delete t[r])})}function Dw(t,e){let r=[];me.outStatistics.outStatisticFieldName&&Object.keys(t).includes(me.outStatistics.outStatisticFieldName)?r=[me.outStatistics.outStatisticFieldName]:r=Array.from(new Set(e.flatMap(a=>a.query?.outStatistics?.map(i=>i.outStatisticFieldName)))),yo(t,r)}function Bw(t,e){let r={...t};return t!==void 0&&e[0]!==void 0&&(r=Object.keys(t).reduce((a,i)=>{let n=e.find(s=>s.outStatisticFieldName?.toLowerCase()===i.toLowerCase())?.onStatisticField;return n!==void 0&&t[i]!==void 0&&n!==i?a[n]=t[i]:a[i]=t[i],a},{})),r}function Mw(t){let{dataItem:e,splitByField:r,y:a,fieldOID:i}=t;if(e!==void 0&&!Ue(r)&&!Ue(a)){let n=e[r],s=`${a}_${n?.toString()}`;e[s]=e[a],i&&a!==i&&delete e[a]}}function $w(t,e){Object.keys(t).forEach(r=>{if(r.startsWith(`${e}_`)){let a=r.slice(e.length+1);t[a]=t[r],delete t[r]}})}function qw(t,e){let r=1;switch(t){case x.BarAndLineFromFields:case x.PieFromFields:r=e.series[0].query?.outStatistics?.length??1;break;case x.BoxPlotMultiFields:case x.BoxPlotMultiFieldsAndSplitBy:r=e.series[0].y.length;break;case x.BarAndLineNoAggregation:case x.BoxPlotMonoField:case x.BoxPlotMonoFieldAndCategory:case x.BoxPlotMultiFieldsAndCategory:case x.BoxPlotMonoFieldAndSplitBy:case x.BoxPlotMonoFieldAndCategoryAndSplitBy:case x.PieFromCategory:case x.BarAndLineSplitByNoAggregation:case x.PieNoAggregation:case x.BarAndLineSplitBy:case x.BarAndLineMonoField:case x.BarAndLineMultiFields:case x.NonSpecific:}return r}function Rw(t){let{attributes:e,showMean:r,chartSubType:a}=t;r&&(a===x.BoxPlotMonoFieldAndSplitBy||a===x.BoxPlotMultiFieldsAndSplitBy||a===x.BoxPlotMonoFieldAndCategoryAndSplitBy)&&(e[A.boxPlot.boxPlotMeanLineMarkerId]=!0)}function kw(t){let{queryResponse:e,chartConfig:r,maxCategoryCount:a}=t,i=X(r.series);return a&&Number.isFinite(a)&&a<e.length&&Kp.includes(i)?e.slice(0,a):e}function jw(t){let{attributes:e,uniqueCategoryList:r,maxCategoryCount:a,x:i,chartSubType:n}=t,s=!1;if(i&&a&&Number.isFinite(a)&&!Kp.includes(n))if((n===x.BarAndLineFromFields||n===x.PieFromFields)&&Object.keys(e).length>a)Object.keys(e).filter(o=>o!==j.EnvelopeAggregate).forEach((o,l)=>{l>=a&&delete e[o]});else{let o=e[i];o!==void 0&&(r.size===a&&!r.has(o)?s=!0:r.add(o))}return s}function Ww(t){let{attributes:e,xValue:r,yValue:a,x:i,y:n,xFieldDomain:s,yFieldDomain:o,chartType:l,chartSubType:d,xAxisValueFormat:u,yAxisValueFormat:c}=t,f,p;d!==x.PieFromFields&&(s&&(typeof r=="string"||typeof r=="number")&&(f=ro(r,s)),o&&l===g.HeatSeries&&typeof n=="string"&&(typeof a=="string"||typeof a=="number")&&(p=ro(a,o)),f!==void 0&&f!==r&&(typeof f!="string"||!tt(u))&&(e[A.originalCategoryValue]=e[i],e[i]=f),typeof n=="string"&&!tt(c)&&p!==void 0&&p!==a&&(e[A.originalYCategoryValue]=e[n],e[n]=p))}function Vw(t){let e,[r,a,i]=t.split(":");return Number.isFinite(Number(r))&&Number.isFinite(Number(a))&&Number.isFinite(Number(i))&&(e=new Date(2e3,0,1,Number(r),Number(a),Number(i)).valueOf()),e}function tf(t){let{queryObject:e,queryResponse:r,chartConfig:a,mapToStatField:i,splitByField:n,isTimeBinningSeries:s,resultLimit:o,showMean:l,chartLimits:d,fieldList:u}=t,{series:c}=a,f=X(c),p=K(c),{x:h}=c[0],m="y"in c[0]?c[0].y:void 0,y=c[0].query?.outStatistics??[],b=or(a?.axes?.[0]?.valueFormat),{originalYCategoryValue:v,originalCategoryValue:S,originalDateValue:C}=A,F=to(e,h),O=typeof m=="string"?to(e,m):void 0,N=$0(u??[]).includes(h),E=[],P=0,R=new Set,{maxCategoryCount:$}=ti(d),q=kw({queryResponse:r,chartConfig:a,maxCategoryCount:$});for(let B=0;q[B]&&B<q.length&&!(o!==void 0&&P>=o);B+=1){P+=qw(f,a);let k=q[B],M={...k.attributes};if(jw({attributes:M,uniqueCategoryList:R,maxCategoryCount:$,x:h,chartSubType:f}))continue;if(Dw(M,c),f===x.PieFromFields||f===x.BarAndLineFromFields)M=Bw(M,y);else if(typeof m=="string"&&f===x.BarAndLineSplitByNoAggregation){let oe=re(e),{idField:Fe,isTraditionalTypeOID:ke}=zt(oe);Mw({dataItem:M,splitByField:n,y:m,fieldOID:ke?Fe:void 0})}else m&&(f===x.BoxPlotMonoField||f===x.BoxPlotMonoFieldAndCategory||f===x.BoxPlotMonoFieldAndSplitBy||f===x.BoxPlotMonoFieldAndCategoryAndSplitBy)&&$w(M,typeof m=="string"?m:m[0]);Rw({attributes:M,showMean:l,chartSubType:f});let _=M[h],Q=typeof m=="string"?M[m]:void 0;_===null&&c[0]?.query?.fetchNullValues===!0&&f!==x.PieFromFields&&(M[S]=null,_=A.nullValue),b||(N&&typeof _=="string"?_=new Date(_).valueOf():s&&(_=Aw(M))),typeof _=="string"&&u?.find(oe=>oe.name===h)?.type===ce.TimeOnly&&(M[S]=_,_=Vw(_));let{outStatisticFieldName:V}=me.outStatistics??{},{featureExtent:Z,featureExtentKey:U}=ef({feature:k,splitByField:n,chartSubType:f});if(Z&&(M[U]=Z),f===x.BarAndLineSplitBy&&V!==void 0){let oe=M[n],Fe=i?.get(oe);Fe!==void 0&&(oe===n&&(M[A.technicalFieldSplitByField]=M[Fe]),M[Fe]=M[V]),delete M[V]}else(f===x.PieNoAggregation||f===x.BarAndLineNoAggregation||f===x.BarAndLineSplitByNoAggregation)&&(N?M[C]=_:_!==A.nullValue&&(M[S]=_),wb({isXAxis:!0,chartType:p,valueFormat:a.axes?.[0]?.valueFormat})&&(M[A.xAxisField]=`${_}-${B}`),M[me.uniqueIdsName]=k.getObjectId());p===g.BoxPlotSeries&&(M=Lw(c,M)),p===g.PieSeries&&typeof _=="number"&&(M[S]===void 0&&(M[S]=M[h]),_=`${_}`),_!==void 0&&(M[S]===void 0&&(M[S]=M[h]),M[h]===null?M[h]=p===g.HeatSeries?"null":A.nullValue:M[h]=_,Ww({attributes:M,xValue:_,yValue:Q,x:h,y:m,xFieldDomain:F,yFieldDomain:O,chartType:p,chartSubType:f,xAxisValueFormat:a.axes?.[0].valueFormat,yAxisValueFormat:a.axes?.[1]?.valueFormat}),p===g.HeatSeries&&typeof m=="string"&&M[m]===null&&(M[m]="null",M[v]=null),M[A.xAxisField]===void 0&&(M[A.xAxisField]=M[h])),M=Nw(M,a),E.push(M)}return E}async function In(t){let{queryObject:e,uniqueQuery:r,chartConfig:a,mapToStatField:i,abortKey:n,elementCount:s,isTimeBinningSeries:o,showMean:l,chartLimits:d,usePopupTemplateFieldsInfo:u,preFetchedQueryResponse:c}=t,{series:f}=a,p=X(f),h=[],m=p===x.BarAndLineSplitBy||p===x.BarAndLineSplitByNoAggregation?rt(f[0].query?.where):"",y=c??await Bt({queryObject:e,queryConfig:r,featureCount:s,abortKey:n}),b=Ct(e,u),{x:v}=f[0];return h=tf({queryObject:e,queryResponse:y,chartConfig:a,mapToStatField:i,splitByField:m,isTimeBinningSeries:o,fieldList:b,resultLimit:r.num,showMean:l,chartLimits:d}),p!==x.BarAndLineSplitByNoAggregation&&p!==x.BarAndLineFromFields&&(m!==""&&(h=oa({data:h,x:v,splitByField:m})),h=Ew(h,f)),h}async function rf(t){let{chartConfig:e,queryObject:r,queryConfig:a,numberMaxOfFeaturesToFetch:i,behaviorAfterLimit:n,isGaugeByFeature:s}=t,{series:o}=e,l=X(o),{x:d}=o[0],u=o.length,c,f;if(l===x.BoxPlotMonoField||l===x.BoxPlotMonoFieldAndSplitBy?(f=u,c=f):l===x.BoxPlotMultiFields||l===x.BoxPlotMultiFieldsAndSplitBy?(f=e.series[0].y.length,c=f):l===x.PieFromFields||l===x.BarAndLineFromFields?(f=o[0].query?.outStatistics?.filter(p=>p.statisticType!==j.EnvelopeAggregate).length??0,c=f):c=await Gv({queryObject:r,x:d,chartSubType:l,queryConfig:a,isGaugeByFeature:s}),c!==void 0){let p=l===x.BoxPlotMonoField||l===x.BoxPlotMonoFieldAndCategory||l===x.BoxPlotMonoFieldAndSplitBy;f=Js(l)&&!p?c*u:c}return n===Dr.RenderUpToTheLimit&&f!==void 0&&i!==void 0&&i<f&&(f=i,c=Math.ceil(f/u)),{categoryOrDateCount:c,elementCount:f}}async function no(t){let{chartConfig:e,queryConfig:r,fetchFullBoxPlotData:a,options:i,queryObject:n,abortKey:s,fieldList:o,preFetchedQueryResponse:l}=t,d=Ei(e),{chartLimits:u,usePopupTemplateFieldsInfo:c}=i??{},f=i?.replaceNoValueCategoryWithZero??A.options.replaceNoValueCategoryWithZero,{behaviorAfterLimit:p}=u??{},h,m={valid:!0},y,b=!1,v=e.series,S=v[0],C=X(e.series);if(Xe(n))h=K(v)===g.BarSeries?await Mx(t):m;else{if(S!==void 0){let F=K(v),{uniqueQuery:O,mapToStatField:N}=ho({chartConfig:e,queryObject:n,queryConfig:r,fetchFullBoxPlotData:a,options:i}),{categoryOrDateCount:E,elementCount:P}=await rf({chartConfig:e,queryObject:n,queryConfig:r,behaviorAfterLimit:p,numberMaxOfFeaturesToFetch:O.num}),R=!Number.isFinite(P),$=R||lr({count:P??0,seriesCount:v.length,chartType:F,chartLimits:u});if($&&(y=await In({queryObject:n,uniqueQuery:O,chartConfig:e,preFetchedQueryResponse:l,mapToStatField:N,elementCount:P,isTimeBinningSeries:!1,showMean:d,chartLimits:u,usePopupTemplateFieldsInfo:c,abortKey:s}),at(e)&&y!==void 0&&(m.data=await kS({data:y,queryObject:n,fetchFullBoxPlotData:a,uniqueQuery:O,chartConfig:e,elementCount:P,chartLimits:u,abortKey:s}),u?.maxBoxPlotOutlierLimit!==void 0&&($=(m.data.outliers??[]).length<=u.maxBoxPlotOutlierLimit,b=!$)),R&&(E=y.length,P=Js(C)?E*v.length:E,$=lr({count:P,seriesCount:v.length,chartType:F,chartLimits:u})),$)){if(F===g.PieSeries){C===x.PieFromFields&&(y=yn({dataToConvert:y[0],x:ct,y:Vt,fieldList:o}));let q="";C===x.PieFromFields?q=Vt:"y"in S&&typeof S.y=="string"&&(q=S.y),iv(y,q)?m.data={dataItems:y}:IS(m,ae.PieChartMixOfNegativePositiveSlices)}else if((F===g.RadarSeries||F===g.BarSeries||F===g.LineSeries||F===g.ComboLineAndBarSeries)&&(C===x.BarAndLineFromFields&&"y"in S&&typeof S.y=="string"?y=yn({dataToConvert:y[0],x:S.x,y:S.y,fieldList:o}):y=await lw({queryObject:n,seriesData:y,chartConfig:e,queryConfig:r,categoryOrDateCount:E,behaviorAfterLimit:p,abortKey:s}),P=Js(C)?y.length*v.length:y.length,$=lr({count:P,seriesCount:v.length,chartType:F,chartLimits:u}),$)){f&&(y=dw(y,e));let q={};if(_t(S)){let{size:B,unit:k}=S.temporalBinning??{};B!==void 0&&k!==void 0&&(q={size:B,unit:k})}m.data={dataItems:y,timeIntervalInfo:q}}}$||vn({dataInfo:m,chartType:F,subError:{outlierLimit:b}}),m.count=P}h=m}return h}function _w(t){let e,{start:r,end:a}=co({field:"",unit:t,addIntervalStatement:!1});return a&&(e=Array.from({length:a+(r===0?1:0)},(i,n)=>(n+(r??1)).toString())),e}function zw(t){return t.hideEmptyRowsAndColumns===!0&&(t.nullPolicy!==dt.Zero||t.series[0].query?.outStatistics?.[0].statisticType===j.Count)}function Uw(t){let{dataItems:e,valueField:r,filterOutZero:a}=t,i=[null];a&&i.push(0);let n=new Set(e.filter(o=>!i.includes(o[r])).map(o=>o[ne.xField])),s=new Set(e.filter(o=>!i.includes(o[r])).map(o=>o[ne.yField]));return e.filter(o=>n.has(o[ne.xField])&&s.has(o[ne.yField]))}function Hw(t){let{dataItems:e,xUniqueValues:r,yUniqueValues:a,valueField:i,emptyCellValue:n,x:s,y:o,queryObject:l}=t,d=[],u=new Set;for(let c of e){let f=c[A.originalCategoryValue]!==void 0?c[A.originalCategoryValue]:c[ne.xField],p=c[A.originalYCategoryValue]!==void 0?c[A.originalYCategoryValue]:c[ne.yField];u.add(`${f}|${p}`)}for(let c of r){let f=String(c);for(let p of a){let h=String(p);if(!u.has(`${f}|${h}`)){let m=l?Uc({queryObject:l,fieldName:s,fieldValue:f})??c:c,y=l?Uc({queryObject:l,fieldName:o,fieldValue:h})??p:p;d.push({[A.originalCategoryValue]:c===null?null:c,[A.originalYCategoryValue]:p===null?null:p,[ne.xField]:c===null?"null":m,[ne.yField]:p===null?"null":y,[i]:n})}}}return d}function Xc(t){let{day:e,month:r,includeLeapDay:a}=t;return r===2&&e>(a?29:28)||[4,6,9,11].includes(r)&&e>30}async function af(t){let{chartConfig:e,queryConfig:r,queryObject:a,completeHeatChartDataset:i=!0,errorStrings:n,options:s,abortKey:o}=t,l={valid:!0},d;if(Pi(e)){let{nullPolicy:u}=e,c=e.series[0],{x:f,y:p,query:h,xTemporalBinning:m,yTemporalBinning:y}=c,b=h?.outStatistics?.[0]?.outStatisticFieldName??"",v=h?.outStatistics?.[0]?.statisticType??j.Count;r?.outStatistics?.[0]&&Up(r.outStatistics[0])&&!("statisticParameters"in r?.outStatistics[0])&&(r.outStatistics[0].statisticParameters={value:A.defaultStatParameterValue});let S=zw(e),C=ne.valueField,F=u===dt.Zero?0:null;if(Vp(e)){let O=await Uv({chartConfig:e,queryObject:a,queryConfig:r,returnFeaturesExtent:s?.returnFeaturesExtent,errorStrings:n,abortKey:o});if(!lr({count:O?.length??0,seriesCount:1,chartType:g.HeatSeries,chartLimits:s?.chartLimits}))vn({dataInfo:l,chartType:g.HeatSeries});else if(typeof O?.[0]=="object"){let N=Ct(a,s?.usePopupTemplateFieldsInfo);d=tf({queryObject:a,queryResponse:O,chartConfig:e,splitByField:"",isTimeBinningSeries:!1,chartLimits:s?.chartLimits,resultLimit:r.num,fieldList:N});let E=await Qs({queryObject:a,queryConfig:r,category:f,abortKey:o}),P=await Qs({queryObject:a,queryConfig:r,category:p,abortKey:o});d.length!==E?.length*P?.length&&(d=[...d,...Hw({dataItems:d,xUniqueValues:E,yUniqueValues:P,valueField:C,emptyCellValue:F,x:f,y:p,queryObject:a})],S&&(d=Uw({dataItems:d,valueField:C,filterOutZero:v===j.Count})))}}else{let O=await zv({chartConfig:e,queryObject:a,queryConfig:r,options:s,errorStrings:n}),N=y?_w(y.unit):await Qs({queryObject:a,queryConfig:r,category:p,abortKey:o}),E=0;d=O?.features.flatMap(P=>{let R=[],{attributes:$,stackedAttributes:q}=P,B=[];if(q?.forEach(k=>{let M=`${k[p]}`;B.push(M),R.push({[ne.xField]:`${$[me.heatChartLowerBoundaryAlias]}`,[ne.yField]:M,[C]:k[b]})}),i&&N&&B.length!==N?.length){let k=N.filter(M=>!B.includes(M.toString()));S&&(k.length!==N.length||B.length===0)||k.forEach(M=>{Number.isFinite(Number($[me.heatChartLowerBoundaryAlias]))&&Number.isFinite(Number(M))&&(m?.unit===vt.DayOfMonth&&y?.unit===vt.MonthOfYear&&Xc({day:Number($[me.heatChartLowerBoundaryAlias]),month:Number(M),includeLeapDay:e.includeLeapDay})||y?.unit===vt.DayOfMonth&&m?.unit===vt.MonthOfYear&&Xc({day:Number(M),month:Number($[me.heatChartLowerBoundaryAlias]),includeLeapDay:e.includeLeapDay}))||R.push({[ne.xField]:`${$[me.heatChartLowerBoundaryAlias]}`,[ne.yField]:M,[C]:u===dt.Zero?0:null})})}return E+=R.length,R}),lr({count:E,seriesCount:1,chartType:g.HeatSeries,chartLimits:s?.chartLimits})||vn({dataInfo:l,chartType:g.HeatSeries})}}return d&&(l.data={dataItems:d}),l}function Gw(t){let{chartConfig:e,options:r,data:a}=t,i=e.series,n=a,s=hp(e,r?.chartLimits);if(s!==void 0){let o=nt(i);if(o.length===1)n=a.filter(l=>Number.isFinite(l[o[0]])).slice(0,s);else if(a.length*o.length>s){let l=[],d=0,u=0;for(;d<=s&&u<a.length;){let c=a[u];if(l.push(c),d+=o.filter(f=>Number.isFinite(c[f])).length,d>s){let f=d-s,p=o.length-1;for(;f!==0&&p>=0;){let h=o[p];Number.isFinite(c[h])&&(delete c[h],f-=1),p-=1}}u+=1}n=l}}return n}async function go(t){let{chartConfig:e,queryConfig:r,queryObject:a,abortKey:i,options:n,preFetchedQueryResponse:s}=t,{chartLimits:o,usePopupTemplateFieldsInfo:l}=n??{},{behaviorAfterLimit:d}=o??{},u=e.series,c=u[0],{x:f}=c,p=rt(c.query?.where),h={valid:!0},m;if(_t(c)){let{temporalBinning:y}=c;if(a&&y){let{unit:b,size:v}=y,S=1,C={unit:b,size:v},F=!1,O=Ow({series:c,isTimeBinningSeries:!0,setTimeBinningInfoWhenNotProvided:n?.setTimeBinningInfoWhenNotProvided}),N=!na(a)||O?await gw({queryObject:a,queryConfig:r,x:f}):void 0;O&&N&&N.numberOfFeatures>0&&N.dateRange.dateMaxTimestamp!==void 0&&N.dateRange.dateMinTimestamp!==void 0&&(C=Iw(N),Ct(a).find($=>$.name===f)?.type===ce.DateOnly&&C.unit!==void 0&&[G.Hour,G.Minute,G.Second].includes(C.unit)&&(C.unit=G.Day,C.size=1),y.size=C.size,y.unit=C.unit);let{uniqueQuery:E,mapToStatField:P}=ho({chartConfig:e,queryConfig:r,queryObject:a,timeIntervalInfo:C,options:n}),R=lr({count:S??0,seriesCount:u.length,chartType:g.LineSeries,chartLimits:o});if(R){if(na(a)){let $=s?.[0]instanceof nb?s:await Kv({queryObject:a,dateField:f,splitByField:p,queryConfig:E,temporalBinning:y}),q="y"in c&&typeof c.y=="string"?c.y:void 0;if(m=Cw({chartConfig:e,queryResults:$,mapToStatField:P,splitByField:p,x:f,y:q,nullPolicy:y.nullPolicy,queryObject:a}),!lr({count:m.length,seriesCount:u.length,chartType:g.LineSeries,chartLimits:o})){let B=nt(u),k=m.filter(M=>B.some(_=>_ in M&&Number.isFinite(M[_]))).length;lr({count:k,seriesCount:u.length,chartType:g.LineSeries,chartLimits:o})||(R=!1)}}else if(N?.dateRange.dateMinTimestamp&&N.dateRange.dateMaxTimestamp){let{numberOfFinalBinsWithinDataRange:$}=Yp({dateMinTimestamp:N.dateRange.dateMinTimestamp,dateMaxTimestamp:N.dateRange.dateMaxTimestamp,timeIntervalInfo:C});S=$*u.length,S=Jp(S,C.unit),m=await In({queryObject:a,uniqueQuery:E,chartConfig:e,mapToStatField:P,elementCount:S,chartLimits:o,isTimeBinningSeries:!0,usePopupTemplateFieldsInfo:l,abortKey:i}),m=await Tw({queryObject:a,queryConfig:r,queryResults:m,x:f,seriesConfig:u,dateRange:N.dateRange,timeIntervalInfo:C})}wp(a)&&m&&m?.length===uw&&(F=!0),d===Dr.RenderUpToTheLimit&&m&&(m=Gw({chartConfig:e,options:n,data:m}))}R||(h.valid=!1,h.invalidType=ae.LineChartExceedsLimit),m&&m.length>0&&(m[m.length-1][A.lastTemporalBin]=!0),h.data={dataItems:m,timeIntervalInfo:C,serverLimitReached:F},h.count=S}}return h}async function Qw(t){let{chartConfig:e,queryConfig:r,queryObject:a,abortKey:i,options:n}=t,s=Ei(e),{setTimeBinningInfoWhenNotProvided:o,chartLimits:l,usePopupTemplateFieldsInfo:d}=n??{},u={valid:!0},c=e.series,f=$r({seriesConfig:c[0],xAxisValueFormatType:Yt(e),setTimeBinningInfoWhenNotProvided:o,queryObject:a}),{uniqueQuery:p,mapToStatField:h}=ho({chartConfig:e,queryObject:a,queryConfig:r,fetchFullBoxPlotData:!s,options:n}),m=await In({queryObject:a,uniqueQuery:p,elementCount:1,chartConfig:e,mapToStatField:h,isTimeBinningSeries:f,showMean:s,chartLimits:l,usePopupTemplateFieldsInfo:d,abortKey:i});return at(e)&&(m=zp({chartConfig:e,data:m,calculateZScore:!1})),u.data={dataItems:m},u}async function Zw(t){let{chartConfig:e,queryConfig:r,queryObject:a,abortKey:i,options:n,errorStrings:s}=t,o={valid:!0};if(at(e)){let l=at(e)?e.showMean:!1;o=await mo({queryObject:a,chartConfig:e,queryConfig:r,options:n,errorStrings:s,abortKey:i}),l&&o.data&&"dataItems"in o.data&&"meanLines"in o.data&&o.data.meanLines&&(o.data.dataItems=[...o.data.dataItems,...o.data.meanLines])}return o}var Kw="{ groupByFieldsForStatistics } WHEN ({ y } { yMinOperand } { yValue } AND { y } { yMaxOperand } { yValuePlusStep } AND { x } { xMinOperand } { xValue } AND { x } { xMaxOperand } { xValuePlusStep }) THEN '{ xValue }|{ xValuePlusStep}|{ yValue }|{ yValuePlusStep }'";async function Jw(t){let{chartConfig:e,queryObject:r,queryConfig:a,abortKey:i}=t,n=e.series[0],{x:s,y:o}=n,{dataContextCountDistinctX:l,dataContextCountDistinctY:d}=A.scatterplotAggregationFields,u={...a,outStatistics:[{statisticType:j.Count,outStatisticFieldName:l,onStatisticField:s},{statisticType:j.Count,outStatisticFieldName:d,onStatisticField:o}],returnDistinctValues:!0};return await da({queryObject:r,queryConfig:u,abortKey:i})}async function Yw(t){let{statsMap:e,chartConfig:r,queryObject:a,options:i,queryConfig:n,abortKey:s}=t,{dataContextXMinField:o,dataContextXMaxField:l,dataContextYMinField:d,dataContextYMaxField:u,dataContextCountDistinctX:c,dataContextCountDistinctY:f}=A.scatterplotAggregationFields,p,h,m,y,b,v=e.get(o),S=e.get(l),C=e.get(d),F=e.get(u);if(v!=null&&C!==void 0&&C!==null&&S!==void 0&&S!==null&&F!==void 0&&F!==null&&!Number.isNaN(v+S+C+F)){let{maxScatterPointsAfterAggregation:O}=ti(i?.chartLimits),N=Math.floor(Math.sqrt(O)),E=await Jw({queryObject:a,chartConfig:r,queryConfig:n,abortKey:s});m=Math.min(E.get(f)??Number.NaN,N),y=Math.min(E.get(c)??Number.NaN,N),b=y*m,p=S===v?0:(S-v)/(y-1),h=F===C?0:(F-C)/(m-1),e.set(A.scatterplotAggregationFields.xStep,p),e.set(A.scatterplotAggregationFields.yStep,h),e.set(A.scatterplotAggregationFields.rowCount,m),e.set(A.scatterplotAggregationFields.columnCount,y),e.set(A.scatterplotAggregationFields.realGridSize,b)}}function Xw(t){let{groupByFieldsForStatistics:e,x:r,y:a,xValue:i,yValue:n,xStep:s,yStep:o,endOfRow:l,endOfColumn:d}=t,u=e===""?Xr.groupByCaseBegin:e;return u=Re(Kw,{groupByFieldsForStatistics:u,x:r,y:a,xValue:`${i}`,yValue:`${n}`,xValuePlusStep:`${i+(d?0:s)}`,yValuePlusStep:`${n+(l?0:o)}`,xMinOperand:d?"=":">=",yMinOperand:l?"=":">=",xMaxOperand:d?"=":"<",yMaxOperand:l?"=":"<"}),u}async function ex(t){let{chartConfig:e,queryConfig:r,queryObject:a,xMin:i,xMax:n,yMin:s,yMax:o,abortKey:l}=t,d=e.series[0],{x:u,y:c}=d,f={...r};return f.where=Pe([f.where,`${u}>=${i}`,`${u}<=${n}`]),u!==c&&(f.where=Pe([f.where,`${c}>=${s}`,`${c}<=${o}`])),await Bt({queryObject:a,queryConfig:f,noBatch:!0,featureCount:1,abortKey:l})}async function tx(t){let{statsMap:e,chartConfig:r,queryObject:a,queryConfig:i,useQueryAttributeBins:n,errorStrings:s,abortKey:o}=t,l=r.series[0],{x:d,y:u}=l,{dataContextXMinField:c,dataContextXMaxField:f,dataContextYMinField:p,dataContextYMaxField:h,queryNumberOfFeatures:m,queryNumberOfAggregatedFeatures:y}=A.scatterplotAggregationFields,b,v=e?.get(c)??Number.NaN,S=e?.get(f)??Number.NaN,C=e?.get(m)??Number.NaN,F=e?.get(p)??v,O=e?.get(h)??S;if(v!=null&&F!==void 0&&F!==null&&S!==void 0&&S!==null&&O!==void 0&&O!==null&&!Number.isNaN(v+S+F+O)){let N=re(a),{idField:E,isTraditionalTypeOID:P}=zt(N),R=P?E:"*",$=e?.get(A.scatterplotAggregationFields.xStep),q=e?.get(A.scatterplotAggregationFields.yStep),B=e?.get(A.scatterplotAggregationFields.realGridSize),k=e?.get(A.scatterplotAggregationFields.rowCount),M=e?.get(A.scatterplotAggregationFields.columnCount),_=new Map,Q=Ct(a);if(Q?.forEach(V=>{Li(V)&&_.set(V.name,{onStatisticField:V.name,outStatisticFieldName:V.name,statisticType:j.Maximum})}),(Q.filter(V=>l?.additionalTooltipFields?.includes(V.name))??[])?.forEach(V=>{Li(V)||_.set(V.name,{onStatisticField:V.name,outStatisticFieldName:V.name,statisticType:j.Maximum})}),(await qp(N)).forEach(V=>{_.set(V,{onStatisticField:V,outStatisticFieldName:V,statisticType:j.Maximum})}),E!==""&&_.set(E,{onStatisticField:R,outStatisticFieldName:y,statisticType:j.Count}),_.set(d,{onStatisticField:d,outStatisticFieldName:d,statisticType:j.Maximum}).set(u,{onStatisticField:u,outStatisticFieldName:u,statisticType:j.Maximum}),$!==void 0&&q!==void 0){if(n){let V={...i,outStatistics:[..._.values()]};b=await Hv({queryObject:a,queryConfig:V,xStep:$,xMin:v,xMax:S,x:d,y:u,yStep:q,errorStrings:s})}else if(k!==void 0&&M!==void 0){let V=0,{maxScatterCellsPerQuery:Z,maxScatterCellsPerQueryForStandard:U}=xn(),oe=await R0(N)?U:Z,Fe=[],ke=!0,te=v,ve=F,Ie="",We=1,Tt=1,ot=Number.MAX_SAFE_INTEGER,Oe=Number.MIN_SAFE_INTEGER,xe=Number.MAX_SAFE_INTEGER,Ft=Number.MIN_SAFE_INTEGER;for(;Tt<=M&&ke;){for(ve=F,We=1;We<=k&&ke;){if(Ie=Xw({groupByFieldsForStatistics:Ie,x:d,y:u,xValue:te,yValue:ve,xStep:$,yStep:q,endOfRow:We===k,endOfColumn:Tt===M}),te<ot&&(ot=te),te+$>Oe&&(Oe=te+$),ve<xe&&(xe=ve),ve+$>Ft&&(Ft=ve+q),V+=1,V%oe===0||V===B||V===C){Ie=`${Ie} ${Xr.groupByCaseEnd}`;let Ge={...i,groupByFieldsForStatistics:[Ie],outStatistics:[..._.values()]};Fe.push(ex({chartConfig:r,queryConfig:Ge,queryObject:a,xMin:ot,xMax:Oe,yMin:xe,yMax:Ft,abortKey:o})),ot=Number.MAX_SAFE_INTEGER,Oe=Number.MIN_SAFE_INTEGER,xe=Number.MAX_SAFE_INTEGER,Ft=Number.MIN_SAFE_INTEGER,Ie="",V===B&&(ke=!1)}ve+=q,We+=1}te+=$,Tt+=1}b=(await Promise.all(Fe)).flat()}}}return b}async function rx(t){let{chartConfig:e,queryConfig:r,queryObject:a,abortKey:i}=t,n=e.series[0],{x:s,y:o}=n,l=new Map,{dataContextXMinField:d,dataContextXMaxField:u,dataContextYMinField:c,dataContextYMaxField:f,queryNumberOfFeatures:p}=A.scatterplotAggregationFields,{idField:h,isTraditionalTypeOID:m}=zt(re(a)),y=m?h:"*",b=[{statisticType:j.Count,onStatisticField:y,outStatisticFieldName:p},{statisticType:j.Minimum,outStatisticFieldName:d,onStatisticField:s},{statisticType:j.Maximum,outStatisticFieldName:u,onStatisticField:s}];s!==o&&b.push({statisticType:j.Minimum,outStatisticFieldName:c,onStatisticField:o},{statisticType:j.Maximum,outStatisticFieldName:f,onStatisticField:o});let v={...r};return v.outStatistics=b,l=await da({queryObject:a,queryConfig:v,abortKey:i}),s===o&&(l.set(c,l.get(d)??Number.NaN),l.set(f,l.get(u)??Number.NaN)),l}function dn(t){let{value:e,valueMin:r,valueMax:a}=t;return e===r||e===a?e:Math.random()*(a-r)+r}function ix(t){let{useQueryAttributeBins:e,graphic:r,x:a,y:i,yStep:n}=t,{groupByOutKeyword:s}=Xr,{dataContextXMinField:o,dataContextXMaxField:l,dataContextYMinField:d,dataContextYMaxField:u}=A.scatterplotAggregationFields,c=[];if(e&&"stackedAttributes"in r&&r.stackedAttributes){let f=Tp(a,i),p=r.attributes[f.lowerBoundaryAlias],h=r.attributes[f.upperBoundaryAlias];r.stackedAttributes.forEach(m=>{let y=m[f.stackAlias],b;typeof y=="number"&&typeof n=="number"&&(y*=n),typeof y=="number"&&typeof n=="number"&&(b=y+n);let v=m[a],S=m[i];typeof y=="number"&&typeof b=="number"&&typeof v=="number"&&typeof S=="number"&&c.push({...m,[a]:dn({value:v,valueMin:p,valueMax:h}),[i]:dn({value:S,valueMin:y,valueMax:b}),[o]:Math.min(p,h),[l]:Math.max(p,h),[d]:y,[u]:b})})}else{let{expr:f,isInItem:p}=Cn(r.attributes);if(p&&f&&r.attributes[f]!==s){let[h,m,y,b]=r.attributes[f].split("|");h=Math.min(h,m),m=Math.max(h,m),y=Math.min(y,b),b=Math.max(y,b);let v={...r.attributes,[o]:h,[l]:m,[d]:y,[u]:b};v[a]=dn({value:v[a],valueMin:h,valueMax:m}),v[i]=dn({value:v[i],valueMin:y,valueMax:b}),c=[v]}}return c}function ax(t){let{chartConfig:e,rawData:r,isAggregationMode:a,yStep:i,useQueryAttributeBins:n}=t,s=e.series[0],{x:o,y:l}=s,d=(Array.isArray(r)?r:r?.features)?.flatMap(u=>{let c=[{...u.attributes}];return yo(c[0],[o,l]),a?c=ix({useQueryAttributeBins:n,graphic:u,x:o,y:l,yStep:i}):c[0][me.uniqueIdsName]=u.getObjectId(),c});return d=d?.filter(u=>{let{expr:c}=Cn(u);return Number.isFinite(u[o])&&Number.isFinite(u[l])&&(c===void 0||u[c]!==Xr.groupByOutKeyword)}),d??[]}async function nx(t){let{queryObject:e,queryConfig:r,chartConfig:a,featureCount:i,abortKey:n}=t,s=a.series[0],{x:o,y:l}=s,d=re(e),u=[],c=Ct(e),f=Fn(d).idFields,p=(c?.filter(v=>Li(v)&&v.name!==o&&v.name!==l)??[]).map(v=>v.name)??[],h=s?.additionalTooltipFields??[],m=Array.from(new Set([o,l,...f??[],...p,...h])),y=st(d);if(y&&!y.isTable){let{rendererField:v,rendererNormalizationField:S}=B0(d?.renderer??void 0);Ue(v)||m.push(v),Ue(S)||m.push(S)}let b={...r,orderByFields:[`${o} ${je.Ascending}`],outFields:m};return u=await Bt({queryObject:e,queryConfig:b,featureCount:i,abortKey:n}),u}async function sx(t){let e,{chartConfig:r,queryConfig:a,queryObject:i,statsMap:n,numberOfFeatures:s,isAggregationMode:o,useQueryAttributeBins:l,errorStrings:d,abortKey:u}=t,c=r.series[0],{x:f,y:p}=c;if(!Number.isNaN(s)&&s>0){let h={...a};h.where=Pe([h.where,`${f} IS NOT NULL`,`${p} IS NOT NULL`]),o?e=await tx({chartConfig:r,queryObject:i,queryConfig:h,statsMap:n,useQueryAttributeBins:l,errorStrings:d,abortKey:u}):e=await nx({queryObject:i,chartConfig:r,queryConfig:h,featureCount:s,abortKey:u})}return e}async function nf(t){let{chartConfig:e,queryConfig:r,queryObject:a,sortData:i,calculateTrendLine:n,options:s,abortKey:o}=t,l;if(Xe(a))l=await F0(t);else{let d=await rx({chartConfig:e,queryConfig:r,queryObject:a,abortKey:o}),{queryNumberOfFeatures:u,yStep:c}=A.scatterplotAggregationFields,{maxScatterPointsBeforeAggregation:f}=ti(s?.chartLimits),p=d?.get(u)??Number.NaN,h=p>=f,m=jv(a);h&&await Yw({statsMap:d,chartConfig:e,queryObject:a,options:s,queryConfig:r,abortKey:o});let y=await sx({...t,queryObject:a,statsMap:d,numberOfFeatures:p,isAggregationMode:h,useQueryAttributeBins:m}),b=ax({chartConfig:e,rawData:y,isAggregationMode:h,yStep:d.get(c),useQueryAttributeBins:m});i!==!1&&aa({arrayToSort:b,sortingField:e.series[0].x,orderBy:je.Ascending});let{r2:v,trendLinePoints:S}=n!==!1?await Ep({data:b,statsMap:d,queryConfig:r,options:s,queryObject:a,chartConfig:e}):A.scatterplotSeries;l={dataItems:b,r2:v,trendLinePoints:S,aggregated:h}}return l}function Ii(t){let e=t===void 0||t==="";return{[H.Average]:`${e?"":`${t}_`}${H.Average}`,[H.Min]:`${e?"":`${t}_`}${H.Min}`,[H.Max]:`${e?"":`${t}_`}${H.Max}`,[H.FirstQuartile]:`${e?"":`${t}_`}${H.FirstQuartile}`,[H.Median]:`${e?"":`${t}_`}${H.Median}`,[H.ThirdQuartile]:`${e?"":`${t}_`}${H.ThirdQuartile}`,[H.IQR]:`${e?"":`${t}_`}${H.IQR}`,[H.Outlier]:`${e?"":`${t}_`}${H.Outlier}`,[H.StandardDeviation]:`${e?"":`${t}_`}${H.StandardDeviation}`}}function bo(t){return"subType"in t&&t.subType===$o.FeatureGauge}function vo(t){let e;return t!==void 0&&("bins"in t?e=t.bins:"dataItems"in t&&(e=t.dataItems)),e}function sf(t){return t===x.BoxPlotMultiFields||t===x.BoxPlotMultiFieldsAndCategory||t===x.BoxPlotMultiFieldsAndSplitBy}function He(t){let{key:e,y:r,chartSubType:a,splitBy:i,splitByValue:n,showOutliers:s,standardizeValues:o}=t,l=n,d=Ii(r)[e];return s===!0&&(e===H.Min||e===H.Max)&&(d=`${d}${Hb}`),o===!0&&(sf(a)||e===H.Outlier)&&(d=`${d}${Gb}`),(n===void 0||`${n}`.trim()==="")&&(l=ft({where:i,normalize:!0,escape:!1})),l!==void 0&&`${l}`.trim()!==""&&(d=`${l}${d!==""?`_${d}`:""}`),d}function Gs(t){let{dataItem:e,y:r,splitBy:a,showOutliers:i}=t,n=He({key:H.FirstQuartile,y:r,splitBy:a,showOutliers:i}),s=He({key:H.ThirdQuartile,y:r,splitBy:a,showOutliers:i});return Number.isFinite(e[n])||Number.isFinite(e[s])}function ox(t){let{configSeries:e,boxPlotDataItem:r,yList:a,showOutliers:i}=t,n=X(e),s=!1;switch(n){case x.BoxPlotMonoField:case x.BoxPlotMultiFields:case x.BoxPlotMonoFieldAndCategory:s=Gs({dataItem:r,showOutliers:i});break;case x.BoxPlotMultiFieldsAndCategory:s=a.some(o=>Gs({dataItem:r,y:o,showOutliers:i}));break;case x.BoxPlotMonoFieldAndSplitBy:case x.BoxPlotMultiFieldsAndSplitBy:case x.BoxPlotMonoFieldAndCategoryAndSplitBy:s=e.some(o=>Gs({dataItem:r,splitBy:o.query?.where,showOutliers:i}));break;default:s=!1;break}return s}function of(t){return t.map(e=>e.id).filter(e=>e!==void 0)}function nt(t,e){let r=[],a=e??of(t),i=X(t);return r=t.filter(n=>a.includes(n.id)).map(n=>{let s="y"in n?n.y:void 0;return s!==void 0&&i===x.BarAndLineSplitByNoAggregation&&(s=`${s.toString()}_${ft({where:n.query?.where,keepSurroundingQuotes:!1,escape:!1})}`),s}).filter(n=>n!==void 0),Array.from(new Set(r.flat()))}function On(t){let{seriesConfig:e,filteredSeriesIds:r,showMean:a}=t,i=[];if(a===!0){let n=e.find(s=>s.type===g.BoxPlotSeries);n!==void 0&&"y"in n&&(i=[n.y].flat())}else i=nt(e,r);return i}function Ar(t,e){return t===null&&e===!0||Number.isFinite(t)}function lx(t){let{dataItem:e,x:r,y:a,nullAsValid:i=!1}=t;return e[r]!==void 0&&(typeof e[r]!="number"||Number.isFinite(e[r]))&&Ar(e[a],i)}function D1(t){let{chartConfig:e,nullAsValid:r=!1,dataSet:a}=t,i=!0;if(e!==void 0){let n=K(e.series);if(a===void 0||a.length===0)i=!0;else{let s=nt(e.series);i=!a.some(o=>{let l=!1;switch(n){case g.HistogramSeries:{let d=o;l=Ar(d.minValue,r)&&Ar(d.maxValue,r)}break;case g.ScatterSeries:{let d=o,{x:u,y:c}=e.series[0];l=Ar(d[u],r)&&Ar(d[c],r)}break;case g.ComboLineAndBarSeries:case g.RadarSeries:case g.LineSeries:case g.BarSeries:{let d=o,{x:u}=e.series[0];l=s.some(c=>lx({dataItem:d,x:u,y:c,nullAsValid:r}));break}case g.BoxPlotSeries:{if(at(e)){let d=e.series;l=ox({configSeries:d,boxPlotDataItem:o,yList:s,showOutliers:e.showOutliers})}break}case g.PieSeries:{let d=o,{x:u,y:c}=e.series[0];X(e.series)===x.PieFromFields&&(u=ct,c=Vt);let f=d[c];l=d[u]!==void 0&&d[u]!==null&&!Do(f)&&Ar(Number(f),r)}break;case g.GaugeSeries:{let{x:d}=e.series[0];l=Ar(o[d],r)}break;case g.HeatSeries:l=a.some(d=>Ar(d[ne.valueField],r));break}return l})}}return i}function dx(t,e){let r=new Map,a=e??of(t);return t.forEach(i=>{if(a.includes(i.id)&&"y"in i){let n=r.get(i.type)??[];n.push(i.y),r.set(i.type,n)}}),r}function ux(t){let{seriesConfig:e,filteredSeriesIds:r,filteredData:a}=t,i=dx(e,r),n=e.find(d=>d.type===g.LineSeries||d.type===g.RadarSeries)?.stackNegativeValuesToBaseline??!0,s=Number.MIN_SAFE_INTEGER,o=Number.MAX_SAFE_INTEGER,l=!1;return a.forEach(d=>{i.forEach(u=>{if(n){let c=0,f=0,p=!1,h=!1;for(let m=0;m<u.length;m+=1){let y=d[u[m]];Number.isFinite(y)&&(y<0?(f+=y,h=!0,l=!0):(c+=y,p=!0))}s=p?Math.max(s,c):s,o=h?Math.min(o,f):o,p&&!h&&(o=Math.min(o,c)),!p&&h&&(s=Math.max(s,f)),p&&c<=0&&(l=!0)}else{let c=0;for(let f=0;f<u.length;f+=1){let p=d[u[f]];c+=p,s=Math.max(s,c),o=Math.min(o,c)}(s<=0||o<=0)&&(l=!0)}})}),{stackedMinY:o,stackedMaxY:s,dataHasNegativeValues:l}}function cx(t){let{dataItem:e,...r}=t,a=He({key:H.Min,...r}),i=He({key:H.Max,...r}),n=e[a],s=e[i];return{min:n,max:s}}function ep(t){let e=Number.NaN,r=Number.NaN,a,i,{chartConfig:n,chartData:s,filteredSeriesIds:o}=t,{series:l}=n;if(l?.length>0){let{x:d}=l[0],u=K(n.series);if(u===g.HistogramSeries&&s.length>0){let c=s[0]?.[jc.Start],f=s[s.length-1]?.[jc.End];a=typeof c=="number"?c:a,i=typeof f=="number"?f:i}else{let c=s.filter(f=>f[d]!==null);if({min:a,max:i}=sa(c,f=>f[d]),n.axes?.[0]?.valueFormat.type===g.DateAxisFormat&&a!==void 0&&i!==void 0&&([a,i]=[new Date(a).valueOf(),new Date(i).valueOf()]),u===g.BoxPlotSeries){e=Number.MAX_SAFE_INTEGER,r=Number.MIN_SAFE_INTEGER;let f=nt(l,o),p=X(l),h="standardizeValues"in n?n.standardizeValues===!0:void 0,m=n.series.map(y=>y.visible!==!1?ft({where:y.query?.where}):"");m.length===0&&m.push(" "),c.forEach(y=>{f.forEach(b=>{let v=p===x.BoxPlotMultiFieldsAndCategory?b:void 0;m.forEach(S=>{let{min:C,max:F}=cx({y:v,splitByValue:S,chartSubType:p,showOutliers:!1,standardizeValues:h,dataItem:y});C!=null&&C<e&&(e=C),F!=null&&F>r&&(r=F)})})})}else switch(uo(n)){case bt.Stacked100:case bt.Stacked:{let{stackedMinY:f,stackedMaxY:p}=ux({seriesConfig:l,filteredData:c,filteredSeriesIds:o});e=f,r=p;break}case bt.Side:default:{e=Number.MAX_SAFE_INTEGER,r=Number.MIN_SAFE_INTEGER,nt(l,o).forEach(f=>{let{min:p,max:h}=sa(c,m=>m[f]);p!==void 0&&p<e&&(e=p),h!==void 0&&h>r&&(r=h)});break}}}}return{minY:e,maxY:r,minX:a,maxX:i}}function px(t){let{chartConfig:e,isSecondValueAxis:r,seriesIds:a}=t,i=a;return e.axes?.length===3&&(i=e.series.map(n=>{let s="";return(a===void 0||a.includes(n.id))&&(r===!0&&"assignToSecondValueAxis"in n&&n.assignToSecondValueAxis===!0||r!==!0&&(!("assignToSecondValueAxis"in n)||n.assignToSecondValueAxis!==!0))&&({id:s}=n),s}).filter(n=>n!=="")),i}function fx(t){let e=!1;if(t){let r=t.axes?.[0],a=r?.isLogarithmic===!0,i=r?.valueFormat?.type;e=(i===g.NumberAxisFormat||i===g.DateAxisFormat)&&a}return e}function tp(t,e){let r=!1;return Number.isFinite(t)&&t!==Number.MAX_SAFE_INTEGER&&Number.isFinite(e)&&e!==Number.MIN_SAFE_INTEGER&&(r=t<=0||e<=0),r}function hx(t){let{chartConfig:e,chartData:r,axisConfigIndex:a}=t,i=!1;if(a===0){if(fx(e)){let{minX:n,maxX:s}=ep({chartConfig:e,chartData:r});i=tp(n,s)}}else{let n=px({chartConfig:e,isSecondValueAxis:a===2}),{minY:s,maxY:o}=ep({chartConfig:e,chartData:r,filteredSeriesIds:n});i=tp(s,o)}return i}function B1(t){let{chartConfig:e,axisConfigIndex:r,chartData:a}=t,i=!0,n=e?.axes?.[r];return e&&a&&n?.isLogarithmic===!0&&(i=!hx({chartConfig:e,chartData:a,axisConfigIndex:r})),i}function mx(t,e){let r=t;if(e?.[0]!==void 0&&X(e)===x.PieFromFields){let{x:a,y:i}=e[0];(ha(t)?r:r.dataItems).forEach(n=>(ct in n&&a!==ct&&(n[a]=n[a]!==void 0?n[a]:n[ct],delete n[ct]),Vt in n&&i!==Vt&&(n[i]=n[i]!==void 0?n[i]:n[Vt],delete n[Vt]),n))}return r}function yx(t,e){let r=K(e),a=t,i=e?.[0];if((r===g.PieSeries||r===g.BoxPlotSeries||r===g.LineSeries||r===g.RadarSeries||r===g.BarSeries||r===g.HeatSeries||r===g.ComboLineAndBarSeries)&&i!==void 0){let n=ha(t),s=n?t:t.dataItems;if(t!==void 0){let{originalCategoryValue:o,originalYCategoryValue:l,originalDateValue:d,xAxisField:u}=A,c=r===g.HeatSeries?ne.xField:i.x,f=r===g.HeatSeries?ne.yField:void 0;s=s.map(p=>{let h=p[c];p[d]!==void 0?h=p[d]:p[o]!==void 0&&(h=p[o]);let m={...p,[c]:h};if(delete m[d],delete m[o],delete m[u],f){let y=p[f];p[l]!==void 0&&(y=p[l]),m={...m,[f]:y},delete m[l]}return m}),n?a=s:"dataItems"in a&&(a.dataItems=s)}}return a}function rp(t){let e={...t};delete e[A.technicalSortingFieldBySum],delete e[A.technicalSortingFieldByPercent],delete e[A.pieChart.technicalFieldSlicePercent],delete e[A.pieChart.technicalFieldGroupedSlices],delete e[A.lastTemporalBin],delete e[A.originalServerBinningRange],delete e[A.technicalFieldSplitByField],delete e[me.uniqueIdsName],Object.keys(e).filter(a=>a.includes(A.rendererSymbolField)).forEach(a=>delete e[a]);let r=Cn(e);return r.isInItem&&delete e[r.expr??""],e}function gx(t,e){let r=t,a=K(e),i=vo(r);if(i!==void 0)switch(a){case g.ComboLineAndBarSeries:case g.BarSeries:case g.LineSeries:case g.RadarSeries:case g.PieSeries:{i=i.map(rp),r={dataItems:i};let{timeIntervalInfo:n,serverLimitReached:s}=t??{};Dn(n)||(r.timeIntervalInfo=n),s!==void 0&&(r.serverLimitReached=s)}break;case g.ScatterSeries:r={...r,dataItems:i.map(rp)};break}return r}var M1=(t,e)=>{let r=10**e;return Math.round(t*r)/r};function $1(t){let{data:e,seriesConfig:r}=t,a=Vr(e);return a!==void 0&&(a=yx(a,r),a=gx(a,r),a=mx(a,r)),a}function bx(t){let{dataFetchingResults:e,numberOfQueries:r,series:a}=t,i=K(a),n=X(a),s=[],o=new Map;for(let l=0;l<r;l+=1){let d=e[l];if(d!==void 0){let u;if(i===g.ScatterSeries)u=d.dataItems;else if("data"in d&&d.data){let c=d.data;"dataItems"in c&&(u=c.dataItems),"outliers"in c&&c.outliers&&s.push(...c.outliers),"meanLines"in c&&c.meanLines&&s.push(...c.meanLines)}if(u)if(a[0].type===g.HeatSeries)r>0&&u.forEach(c=>{o.set(`${c[ne.xField]}-${c[ne.yField]}`,c)});else if(a[0].type===g.ScatterSeries){let{x:c,y:f}=a[0];s.push(...u.map(p=>({[c]:p[c],[f]:p[f]})))}else d.valid&&(n===x.PieFromFields?s=yn({dataToConvert:u[0],x:ct,y:Vt}):n===x.BarAndLineFromFields?s=yn({dataToConvert:u[0],x:a[0].x,y:a[0].y}):s.push(...u))}}return o.size>0&&(s=Array.from(o.values())),s}async function vx(t){let{numberOfQueries:e,selectionOIDs:r,chartConfig:a,queryConfig:i,options:n,errorStrings:s,queryObject:o}=t,{setTimeBinningInfoWhenNotProvided:l}=n??{},{series:d}=a,u=K(d),c=[],{maxOIDsPerSelectionQuery:f}=xn();for(let p=0;p<e;p+=1){let h=p*f,m=(p+1)*f-1,y=r.slice(h===0?0:h-1,m),b={...i};switch(b.objectIds=y,u){case g.HeatSeries:c.push(af({completeHeatChartDataset:!1,chartConfig:a,queryConfig:b,queryObject:o,errorStrings:s,options:n}));break;case g.PieSeries:case g.BarSeries:case g.LineSeries:case g.RadarSeries:case g.ComboLineAndBarSeries:if($r({xAxisValueFormatType:Yt(a),setTimeBinningInfoWhenNotProvided:l,seriesConfig:d[0],queryObject:o})){let v=a;"temporalBinning"in v.series[0]&&v.series[0].temporalBinning&&(v.series[0].temporalBinning.trimIncompleteTimeInterval=!1,na(o)&&(delete v.series[0].temporalBinning.start,delete v.series[0].temporalBinning.end)),c.push(go({chartConfig:v,queryConfig:b,queryObject:o,options:n}))}else c.push(Qw({queryObject:o,chartConfig:a,options:n,queryConfig:b}));break;case g.BoxPlotSeries:c.push(Zw({queryObject:o,chartConfig:a,options:n,errorStrings:s,queryConfig:b}));break;case g.ScatterSeries:c.push(nf({queryObject:o,chartConfig:a,queryConfig:b,options:n,errorStrings:s,sortData:!1,calculateTrendLine:!1}));break;case g.HistogramSeries:c.push(TS({queryObject:o,queryConfig:b,chartConfig:a,x:d[0].x}));break}}return await Promise.all(c)}async function q1(t){let{updatedPropsSnapshot:e,chartConfig:r,chartData:a,dataWasUpdated:i,queryObject:n,options:s,errorStrings:o}=t,{series:l}=r,{selectionData:d,viewExtentUpdated:u,returnSelectionOIDs:c,chartLimits:f}=s??{},{selectionItems:p,selectionOIDs:h}=d??{},m,y=K(l),b=!1;if(e.has("selectionData")){let{oldValue:S,newValue:C}=e.get("selectionData");b=!ir(S?.selectionOIDs,C?.selectionOIDs)}let v=y!==g.HistogramSeries&&y!==g.HeatSeries&&p!==void 0&&p.length>0&&!(l[0].x in p[0])&&!(ct in p[0])&&!(A.boxPlot.boxPlotCategory in p[0]);if(u!==!0&&c!==!1&&h!==void 0&&h.length>0&&(i===!0||v||b)){let S=vo(a),C=Rp({queryObject:n,chartConfig:r,runtimeDataFilters:s?.runtimeDataFilters,ignoreViewExtent:s?.ignoreViewExtent,viewExtent:s?.view?.extent});if(S!==void 0&&!tv({dataContext:S[0],chartConfig:r,chartLimits:f}))m=S.filter(F=>{let O=F[me.uniqueIdsName];return typeof O=="number"||typeof O=="string"?h?.includes(O):!1});else if(h?.[0]!==void 0&&C!==void 0){let{maxOIDsPerSelectionQuery:F}=xn(),O=Math.ceil(h.length/F),N=await vx({numberOfQueries:O,selectionOIDs:h,queryConfig:C,queryObject:n,options:s,errorStrings:o,chartConfig:r});m=bx({dataFetchingResults:N,numberOfQueries:O,series:l})}}return m}var Ti={$schema:"http://json-schema.org/draft-07/schema#",definitions:{ValueConversion:{type:"object",properties:{factor:{type:"number",description:"A numeric value multiplying the value to convert."},offset:{type:"number",description:"A numeric offset to apply to the value to convert."}},description:"Stores information regarding a numeric conversion.",title:"ValueConversion"},WebChartAxisScrollBar:{type:"object",properties:{visible:{type:"boolean",description:"Scrollbar visibility.",default:!1},width:{type:"number",description:"Scrollbar width in pixels."},color:{$ref:"#/definitions/Color",description:"Scrollbar color."},gripSize:{type:"number",description:"Grip size in pixels."},margin:{type:"number",description:"Margin between the scrollbar and the series container in pixels."}},description:"Describes the properties of an axis scrollbar.",title:"WebChartAxisScrollBar"},Color:{type:"array",items:{type:"number"},minItems:4,maxItems:4,description:"Represents the color information (R, G, B, A).",title:"Color"},WebChartTextSymbol:{type:"object",properties:{xoffset:{type:["number","string"],description:"Horizontal offset. Can be a number for a fixed value in pixels, or a string such as `25%` for a value relative to the label's container width."},yoffset:{type:["number","string"],description:"Vertical offset. Can be a number for a fixed value in pixels, or a string such as `25%` for a value relative to the label's container height."},angle:{type:"number",description:"Rotation angle of the label."},style:{type:"string",description:"Label style."},type:{type:"string",const:"esriTS"},color:{$ref:"#/definitions/Color"},backgroundColor:{$ref:"#/definitions/Color"},borderLineSize:{type:"number"},borderLineColor:{$ref:"#/definitions/Color"},haloSize:{type:"number"},haloColor:{$ref:"#/definitions/Color"},verticalAlignment:{type:"string",enum:["baseline","bottom","middle","top"]},horizontalAlignment:{type:"string",enum:["center","justify","left","right"]},rightToLeft:{type:"boolean"},kerning:{type:"boolean"},font:{$ref:"#/definitions/IFont"},text:{type:"string",description:"Only applicable when specified as a client-side graphic."}},required:["type"],description:"Represents a text symbol.",title:"WebChartTextSymbol"},'Omit<ITextSymbol,("angle"|"style"|"xoffset"|"yoffset")>':{$ref:"#/definitions/Pick%3CITextSymbol%2CExclude%3C(%22type%22%7C%22color%22%7C%22backgroundColor%22%7C%22borderLineSize%22%7C%22borderLineColor%22%7C%22haloSize%22%7C%22haloColor%22%7C%22verticalAlignment%22%7C%22horizontalAlignment%22%7C%22rightToLeft%22%7C%22kerning%22%7C%22font%22%7C%22text%22%7C%22angle%22%7C%22xoffset%22%7C%22yoffset%22%7C%22style%22%7Cstring)%2C(%22angle%22%7C%22style%22%7C%22xoffset%22%7C%22yoffset%22)%3E%3E",title:'Omit<ITextSymbol,("angle"|"style"|"xoffset"|"yoffset")>'},'Pick<ITextSymbol,Exclude<("type"|"color"|"backgroundColor"|"borderLineSize"|"borderLineColor"|"haloSize"|"haloColor"|"verticalAlignment"|"horizontalAlignment"|"rightToLeft"|"kerning"|"font"|"text"|"angle"|"xoffset"|"yoffset"|"style"|string),("angle"|"style"|"xoffset"|"yoffset")>>':{type:"object",properties:{type:{type:"string",const:"esriTS"},color:{$ref:"#/definitions/Color"},backgroundColor:{$ref:"#/definitions/Color"},borderLineSize:{type:"number"},borderLineColor:{$ref:"#/definitions/Color"},haloSize:{type:"number"},haloColor:{$ref:"#/definitions/Color"},verticalAlignment:{type:"string",enum:["baseline","bottom","middle","top"]},horizontalAlignment:{type:"string",enum:["center","justify","left","right"]},rightToLeft:{type:"boolean"},kerning:{type:"boolean"},font:{$ref:"#/definitions/IFont"},text:{type:"string",description:"Only applicable when specified as a client-side graphic."}},required:["type"],title:'Pick<ITextSymbol,Exclude<("type"|"color"|"backgroundColor"|"borderLineSize"|"borderLineColor"|"haloSize"|"haloColor"|"verticalAlignment"|"horizontalAlignment"|"rightToLeft"|"kerning"|"font"|"text"|"angle"|"xoffset"|"yoffset"|"style"|string),("angle"|"style"|"xoffset"|"yoffset")>>'},IFont:{type:"object",properties:{family:{type:"string"},size:{type:"number"},style:{type:"string",enum:["italic","normal","oblique"]},weight:{type:"string",enum:["bold","bolder","lighter","normal"]},decoration:{type:"string",enum:["line-through","none","underline"]}},title:"IFont"},WebChartText:{type:"object",properties:{type:{type:"string",const:"chartText",description:"A unique string identifier for the `ChartText` object. This value is `chartText`."},visible:{type:"boolean",description:"Determines the visibility of the content.",default:!0},content:{$ref:"#/definitions/WebChartTextSymbol",description:"Contains the styling information and text content."}},required:["type","content"],description:"Stores information on how some text is rendered on the chart and whether it is visible or not.",title:"WebChartText"},WebChartCursorCrosshair:{type:"object",properties:{type:{type:"string",const:"cursorCrosshair",description:"Represents a unique string identifier for the chart cursor's crosshair."},style:{$ref:"#/definitions/ISimpleLineSymbol",description:"Contains styling information on how the chart cursor's crosshair should be rendered."},verticalLineVisible:{type:"boolean",description:"Indicates whether the vertical crosshair line should be displayed.",default:!1},horizontalLineVisible:{type:"boolean",description:"Indicates whether the horizontal crosshair line should be displayed.",default:!1}},required:["type"],description:"JSON representation of the cursor's crosshair for a chart.",title:"WebChartCursorCrosshair"},ISimpleLineSymbol:{type:"object",properties:{type:{type:"string",const:"esriSLS"},style:{$ref:"#/definitions/SimpleLineSymbolStyle"},color:{$ref:"#/definitions/Color"},width:{type:"number"}},required:["type"],title:"ISimpleLineSymbol"},ISymbol:{type:"object",properties:{type:{$ref:"#/definitions/SymbolType"},style:{type:"string"}},required:["type"],title:"ISymbol"},SymbolType:{type:"string",enum:["esriPFS","esriPMS","esriSFS","esriSLS","esriSMS","esriTS"],title:"SymbolType"},SimpleLineSymbolStyle:{type:"string",enum:["esriSLSDash","esriSLSDashDot","esriSLSDashDotDot","esriSLSDot","esriSLSNull","esriSLSSolid"],title:"SimpleLineSymbolStyle"},WebChartLegend:{type:"object",properties:{type:{type:"string",const:"chartLegend",description:"A unique string identifier for the `ChartLegend` object. This value is `chartLegend`."},visible:{type:"boolean",description:"Determines the visibility of the content.",default:!0},title:{$ref:"#/definitions/WebChartText",description:"Contains styling information on how the title of the legend box should be rendered."},body:{$ref:"#/definitions/WebChartTextSymbol",description:"Contains styling information on how legend body (excluding the `title`) should be rendered. Will use default styling if not provided."},position:{$ref:"#/definitions/WebChartLegendPositions",description:'Positions the legends at `"right"`, `"left"`, `"top"`, or `"bottom"` of the chart.',default:"`right`"},maxHeight:{type:["number","null"],description:"Legend's maximum height. If not set the legend will occupy the same height as the series container.",default:null},roundMarkers:{type:"boolean",description:"Allows the legend markers to be displayed as circles.\n- `false` or `undefined`: rounded rectangles\n- `true`: circles",default:!1}},required:["type"],description:"JSON representation of the chart's legend.",title:"WebChartLegend"},WebChartLegendPositions:{type:"string",enum:["left","right","top","bottom"],title:"WebChartLegendPositions"},WebChartNullCategory:{type:"object",properties:{text:{type:"string",description:"Specifies the text to use for the null category. If none is provided, the default `null` text will be used."},symbol:{$ref:"#/definitions/ISimpleFillSymbol",description:"Contains styling information on how the overlay should be rendered. If not provided a default style is applied.",default:"1 - symbol.outline.width"}},title:"WebChartNullCategory"},ISimpleFillSymbol:{type:"object",properties:{type:{type:"string",const:"esriSFS"},style:{$ref:"#/definitions/SimpleFillSymbolStyle"},color:{$ref:"#/definitions/Color"},outline:{$ref:"#/definitions/ISimpleLineSymbol"}},required:["type"],title:"ISimpleFillSymbol"},SimpleFillSymbolStyle:{type:"string",enum:["esriSFSBackwardDiagonal","esriSFSCross","esriSFSDiagonalCross","esriSFSForwardDiagonal","esriSFSHorizontal","esriSFSNull","esriSFSSolid","esriSFSVertical"],title:"SimpleFillSymbolStyle"},WebChartPieChartLegend:{type:"object",properties:{type:{type:"string",const:"chartLegend",description:"A unique string identifier for the `ChartLegend` object. This value is `chartLegend`."},visible:{type:"boolean",description:"Determines the visibility of the content.",default:!0},title:{$ref:"#/definitions/WebChartText",description:"Contains styling information on how the title of the legend box should be rendered."},body:{$ref:"#/definitions/WebChartTextSymbol",description:"Contains styling information on how legend body (excluding the `title`) should be rendered. Will use default styling if not provided."},position:{$ref:"#/definitions/WebChartLegendPositions",description:'Positions the legends at `"right"`, `"left"`, `"top"`, or `"bottom"` of the chart.',default:"`right`"},maxHeight:{type:["number","null"],description:"Legend's maximum height. If not set the legend will occupy the same height as the series container.",default:null},roundMarkers:{type:"boolean",description:"Allows the legend markers to be displayed as circles.\n- `false` or `undefined`: rounded rectangles\n- `true`: circles",default:!1},displayCategory:{type:"boolean",description:"Indicates whether the category associated to a slice is to be displayed in the legend.",default:!0},displayNumericValue:{type:"boolean",description:"Indicates whether the numeric value associated to a slice is to be displayed in the legend. If both `displayNumericValue` and `displayPercentage` are true on a same label, they will be displayed as `percentage (value)`",default:!1},displayPercentage:{type:"boolean",description:"Indicates whether the percentage to a slice is to be displayed in the legend. If both `displayNumericValue` and `displayPercentage` are true on a same label, they will be displayed as `percentage (value)`",default:!1},labelMaxWidth:{type:"number",description:"Maximum width in pixels of the label displaying the slice name. If the label is larger than the maximum width, it will automatically wrap.",default:200},valueLabelMaxWidth:{type:"number",description:"Maximum width in pixels of the value label displaying the slice value. If the label is larger than the maximum width, it will automatically wrap.",default:200}},required:["type"],description:"Specific legend for pie charts",title:"WebChartPieChartLegend"},WebChartOverlay:{type:"object",properties:{type:{type:"string",const:"chartOverlay",description:"A unique string identifier for the `ChartOverlay` object. This value is `chartOverlay`."},created:{type:"boolean",description:"Determines whether the overlay is created under the hood. It may or may not be visible.",default:!1},visible:{type:"boolean",description:"Determines the visibility of the content.",default:!0},symbol:{$ref:"#/definitions/ISimpleLineSymbol",description:"Contains styling information on how the overlay should be rendered. If not provided a default style is applied."}},required:["type"],description:"JSON representation of the chart's overlays such as the trendline in scatterplot, and the median overlay in histogram.",title:"WebChartOverlay"},NumberFormatOptions:{type:"object",properties:{type:{type:"string",const:"number",description:"Represents a unique string identifier for the `NumberFormatOptions` object. For the `NumberFormatOptions` object, it is `number`. It can help to differentiate numerical (value) axis from other types of axes such as date-time axis and category axis."},intlOptions:{$ref:"#/definitions/Intl.NumberFormatOptions",description:"Represents the JS native [Intl.NumberFormatOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/NumberFormat), which is based on [CLDR](http://cldr.unicode.org/translation/numbers-currency/number-patterns) specifications."}},required:["type","intlOptions"],description:"Defines how the numerical(value) axis data should be formatted.",title:"NumberFormatOptions"},"Intl.NumberFormatOptions":{type:"object",properties:{localeMatcher:{type:"string",enum:["lookup","best fit"]},style:{$ref:"#/definitions/Intl.NumberFormatOptionsStyle"},currency:{type:"string"},currencyDisplay:{$ref:"#/definitions/Intl.NumberFormatOptionsCurrencyDisplay"},useGrouping:{$ref:"#/definitions/Intl.NumberFormatOptionsUseGrouping"},minimumIntegerDigits:{type:"number"},minimumFractionDigits:{type:"number"},maximumFractionDigits:{type:"number"},minimumSignificantDigits:{type:"number"},maximumSignificantDigits:{type:"number"}},title:"Intl.NumberFormatOptions"},"Intl.NumberFormatOptionsStyle":{title:"Intl.NumberFormatOptionsStyle"},"Intl.NumberFormatOptionsCurrencyDisplay":{title:"Intl.NumberFormatOptionsCurrencyDisplay"},"Intl.NumberFormatOptionsUseGrouping":{type:"boolean",title:"Intl.NumberFormatOptionsUseGrouping"},WebChartDateTimeUnitFormatOptions:{type:"object",properties:{year:{$ref:"#/definitions/Intl.DateTimeFormatOptions"},month:{$ref:"#/definitions/Intl.DateTimeFormatOptions"},day:{$ref:"#/definitions/Intl.DateTimeFormatOptions"},hour:{$ref:"#/definitions/Intl.DateTimeFormatOptions"},minute:{$ref:"#/definitions/Intl.DateTimeFormatOptions"},second:{$ref:"#/definitions/Intl.DateTimeFormatOptions"}},description:"Interface used by the axis `valueFormat` property to describe how to format specific date and time units when displayed on the axis.",title:"WebChartDateTimeUnitFormatOptions"},"Intl.DateTimeFormatOptions":{type:"object",properties:{localeMatcher:{type:"string",enum:["best fit","lookup"]},weekday:{type:"string",enum:["long","short","narrow"]},era:{type:"string",enum:["long","short","narrow"]},year:{type:"string",enum:["numeric","2-digit"]},month:{type:"string",enum:["numeric","2-digit","long","short","narrow"]},day:{type:"string",enum:["numeric","2-digit"]},hour:{type:"string",enum:["numeric","2-digit"]},minute:{type:"string",enum:["numeric","2-digit"]},second:{type:"string",enum:["numeric","2-digit"]},timeZoneName:{type:"string",enum:["short","long","shortOffset","longOffset","shortGeneric","longGeneric"]},formatMatcher:{type:"string",enum:["best fit","basic"]},hour12:{type:"boolean"},timeZone:{type:"string"}},title:"Intl.DateTimeFormatOptions"},DateTimeFormatOptions:{type:"object",properties:{type:{type:"string",const:"date",description:"Represents a unique string identifier for the `NumberFormatOptions` object. For the `NumberFormatOptions` object, it is `date`. It can help to differentiate date-time axis from other types of axes such as numeric (value) axis and category axis."},intlOptions:{$ref:"#/definitions/Intl.DateTimeFormatOptions",description:"Represent the JS native [Intl.DateTimeFormatOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat), which is based on [CLDR](http://cldr.unicode.org/translation/date-time-1/date-time-patterns) specifications."},formatPerDateTimeUnit:{$ref:"#/definitions/WebChartDateTimeUnitFormatOptions",description:"Represents how to format specific date and time units when displayed on the axis, independently from the `intlOptions`."}},required:["type","intlOptions"],description:"Defines how the `DateTime` axis data should be formatted.",title:"DateTimeFormatOptions"},CategoryFormatOptions:{type:"object",properties:{type:{type:"string",const:"category",description:"Represents a unique string identifier for the `CategoryFormatOptions` object. For the `CategoryFormatOptions` object, it is `category`. It can help to differentiate category axis from other types of axes such as date-time axis and numeric (value) axis."},characterLimit:{type:["number","null"],description:"Represents a positive integer which represents the limit on the number of characters to be displayed for all the category strings. The truncated string are appended with `...`. If property is not present or `null`, no truncation is done."}},required:["type"],description:"Defines how the category axis data (categories) should be formatted.",title:"CategoryFormatOptions"},WebChartGuide:{type:"object",properties:{type:{type:"string",const:"chartGuide",description:"Represents a unique string identifier for the `Guide` object. For the `Guide` class, it is `chartGuide`."},start:{anyOf:[{type:"string",format:"date-time"},{type:"number"},{type:"string"},{type:"null"}],description:"Determines the value where the guide should begin."},end:{anyOf:[{type:"string",format:"date-time"},{type:"number"},{type:"string"},{type:"null"}],description:"Determines the value where the guide should end. If it is not specified, a line guide is used, otherwise a fill/rectangular guide is used."},style:{anyOf:[{$ref:"#/definitions/ISimpleFillSymbol"},{$ref:"#/definitions/ISimpleLineSymbol"}],description:"Determines how the guide should be rendered."},name:{type:"string",description:"A unique string identifier which is used to refer to a particular guide. It is displayed in the charts config UI to differentiate between different guides."},label:{$ref:"#/definitions/WebChartTextSymbol",description:"Defines a text label for the given guide. It is displayed on the chart next to the concerned guide and is styled using **esriTS** format."},visible:{type:"boolean",description:"Determines the visibility of the content.",default:!0},above:{type:"boolean",description:"Determines whether the guide should be rendered on top of (overlapping) the series or under the series.",default:!1},tooltipReverseColor:{type:"boolean",description:"Indicates whether to apply the hovered element's color to the guide's tooltip background (false) or its outline (true).",default:!1}},required:["type","start","style","name"],description:"JSON representation of the chart's guide object. Can be used to represent both line and fill guides.",title:"WebChartGuide"},WebChartAxis:{type:"object",properties:{type:{type:"string",const:"chartAxis",description:"Represents a unique string identifier for the `WebChartAxis` object. For `ChartAxis` object, it is `chartAxis`."},visible:{type:"boolean",description:"Determines the visibility of the content.",default:!0},isLogarithmic:{type:"boolean",description:"Specifies whether the axis has a logarithmic scale or not.",default:!1},title:{$ref:"#/definitions/WebChartText",description:"Contains styling information on how the title of the axis should be rendered"},valueFormat:{anyOf:[{$ref:"#/definitions/CategoryFormatOptions"},{$ref:"#/definitions/DateTimeFormatOptions"},{$ref:"#/definitions/NumberFormatOptions"}],description:"Specifies how numerical/categorical/date-time values should be formatted."},minimum:{type:["number","null"],description:"The minimum value which the axis should represent, when it is not defined or null, then the minimum value for the corresponding axis is automatically calculated."},maximum:{type:["number","null"],description:"The maximum value which the axis should represent, when it is not defined or null, then the maximum value for the corresponding axis is automatically calculated."},grid:{$ref:"#/definitions/ISimpleLineSymbol",description:"Dictates how the grid lines associated with a particular axis should be rendered."},guides:{type:"array",items:{$ref:"#/definitions/WebChartGuide"},description:"Represent an array of guides that should be rendered onto the axis."},lineSymbol:{$ref:"#/definitions/ISimpleLineSymbol",description:"Contains styling information on how the axis line should be rendered. If not provided a default style is applied."},labels:{$ref:"#/definitions/WebChartText",description:"Contains styling information on how the axis labels should be rendered."},scrollbar:{$ref:"#/definitions/WebChartAxisScrollBar",description:"Represents the axis scrollbar style and visibility."},displayZeroLine:{type:"boolean",description:"Represents an option to hide/un-hide the zero line on value axis.",default:!1},integerOnlyValues:{type:"boolean",description:"Represents an option to show `integer-only` values for a value axis",default:!1},displayCursorTooltip:{type:"boolean",description:"Specifies whether cursor tooltip should be displayed.",default:!1},buffer:{type:"boolean",description:"Allows setting a buffer to a **value axis** to provide some space around the series.",default:!1},tickSpacing:{type:"number",description:`The desired minimum distance between two adjacent axis ticks. The actual distance may fluctuate depending on the chart's size. When not provided a default value is assigned according to the axis type and axis labels behavior.
4
+
5
+ **Note**: This property is not applicable to gauge charts.`,minimum:1},dateBaseInterval:{$ref:"#/definitions/TimeIntervalInfo",description:"Specifies the base interval on a date axis. Will be ignored on the other axis types. It will be overridden by the properties from the series `binTemporalData` when provided."}},required:["type","valueFormat","labels"],description:"JSON representation of the chart's axis object",title:"WebChartAxis"},TimeIntervalInfo:{type:"object",properties:{unit:{$ref:"#/definitions/WebChartTemporalBinningUnits"},size:{type:"number"}},title:"TimeIntervalInfo"},WebChartTemporalBinningUnits:{type:"string",enum:["seconds","minutes","hours","days","weeks","months","quarters","years"],description:"The temporal binning units",title:"WebChartTemporalBinningUnits"},WebChartGaugeAxisTick:{type:"object",properties:{type:{type:"string",const:"gaugeAxisTick",description:"Represents a unique string identifier for the `GaugeAxisTick` object. For `WebChartGaugeAxisTick` object, it is `gaugeAxisTick`."},visible:{type:"boolean",description:"Determines the visibility of the axis ticks.",default:!0}},required:["type"],description:"JSON representation of the gauge axis ticks. Currently only used by `WebChartGaugeAxis`.",title:"WebChartGaugeAxisTick"},WebChartNeedle:{type:"object",properties:{type:{type:"string",const:"gaugeNeedle",description:"Represents a unique string identifier for the `ChartNeedle` object. For `WebChartNeedle` object, it is `gaugeNeedle`."},visible:{type:"boolean",description:"Hides or shows the needle.",default:!0},symbol:{$ref:"#/definitions/ISimpleFillSymbol",description:"Contains styling information on how the needle should be rendered."},startWidth:{type:["number","null"],description:"Represents the needle's thickness at the bottom (chart's center) in pixels.",minimum:1,default:10},endWidth:{type:["number","null"],description:"Represents the needle's thickness at the top in pixels.",minimum:1,default:1},innerRadius:{type:["number","null"],description:"Represents the size of the hole in the middle of the chart. Can be visualized when guides are displayed.",minimum:0,maximum:100,default:25},displayPin:{type:"boolean",description:"Hides or shows the needle's pin (centroid circle).",default:!1}},required:["type"],description:"JSON representation of a gauge needle.",title:"WebChartNeedle"},WebChartGaugeAxis:{type:"object",properties:{type:{type:"string",const:"chartAxis",description:"Represents a unique string identifier for the `WebChartAxis` object. For `ChartAxis` object, it is `chartAxis`."},visible:{type:"boolean",description:"Determines the visibility of the content.",default:!0},isLogarithmic:{type:"boolean",description:"Specifies whether the axis has a logarithmic scale or not.",default:!1},title:{$ref:"#/definitions/WebChartText",description:"Contains styling information on how the title of the axis should be rendered"},valueFormat:{anyOf:[{$ref:"#/definitions/CategoryFormatOptions"},{$ref:"#/definitions/DateTimeFormatOptions"},{$ref:"#/definitions/NumberFormatOptions"}],description:"Specifies how numerical/categorical/date-time values should be formatted."},minimum:{type:["number","null"],description:"The minimum value which the axis should represent, when it is not defined or null, then the minimum value for the corresponding axis is automatically calculated."},maximum:{type:["number","null"],description:"The maximum value which the axis should represent, when it is not defined or null, then the maximum value for the corresponding axis is automatically calculated."},grid:{$ref:"#/definitions/ISimpleLineSymbol",description:"Dictates how the grid lines associated with a particular axis should be rendered."},guides:{type:"array",items:{$ref:"#/definitions/WebChartGuide"},description:"Represent an array of guides that should be rendered onto the axis."},lineSymbol:{$ref:"#/definitions/ISimpleLineSymbol",description:"Contains styling information on how the axis line should be rendered. If not provided a default style is applied."},labels:{$ref:"#/definitions/WebChartText",description:"Contains styling information on how the axis labels should be rendered."},scrollbar:{$ref:"#/definitions/WebChartAxisScrollBar",description:"Represents the axis scrollbar style and visibility."},displayZeroLine:{type:"boolean",description:"Represents an option to hide/un-hide the zero line on value axis.",default:!1},integerOnlyValues:{type:"boolean",description:"Represents an option to show `integer-only` values for a value axis",default:!1},displayCursorTooltip:{type:"boolean",description:"Specifies whether cursor tooltip should be displayed.",default:!1},buffer:{type:"boolean",description:"Allows setting a buffer to a **value axis** to provide some space around the series.",default:!1},tickSpacing:{type:"number",description:`The desired minimum distance between two adjacent axis ticks. The actual distance may fluctuate depending on the chart's size. When not provided a default value is assigned according to the axis type and axis labels behavior.
6
+
7
+ **Note**: This property is not applicable to gauge charts.`,minimum:1},dateBaseInterval:{$ref:"#/definitions/TimeIntervalInfo",description:"Specifies the base interval on a date axis. Will be ignored on the other axis types. It will be overridden by the properties from the series `binTemporalData` when provided."},innerLabel:{$ref:"#/definitions/WebChartText",description:"Specifies how the axis' inner label needs to be displayed."},needle:{$ref:"#/definitions/WebChartNeedle",description:"Specifies how the axis' needle needs to be displayed."},ticks:{$ref:"#/definitions/WebChartGaugeAxisTick",description:"Specifies how the axis' ticks need to be displayed."},labelsIncrement:{type:"number",description:"If a label has a value being a multiple of that property, it will be displayed. Otherwise it will be hidden.\n\nIf the property is `undefined` or `0`, the chart will be displayed with 6 axis labels distributed evenly along the axis min and max.\n\nIf the property has a value that results in more than a set limit of axis labels (`25` as defined in `ChartDefaults.gauge.maximumNumberOfLabelIntervals`) this property value will be ignored and the chart will be displayed with only axis min/max with 4 ticks in between.",default:"undefined"},onlyShowFirstAndLastLabels:{type:"boolean",description:"Specifies if only the first and last labels need to be displayed. If set to `true` all the other labels will be hidden. Their visibility still depends on the axis labels visibility (`WebChartAxis.labels.visible`).",default:!1},minimumValueConversion:{$ref:"#/definitions/ValueConversion",description:"Defines how to convert the axis minimum."},maximumValueConversion:{$ref:"#/definitions/ValueConversion",description:"Defines how to convert the axis maximum."},minimumFromField:{anyOf:[{$ref:"#/definitions/IStatisticDefinition"},{type:"string"}],description:"With a gauge by feature:\n- `minimumFromField` is expected to be a field name. The value from that field for the given feature is mapped to the axis minimum value.\n\nWith a statistic gauge:\n- If `minimumFromField` is set to a field name (string), the minimum from that field is mapped to the axis minimum value.\n- If it is set to an `IStatisticDefinition` the statistic (min, max, avg...) from the given field is mapped to the axis minimum value.\n\nWhen `minimumFromField` is not provided or when it leads to an invalid value, the `minimum` value from the axis config, if provided, or the default value of 0, in that order, will be used."},maximumFromField:{anyOf:[{$ref:"#/definitions/IStatisticDefinition"},{type:"string"}],description:"With a gauge by feature:\n- `maximumFromField` is expected to be a field name. The value from that field for the given feature is mapped to the axis maximum value.\n\nWith a statistic gauge:\n- If `maximumFromField` is set to a field name (string), the maximum from that field is mapped to the axis maximum value.\n- If it is set to an `IStatisticDefinition` the statistic (min, max, avg...) from the given field is mapped to the axis maximum value.\n\nWhen `maximumFromField` is not provided or when it leads to an invalid value, the `maximum` value from the axis config, if provided, or the default value of 0, in that order, will be used."}},required:["labels","type","valueFormat"],description:"JSON representation of the gauge chart's axis object. Inherits from the `WebChartAxis` properties.",title:"WebChartGaugeAxis"},IStatisticDefinition:{type:"object",properties:{statisticType:{type:"string",enum:["avg","centroid-aggregate","convex-hull-aggregate","count","envelope-aggregate","max","min","percentile-continuous","percentile-discrete","stddev","sum","var"],description:"Statistical operation to perform."},statisticParameters:{type:"object",properties:{value:{type:"number"},orderBy:{type:"string",enum:["asc","desc"]}},required:["value"],description:"Parameters to be used along with `statisticType`. Currently only applicable for `percentile-continuous` (continuous percentile) and `percentile-discrete` (discrete percentile)."},onStatisticField:{type:"string",description:"Field on which to perform the statistical operation."},outStatisticFieldName:{type:"string",description:"Field name for the returned statistic field.\n\nIf `outStatisticFieldName` is empty or missing, the server will assign one. A valid field name can only contain alphanumeric characters and an underscore. If `outStatisticFieldName` is a reserved keyword of the underlying DBMS, the operation can fail. Try specifying an alternative `outStatisticFieldName`."}},required:["statisticType","onStatisticField"],title:"IStatisticDefinition"},WebChartRadarChartAxis:{type:"object",properties:{type:{type:"string",const:"chartAxis",description:"Represents a unique string identifier for the `WebChartAxis` object. For `ChartAxis` object, it is `chartAxis`."},visible:{type:"boolean",description:"Determines the visibility of the content.",default:!0},isLogarithmic:{type:"boolean",description:"Specifies whether the axis has a logarithmic scale or not.",default:!1},title:{$ref:"#/definitions/WebChartText",description:"Contains styling information on how the title of the axis should be rendered"},valueFormat:{anyOf:[{$ref:"#/definitions/CategoryFormatOptions"},{$ref:"#/definitions/DateTimeFormatOptions"},{$ref:"#/definitions/NumberFormatOptions"}],description:"Specifies how numerical/categorical/date-time values should be formatted."},minimum:{type:["number","null"],description:"The minimum value which the axis should represent, when it is not defined or null, then the minimum value for the corresponding axis is automatically calculated."},maximum:{type:["number","null"],description:"The maximum value which the axis should represent, when it is not defined or null, then the maximum value for the corresponding axis is automatically calculated."},grid:{$ref:"#/definitions/ISimpleLineSymbol",description:"Dictates how the grid lines associated with a particular axis should be rendered."},guides:{type:"array",items:{$ref:"#/definitions/WebChartGuide"},description:"Represent an array of guides that should be rendered onto the axis."},lineSymbol:{$ref:"#/definitions/ISimpleLineSymbol",description:"Contains styling information on how the axis line should be rendered. If not provided a default style is applied."},labels:{$ref:"#/definitions/WebChartText",description:"Contains styling information on how the axis labels should be rendered."},scrollbar:{$ref:"#/definitions/WebChartAxisScrollBar",description:"Represents the axis scrollbar style and visibility."},displayZeroLine:{type:"boolean",description:"Represents an option to hide/un-hide the zero line on value axis.",default:!1},integerOnlyValues:{type:"boolean",description:"Represents an option to show `integer-only` values for a value axis",default:!1},displayCursorTooltip:{type:"boolean",description:"Specifies whether cursor tooltip should be displayed.",default:!1},buffer:{type:"boolean",description:"Allows setting a buffer to a **value axis** to provide some space around the series.",default:!1},tickSpacing:{type:"number",description:`The desired minimum distance between two adjacent axis ticks. The actual distance may fluctuate depending on the chart's size. When not provided a default value is assigned according to the axis type and axis labels behavior.
8
+
9
+ **Note**: This property is not applicable to gauge charts.`,minimum:1},dateBaseInterval:{$ref:"#/definitions/TimeIntervalInfo",description:"Specifies the base interval on a date axis. Will be ignored on the other axis types. It will be overridden by the properties from the series `binTemporalData` when provided."},labelsOrientation:{$ref:"#/definitions/WebChartRadarChartAxisLabelsOrientation",description:"Defines the labels orientation.",default:"WebChartRadarChartAxisLabelsOrientation.Circular"}},required:["labels","type","valueFormat"],description:"JSON representation of the radar chart's axis object.",title:"WebChartRadarChartAxis"},WebChartRadarChartAxisLabelsOrientation:{type:"string",enum:["radial","circular","horizontal"],description:"Labels orientation for radar chart axes.",title:"WebChartRadarChartAxisLabelsOrientation"},WebChartQuery:{type:"object",properties:{outFields:{type:"array",items:{type:"string"},description:"Attribute fields to include in the `FeatureSet`. Will have an effect on chart with no aggregation."},where:{type:"string",description:"Acts as a filter on the base data for attribute-based filtering, expect for bar/line charts for which is is used to handle the split-by field values."},groupByFieldsForStatistics:{type:"array",items:{type:"string"},description:"An array of fields which determine how the base data is grouped. Only one **groupBy** field is supported,",maxItems:1},outStatistics:{type:"array",items:{$ref:"#/definitions/IStatisticDefinition"},description:"Represents an array of statistics definitions which dictate how a particular field should be aggregated."},orderByFields:{type:"array",items:{type:"string"},description:"Represents the sorting order of the output result.\n\nIt's recommended to use the `orderByFields` property of the chart's `orderOptions` object instead of this one. If both are used, the `orderByFields` property of the chart's `orderOptions` object will take precedence.\n\nThe format of any entry in this array is `field_name sorting_order`. When `sorting_order` is not defined, it is assumed to be ascending."},gdbVersion:{type:"string",description:"Specifies the geodatabase version to display for feature service queries."},geometry:{anyOf:[{$ref:"#/definitions/IEnvelope"},{$ref:"#/definitions/IExtent"},{$ref:"#/definitions/IPoint"},{$ref:"#/definitions/IPolygon"},{$ref:"#/definitions/IPolygonWithCurves"},{$ref:"#/definitions/IPolyline"}],description:"The geometry to apply to the spatial filter. A buffer can be applied to it by setting the properties `distance` and `units`."},spatialRelationship:{type:"string",enum:["contains","crosses","disjoint","envelope-intersects","index-intersects","intersects","overlaps","relation","touches","within"],description:"For spatial filters, this parameter defines the spatial relationship to filter features in the layer view against the filter geometry."},distance:{type:"number",description:"Specifies a search distance for the `geometry`. To be associated with the `units` property. For compatible layers only."},units:{$ref:"#/definitions/RESTUnits",description:"The unit for calculating the buffer distance when `distance` and `geometry` are provided. If not specified, the unit is derived from the geometry spatial reference."},timeExtent:{type:"array",items:{type:"number"},minItems:2,maxItems:2,description:"A time extent `[timestamp, timestamp]` for a temporal query against time-aware layers."},start:{type:"number",description:"The zero-based index indicating where to begin retrieving features."},num:{type:"number",description:"The number of features to retrieve."},returnDistinctValues:{type:"boolean",description:"If true then the query returns distinct values based on the field(s) specified in outFields. Available for count-based aggregations only.",default:!1},fetchNullValues:{type:"boolean",description:"Indicates whether to fetch null values for them to be counted or displayed as categories on the chart.",default:!1},objectIds:{type:"array",items:{type:["number","string"]},description:"An array of objectIds or uniqueIds of the features to be filtered."}},description:"Chart's query object.",title:"WebChartQuery"},IEnvelope:{type:"object",properties:{spatialReference:{$ref:"#/definitions/ISpatialReference"},xmin:{type:"number"},xmax:{type:"number"},ymin:{type:"number"},ymax:{type:"number"},zmin:{type:"number"},zmax:{type:"number"},mmin:{type:"number"},mmax:{type:"number"}},required:["xmin","xmax","ymin","ymax"],description:"An envelope is a rectangle defined by a range of values for each coordinate and attribute.",title:"IEnvelope"},IGeometry:{type:"object",properties:{spatialReference:{$ref:"#/definitions/ISpatialReference"}},description:'a building block for discrete geometries\n\n`IGeometry` can also be imported from the following packages:\n\n```js import { IGeometry } from "@esri/arcgis-rest-feature-layer"; ```',title:"IGeometry"},ISpatialReference:{type:"object",properties:{wkid:{type:["number","null"]},latestWkid:{type:"number"},vcsWkid:{type:"number"},latestVcsWkid:{type:"number"},wkt:{type:["string","null"]},latestWkt:{type:"string"}},title:"ISpatialReference"},IExtent:{type:"object",properties:{xmin:{type:"number"},ymin:{type:"number"},zmin:{type:"number"},xmax:{type:"number"},ymax:{type:"number"},zmax:{type:"number"},spatialReference:{$ref:"#/definitions/ISpatialReference"}},required:["xmin","ymin","xmax","ymax"],description:'Extents are used to define rectangles and bounding boxes.\n\n`IExtent` can also be imported from the following packages:\n\n```js import { IExtent } from "@esri/arcgis-rest-geocoding"; import { IExtent } from "@esri/arcgis-rest-service-admin"; import { IExtent } from "@esri/arcgis-rest-feature-layer"; ```',title:"IExtent"},IPoint:{type:"object",properties:{spatialReference:{$ref:"#/definitions/ISpatialReference"},hasZ:{type:"boolean"},hasM:{type:"boolean"},x:{type:"number"},y:{type:"number"},z:{type:"number"}},required:["x","y"],title:"IPoint"},IHasZM:{type:"object",properties:{hasZ:{type:"boolean"},hasM:{type:"boolean"}},title:"IHasZM"},IPolygon:{type:"object",properties:{spatialReference:{$ref:"#/definitions/ISpatialReference"},hasZ:{type:"boolean"},hasM:{type:"boolean"},rings:{type:"array",items:{type:"array",items:{$ref:"#/definitions/Position"}}}},required:["rings"],title:"IPolygon"},Position:{anyOf:[{$ref:"#/definitions/Position2D"},{type:"array",items:{type:"number"},minItems:4,maxItems:4},{type:"array",items:{type:"number"},minItems:3,maxItems:3}],title:"Position"},Position2D:{type:"array",items:{type:"number"},minItems:2,maxItems:2,title:"Position2D"},IPolygonWithCurves:{type:"object",properties:{spatialReference:{$ref:"#/definitions/ISpatialReference"},hasZ:{type:"boolean"},hasM:{type:"boolean"},curveRings:{type:"array",items:{type:"array",items:{anyOf:[{$ref:"#/definitions/JsonCurve"},{$ref:"#/definitions/Position"}]}}}},required:["curveRings"],title:"IPolygonWithCurves"},JsonCurve:{anyOf:[{$ref:"#/definitions/IArc"},{$ref:"#/definitions/IBezierCurve"},{$ref:"#/definitions/ICircularArc"},{$ref:"#/definitions/IOldCircularArc"}],title:"JsonCurve"},IArc:{type:"object",properties:{a:{type:"array",minItems:7,items:[{$ref:"#/definitions/Position"},{$ref:"#/definitions/Position2D"},{type:"number"},{type:"number"},{type:"number"},{type:"number"},{type:"number"}],maxItems:7}},required:["a"],title:"IArc"},IBezierCurve:{type:"object",properties:{b:{type:"array",minItems:3,items:[{$ref:"#/definitions/Position"},{$ref:"#/definitions/Position2D"},{$ref:"#/definitions/Position2D"}],maxItems:3}},required:["b"],title:"IBezierCurve"},ICircularArc:{type:"object",properties:{c:{type:"array",minItems:2,items:[{$ref:"#/definitions/Position"},{$ref:"#/definitions/Position2D"}],maxItems:2}},required:["c"],title:"ICircularArc"},IOldCircularArc:{type:"object",properties:{a:{type:"array",minItems:4,items:[{$ref:"#/definitions/Position"},{$ref:"#/definitions/Position2D"},{type:"number"},{type:"number"}],maxItems:4}},required:["a"],title:"IOldCircularArc"},IPolyline:{type:"object",properties:{spatialReference:{$ref:"#/definitions/ISpatialReference"},hasZ:{type:"boolean"},hasM:{type:"boolean"},paths:{type:"array",items:{type:"array",items:{$ref:"#/definitions/Position"}}}},required:["paths"],title:"IPolyline"},RESTUnits:{type:"string",enum:["feet","miles","nautical-miles","us-nautical-miles","meters","kilometers"],title:"RESTUnits"},WebChartSeriesQuery:{$ref:"#/definitions/Omit%3CWebChartQuery%2C(%22distance%22%7C%22gdbVersion%22%7C%22geometry%22%7C%22num%22%7C%22objectIds%22%7C%22orderByFields%22%7C%22spatialRelationship%22%7C%22start%22%7C%22timeExtent%22%7C%22units%22)%3E",description:"Subset of the `WebChartQuery`, used at the series level.\n\n**Note**: The former `orderByFields` property is replaced by the `orderOptions` property of `WebChart`.",title:"WebChartSeriesQuery"},'Omit<WebChartQuery,("distance"|"gdbVersion"|"geometry"|"num"|"objectIds"|"orderByFields"|"spatialRelationship"|"start"|"timeExtent"|"units")>':{$ref:"#/definitions/Pick%3CWebChartQuery%2CExclude%3C(%22outFields%22%7C%22where%22%7C%22groupByFieldsForStatistics%22%7C%22outStatistics%22%7C%22orderByFields%22%7C%22gdbVersion%22%7C%22geometry%22%7C%22spatialRelationship%22%7C%22distance%22%7C%22units%22%7C%22timeExtent%22%7C%22start%22%7C%22num%22%7C%22returnDistinctValues%22%7C%22fetchNullValues%22%7C%22objectIds%22%7Cstring)%2C(%22distance%22%7C%22gdbVersion%22%7C%22geometry%22%7C%22num%22%7C%22objectIds%22%7C%22orderByFields%22%7C%22spatialRelationship%22%7C%22start%22%7C%22timeExtent%22%7C%22units%22)%3E%3E",title:'Omit<WebChartQuery,("distance"|"gdbVersion"|"geometry"|"num"|"objectIds"|"orderByFields"|"spatialRelationship"|"start"|"timeExtent"|"units")>'},'Pick<WebChartQuery,Exclude<("outFields"|"where"|"groupByFieldsForStatistics"|"outStatistics"|"orderByFields"|"gdbVersion"|"geometry"|"spatialRelationship"|"distance"|"units"|"timeExtent"|"start"|"num"|"returnDistinctValues"|"fetchNullValues"|"objectIds"|string),("distance"|"gdbVersion"|"geometry"|"num"|"objectIds"|"orderByFields"|"spatialRelationship"|"start"|"timeExtent"|"units")>>':{type:"object",properties:{outFields:{type:"array",items:{type:"string"},description:"Attribute fields to include in the `FeatureSet`. Will have an effect on chart with no aggregation."},where:{type:"string",description:"Acts as a filter on the base data for attribute-based filtering, expect for bar/line charts for which is is used to handle the split-by field values."},groupByFieldsForStatistics:{type:"array",items:{type:"string"},description:"An array of fields which determine how the base data is grouped. Only one **groupBy** field is supported,",maxItems:1},outStatistics:{type:"array",items:{$ref:"#/definitions/IStatisticDefinition"},description:"Represents an array of statistics definitions which dictate how a particular field should be aggregated."},returnDistinctValues:{type:"boolean",description:"If true then the query returns distinct values based on the field(s) specified in outFields. Available for count-based aggregations only.",default:!1},fetchNullValues:{type:"boolean",description:"Indicates whether to fetch null values for them to be counted or displayed as categories on the chart.",default:!1}},title:'Pick<WebChartQuery,Exclude<("outFields"|"where"|"groupByFieldsForStatistics"|"outStatistics"|"orderByFields"|"gdbVersion"|"geometry"|"spatialRelationship"|"distance"|"units"|"timeExtent"|"start"|"num"|"returnDistinctValues"|"fetchNullValues"|"objectIds"|string),("distance"|"gdbVersion"|"geometry"|"num"|"objectIds"|"orderByFields"|"spatialRelationship"|"start"|"timeExtent"|"units")>>'},WebChartDataFilters:{$ref:"#/definitions/Pick%3CWebChartQuery%2C(%22distance%22%7C%22gdbVersion%22%7C%22geometry%22%7C%22objectIds%22%7C%22spatialRelationship%22%7C%22timeExtent%22%7C%22units%22%7C%22where%22)%3E",description:"JSON representation of filters applied to the data.",title:"WebChartDataFilters"},'Pick<WebChartQuery,("distance"|"gdbVersion"|"geometry"|"objectIds"|"spatialRelationship"|"timeExtent"|"units"|"where")>':{type:"object",properties:{distance:{type:"number",description:"Specifies a search distance for the `geometry`. To be associated with the `units` property. For compatible layers only."},gdbVersion:{type:"string",description:"Specifies the geodatabase version to display for feature service queries."},geometry:{anyOf:[{$ref:"#/definitions/IEnvelope"},{$ref:"#/definitions/IExtent"},{$ref:"#/definitions/IPoint"},{$ref:"#/definitions/IPolygon"},{$ref:"#/definitions/IPolygonWithCurves"},{$ref:"#/definitions/IPolyline"}],description:"The geometry to apply to the spatial filter. A buffer can be applied to it by setting the properties `distance` and `units`."},objectIds:{type:"array",items:{type:["number","string"]},description:"An array of objectIds or uniqueIds of the features to be filtered."},spatialRelationship:{type:"string",enum:["contains","crosses","disjoint","envelope-intersects","index-intersects","intersects","overlaps","relation","touches","within"],description:"For spatial filters, this parameter defines the spatial relationship to filter features in the layer view against the filter geometry."},timeExtent:{type:"array",items:{type:"number"},minItems:2,maxItems:2,description:"A time extent `[timestamp, timestamp]` for a temporal query against time-aware layers."},units:{$ref:"#/definitions/RESTUnits",description:"The unit for calculating the buffer distance when `distance` and `geometry` are provided. If not specified, the unit is derived from the geometry spatial reference."},where:{type:"string",description:"Acts as a filter on the base data for attribute-based filtering, expect for bar/line charts for which is is used to handle the split-by field values."}},title:'Pick<WebChartQuery,("distance"|"gdbVersion"|"geometry"|"objectIds"|"spatialRelationship"|"timeExtent"|"units"|"where")>'},WebChartSeries:{type:"object",properties:{type:{type:"string"},id:{type:"string",description:"A unique string used to differentiate the series on a chart."},visible:{type:"boolean",description:"Hides or shows the series. If the series is has **visible** set to `false`, the corresponding legend is grayed out in the legend box.",default:!0},dataTooltipVisible:{type:"boolean",description:`Hides or shows data tooltips.
10
+ **Note**: Not applicable to gauge.`,default:!0},dataTooltipReverseColor:{type:"boolean",description:"Indicates whether to apply the hovered element's color to the background (`false`) or the outline (`true`).\n**Note**: Not applicable to gauge.",default:!1},dataTooltipValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render numeric values in tooltips."},dataTooltipPercentFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render percent values in tooltips. Used for stacked 100% bar and line charts, as well as pie charts."},dataTooltipDateFormat:{$ref:"#/definitions/DateTimeFormatOptions",description:"Defines how to render dates in tooltips. Used for bar and line charts using a date x-axis with no time binning."},name:{type:"string",description:"Specifies the name of the series. It would be reflected in the chart's legend."},query:{$ref:"#/definitions/WebChartSeriesQuery",description:"Specifies a query object associated with a particular series containing information on what data to fetch for that series."},x:{type:"string",description:"Specifies which field represents the x-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) is needed.",minLength:1},dataLabels:{$ref:"#/definitions/WebChartText",description:"Specifies how the data labels should be rendered."},assignToSecondValueAxis:{type:"boolean",description:"Specifies whether the series should be assigned to the second value axis, when the `axes` property defines it. Supported by bar and line series.",default:!1}},required:["type","id","name","x"],description:"JSON representation of the chart's series object. All other series extends this interface.",title:"WebChartSeries"},WebChartCalendarDatePartsBinning:{type:"object",properties:{trimIncompleteTimeInterval:{type:"boolean",description:"Determines whether incomplete time intervals at the start or end of the data span (depending on the `timeAggregationType`) will be removed from the chart.\n\nIncomplete intervals on a chart can cause misleading results in which the period in question is under- or over reported due to a different amount of time in the interval.\n\n`true` - trim the incomplete intervals. `false` - does not trim the incomplete intervals.",default:!0},start:{type:"number",description:"The binning start date.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."},end:{type:"number",description:"The binning end date.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."},offset:{type:"object",properties:{unit:{$ref:"#/definitions/WebChartTemporalBinningUnits"},size:{type:"number"}},required:["unit","size"],description:"Offset to apply to the results.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."},type:{type:"string",const:"calendarDateParts",description:"Represents a unique string identifier for the `CalendarDatePartsBinning` object. `For CalendarDatePartsBinning` object, it is `calendarDateParts`."},unit:{$ref:"#/definitions/WebChartCalendarDatePartsUnits",description:"Represents the unit to use to bin the data."}},required:["type","unit"],title:"WebChartCalendarDatePartsBinning"},WebChartTemporalBinningBase:{type:"object",properties:{trimIncompleteTimeInterval:{type:"boolean",description:"Determines whether incomplete time intervals at the start or end of the data span (depending on the `timeAggregationType`) will be removed from the chart.\n\nIncomplete intervals on a chart can cause misleading results in which the period in question is under- or over reported due to a different amount of time in the interval.\n\n`true` - trim the incomplete intervals. `false` - does not trim the incomplete intervals.",default:!0},start:{type:"number",description:"The binning start date.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."},end:{type:"number",description:"The binning end date.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."},offset:{type:"object",properties:{unit:{$ref:"#/definitions/WebChartTemporalBinningUnits"},size:{type:"number"}},required:["unit","size"],description:"Offset to apply to the results.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."}},description:"Describes the basic properties available for a temporal binning",title:"WebChartTemporalBinningBase"},WebChartCalendarDatePartsUnits:{type:"string",enum:["dayOfMonth","dayOfWeek","dayOfYear","hourOfDay","monthOfYear","minuteOfDay","weekOfYear","quarterOfYear"],description:"Represents the units that can be used for calendar-based date parts binning.",title:"WebChartCalendarDatePartsUnits"},WebChartTemporalBinning:{type:"object",properties:{outTimeZone:{type:"string",description:"Defines the [IANA time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) used for temporal bin calculations.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."},firstDayOfWeek:{type:"number",description:"The first day of the week. This property is used to determine the start of the week for date-based bins. The default value depends on the user locale (e.g. `7` as Sunday for US, `1` as Monday for France).\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation.",minimum:1,maximum:7,multipleOf:1},nullPolicy:{$ref:"#/definitions/WebChartNullPolicyTypes",description:"How summarized bins returning a null value are displayed. Supported options are:\n- `null`, `zero`, and `interpolate` for line series.\n- `null` and `zero` for bar series.",default:"null"},trimIncompleteTimeInterval:{type:"boolean",description:"Determines whether incomplete time intervals at the start or end of the data span (depending on the `timeAggregationType`) will be removed from the chart.\n\nIncomplete intervals on a chart can cause misleading results in which the period in question is under- or over reported due to a different amount of time in the interval.\n\n`true` - trim the incomplete intervals. `false` - does not trim the incomplete intervals.",default:!0},start:{type:"number",description:"The binning start date.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."},end:{type:"number",description:"The binning end date.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."},offset:{type:"object",properties:{unit:{$ref:"#/definitions/WebChartTemporalBinningUnits"},size:{type:"number"}},required:["unit","size"],description:"Offset to apply to the results.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."},unit:{$ref:"#/definitions/WebChartTemporalBinningUnits",description:'The unit of time to use to bin the temporal data.\n\nCurrent limitation: the "quarters" unit is only supported if the provided layer supports the `queryBins` operation.'},size:{type:"number",description:"The span of time that will be binned or aggregated together. Works in coordination with `unit`."},timeAggregationType:{$ref:"#/definitions/WebChartTimeAggregationTypes",description:"The time interval alignment type. Valid options include `equalIntervalsFromStartTime` and `equalIntervalsFromEndTime`.\n\nWhen specific the binning will start at the first or last date of the dataset.",default:"equalIntervalsFromStartTime"}},description:"Describes the properties available for a temporal binning for bar charts and line charts.",title:"WebChartTemporalBinning"},WebChartTemporalBinningExtras:{type:"object",properties:{outTimeZone:{type:"string",description:"Defines the [IANA time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) used for temporal bin calculations.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."},firstDayOfWeek:{type:"number",description:"The first day of the week. This property is used to determine the start of the week for date-based bins. The default value depends on the user locale (e.g. `7` as Sunday for US, `1` as Monday for France).\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation.",minimum:1,maximum:7,multipleOf:1},nullPolicy:{$ref:"#/definitions/WebChartNullPolicyTypes",description:"How summarized bins returning a null value are displayed. Supported options are:\n- `null`, `zero`, and `interpolate` for line series.\n- `null` and `zero` for bar series.",default:"null"}},description:"Describes the extra properties available for a temporal series and for the heat chart.",title:"WebChartTemporalBinningExtras"},WebChartNullPolicyTypes:{type:"string",enum:["null","zero","interpolate"],description:"Represents the different types of null policy that can be applied to a chart using the time binning feature.",title:"WebChartNullPolicyTypes"},WebChartTimeAggregationTypes:{type:"string",enum:["equalIntervalsFromStartTime","equalIntervalsFromEndTime"],description:"Represents the different types of time aggregation that can be applied to a chart using the time binning feature.",title:"WebChartTimeAggregationTypes"},WebChartTemporalSeries:{type:"object",properties:{binTemporalData:{type:"boolean",description:"Whether to use the time properties to bin the temporal data.\n\n`false` - the `binCount` and `unit` properties can be used to set the date axis base interval.",default:!0},temporalBinning:{$ref:"#/definitions/WebChartTemporalBinning",description:"Describes how to bin the temporal data."}},description:"Describes the properties related to a temporal series.",title:"WebChartTemporalSeries"},WebChartBarChartSeries:{type:"object",properties:{binTemporalData:{type:"boolean",description:"Whether to use the time properties to bin the temporal data.\n\n`false` - the `binCount` and `unit` properties can be used to set the date axis base interval.",default:!0},temporalBinning:{$ref:"#/definitions/WebChartTemporalBinning",description:"Describes how to bin the temporal data."},type:{type:"string",const:"barSeries",description:"Represents a unique string identifier for the `BarChartSeries` object. For `BarSeries` object, it is `barSeries`."},id:{type:"string",description:"A unique string used to differentiate the series on a chart."},visible:{type:"boolean",description:"Hides or shows the series. If the series is has **visible** set to `false`, the corresponding legend is grayed out in the legend box.",default:!0},dataTooltipVisible:{type:"boolean",description:`Hides or shows data tooltips.
11
+ **Note**: Not applicable to gauge.`,default:!0},dataTooltipReverseColor:{type:"boolean",description:"Indicates whether to apply the hovered element's color to the background (`false`) or the outline (`true`).\n**Note**: Not applicable to gauge.",default:!1},dataTooltipValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render numeric values in tooltips."},dataTooltipPercentFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render percent values in tooltips. Used for stacked 100% bar and line charts, as well as pie charts."},dataTooltipDateFormat:{$ref:"#/definitions/DateTimeFormatOptions",description:"Defines how to render dates in tooltips. Used for bar and line charts using a date x-axis with no time binning."},name:{type:"string",description:"Specifies the name of the series. It would be reflected in the chart's legend."},query:{$ref:"#/definitions/WebChartSeriesQuery",description:"Specifies a query object associated with a particular series containing information on what data to fetch for that series."},x:{type:"string",description:"Specifies which field represents the x-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) is needed.",minLength:1},dataLabels:{$ref:"#/definitions/WebChartText",description:"Specifies how the data labels should be rendered."},assignToSecondValueAxis:{type:"boolean",description:"Specifies whether the series should be assigned to the second value axis, when the `axes` property defines it. Supported by bar and line series.",default:!1},y:{type:"string",description:"Specifies which field represents the y-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) are needed.",minLength:1},fillSymbol:{$ref:"#/definitions/ISimpleFillSymbol",description:"Contains styling information on how the columns/bars should be rendered."},hideOversizedStackedLabels:{type:"boolean",description:"`true` or `undefined` - the labels displayed within a small stacked column are hidden to avoid cluttering. `false` - all the data labels are displayed.",default:!0},hideOversizedSideBySideLabels:{type:"boolean",description:"When `true`, the labels displayed within a small column for sideBySide bar series are hidden to avoid cluttering. When `false` or `undefined` (default), all the data labels are displayed.",default:!1},nullCategory:{$ref:"#/definitions/WebChartNullCategory",description:"Specifies how to display the category with null value. Setting this property will ensure that the item with no data is displayed on the chart with the specified text and color."}},required:["id","name","type","x","y"],description:"Bar chart shows the categorical distribution of `String` or `DateTime` data.",title:"WebChartBarChartSeries"},HistogramOverlays:{type:"object",properties:{type:{type:"string",const:"chartOverlays",description:"Represents a unique string identifier for the `HistogramOverlays` object. For `HistogramOverlays` object, it is `chartOverlays`."},mean:{$ref:"#/definitions/WebChartOverlay",description:`Specifies the mean overlay for histogram.
12
+
13
+ If not provided, the mean overlay is not displayed.`},median:{$ref:"#/definitions/WebChartOverlay",description:`Specifies the median overlay for histogram.
14
+
15
+ If not provided, the median overlay is not displayed.`},standardDeviation:{$ref:"#/definitions/WebChartOverlay",description:`Specifies the standard deviation overlay for histogram.
16
+
17
+ If not provided, the standard deviation overlay is not displayed.`},comparisonDistribution:{$ref:"#/definitions/WebChartOverlay",description:`Specifies the comparison distribution overlay for histogram.
18
+
19
+ If not provided, the comparison distribution overlay is not displayed.`}},required:["type"],description:"Object containing histogram overlays.",title:"HistogramOverlays"},WebChartHistogramSeries:{type:"object",properties:{type:{type:"string",const:"histogramSeries",description:"Represents a unique string identifier for the `HistogramSeries` object. For `HistogramSeries` object, it is `histogramSeries`."},id:{type:"string",description:"A unique string used to differentiate the series on a chart."},visible:{type:"boolean",description:"Hides or shows the series. If the series is has **visible** set to `false`, the corresponding legend is grayed out in the legend box.",default:!0},dataTooltipVisible:{type:"boolean",description:`Hides or shows data tooltips.
20
+ **Note**: Not applicable to gauge.`,default:!0},dataTooltipReverseColor:{type:"boolean",description:"Indicates whether to apply the hovered element's color to the background (`false`) or the outline (`true`).\n**Note**: Not applicable to gauge.",default:!1},dataTooltipValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render numeric values in tooltips."},dataTooltipPercentFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render percent values in tooltips. Used for stacked 100% bar and line charts, as well as pie charts."},dataTooltipDateFormat:{$ref:"#/definitions/DateTimeFormatOptions",description:"Defines how to render dates in tooltips. Used for bar and line charts using a date x-axis with no time binning."},name:{type:"string",description:"Specifies the name of the series. It would be reflected in the chart's legend."},query:{$ref:"#/definitions/WebChartSeriesQuery",description:"Specifies a query object associated with a particular series containing information on what data to fetch for that series."},x:{type:"string",description:"Specifies which field represents the x-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) is needed.",minLength:1},dataLabels:{$ref:"#/definitions/WebChartText",description:"Specifies how the data labels should be rendered."},assignToSecondValueAxis:{type:"boolean",description:"Specifies whether the series should be assigned to the second value axis, when the `axes` property defines it. Supported by bar and line series.",default:!1},binCount:{type:["number","null"],description:"Bin count must be a positive integer.",minimum:1,multipleOf:1,default:32},overlays:{$ref:"#/definitions/HistogramOverlays",description:"Specifies the chart overlays. Histogram supports 4 overlays: **mean**, **median**, **standardDeviation** and **comparisonDistribution**. The overlays won't show if the property is not defined."},dataTransformationType:{$ref:"#/definitions/WebChartDataTransformations",description:"Specifies how the data should be transformed (e.g. square root, log, etc.) before binning."},fillSymbol:{$ref:"#/definitions/ISimpleFillSymbol",description:"Contains styling information on how the columns should be rendered."}},required:["id","name","type","x"],description:"Histogram shows the frequency distribution of a numerical field.",title:"WebChartHistogramSeries"},WebChartDataTransformations:{type:"string",enum:["none","logarithmic","squareRoot"],title:"WebChartDataTransformations"},ScatterplotOverlays:{type:"object",properties:{type:{type:"string",const:"chartOverlays",description:"Represents a unique string identifier for the `ScatterplotOverlays` object. For the `ScatterplotOverlays` object, it is `chartOverlays`."},trendLine:{$ref:"#/definitions/WebChartOverlay",description:`Specifies the trend line overlay for scatterplot.
21
+
22
+ The trend line won't show if the property is not defined.`}},required:["type"],description:"Object containing scatterplot overlays.",title:"ScatterplotOverlays"},SizePolicy:{type:"object",properties:{type:{type:"string",const:"sizeScale",description:"Represents a unique string identifier for the `sizePolicy` object. For the `sizePolicy` object, it is `sizeScale`."},scaleType:{$ref:"#/definitions/SizePolicyScaleTypes",description:"The type of scale to apply to the markers (`logarithmic` or `linear`).",default:"SizePolicyScaleTypes.Linear"},field:{type:"string",description:"The field which determines the markers size."},minSize:{type:"number",description:"The minimum marker size.",default:5,multipleOf:1},maxSize:{type:"number",description:"The maximum marker size.",default:30,multipleOf:1}},required:["type","field"],title:"SizePolicy"},SizePolicyScaleTypes:{type:"string",enum:["linear","logarithmic"],description:"Represents the types of scales that can be applied to the size policy. Use by bubble charts (scatterplot).",title:"SizePolicyScaleTypes"},WebChartScatterplotSeries:{type:"object",properties:{type:{type:"string",const:"scatterSeries",description:"Represents a unique string identifier for the `ScatterSeries` object. For the `ScatterSeries` object, it is `scatterSeries`."},id:{type:"string",description:"A unique string used to differentiate the series on a chart."},visible:{type:"boolean",description:"Hides or shows the series. If the series is has **visible** set to `false`, the corresponding legend is grayed out in the legend box.",default:!0},dataTooltipVisible:{type:"boolean",description:`Hides or shows data tooltips.
23
+ **Note**: Not applicable to gauge.`,default:!0},dataTooltipReverseColor:{type:"boolean",description:"Indicates whether to apply the hovered element's color to the background (`false`) or the outline (`true`).\n**Note**: Not applicable to gauge.",default:!1},dataTooltipValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render numeric values in tooltips."},dataTooltipPercentFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render percent values in tooltips. Used for stacked 100% bar and line charts, as well as pie charts."},dataTooltipDateFormat:{$ref:"#/definitions/DateTimeFormatOptions",description:"Defines how to render dates in tooltips. Used for bar and line charts using a date x-axis with no time binning."},name:{type:"string",description:"Specifies the name of the series. It would be reflected in the chart's legend."},query:{$ref:"#/definitions/WebChartSeriesQuery",description:"Specifies a query object associated with a particular series containing information on what data to fetch for that series."},x:{type:"string",description:"Specifies which field represents the x-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) is needed.",minLength:1},dataLabels:{$ref:"#/definitions/WebChartText",description:"Specifies how the data labels should be rendered."},assignToSecondValueAxis:{type:"boolean",description:"Specifies whether the series should be assigned to the second value axis, when the `axes` property defines it. Supported by bar and line series.",default:!1},y:{type:"string",description:"Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) are needed.",minLength:1},markerSymbol:{$ref:"#/definitions/ISimpleMarkerSymbol",description:"Specifies how each data point in the scatterplot should be rendered."},overlays:{$ref:"#/definitions/ScatterplotOverlays",description:"Specifies all the chart overlays. The scatterplot implements only 1 overlay, **trendLine**. The overlays won't show if the property is not defined."},sizePolicy:{$ref:"#/definitions/SizePolicy",description:"Specifies rules to use the scatterplot as bubble plot, by changing dynamically the markers size according to a specific field value."},additionalTooltipFields:{type:"array",items:{type:"string"},description:"Specifies the additional numeric fields in the tooltip."}},required:["id","name","type","x","y"],description:"Scatterplot shows the relationship between two numerical fields.",title:"WebChartScatterplotSeries"},ISimpleMarkerSymbol:{type:"object",properties:{type:{type:"string",const:"esriSMS"},style:{$ref:"#/definitions/SimpleMarkerSymbolStyle"},angle:{type:"number"},xoffset:{type:"number"},yoffset:{type:"number"},color:{$ref:"#/definitions/Color"},size:{type:"number"},outline:{$ref:"#/definitions/ISimpleLineSymbol"}},required:["type"],title:"ISimpleMarkerSymbol"},IMarkerSymbol:{type:"object",properties:{type:{$ref:"#/definitions/SymbolType"},style:{type:"string"},angle:{type:"number"},xoffset:{type:"number"},yoffset:{type:"number"}},required:["type"],title:"IMarkerSymbol"},SimpleMarkerSymbolStyle:{type:"string",enum:["esriSMSCircle","esriSMSCross","esriSMSDiamond","esriSMSSquare","esriSMSTriangle","esriSMSX"],title:"SimpleMarkerSymbolStyle"},WebChartPieChartTick:{type:"object",properties:{type:{type:"string",const:"pieTick",description:"Represents a unique string identifier for the `WebChartPieChartTick` object. For the `WebChartPieChartTick` object, it is `pieTick`."},visible:{type:"boolean",description:"Determines the visibility of the tick.\n\nAssigning the `true` value will only be considered when the data labels are visible (`series.dataLabels.visible`) and when the data label associated to the tick is outside of the chart (`series.dataLabelsOffset` > 0)."},lineSymbol:{$ref:"#/definitions/ISimpleLineSymbol",description:"Contains styling information on how the pie chart ticks should be rendered."}},required:["type"],description:"JSON representation of the pie ticks.",title:"WebChartPieChartTick"},WebChartPieChartSlice:{type:"object",properties:{sliceId:{type:"string",description:"A unique string used identify the slice of a pie chart."},originalLabel:{anyOf:[{type:"string",format:"date-time"},{type:"number"},{type:"string"},{type:"null"}],description:"The slice's original label."},label:{type:"string",description:"Custom label for the slice.\n\nFor grouped slice, the default value is `Other`. For regular slice, it will be either the category or field name."},fillSymbol:{$ref:"#/definitions/ISimpleFillSymbol",description:"Contains styling information on how the slice should be rendered. If not provided, the slice will be styled with default values."}},required:["sliceId"],description:"JSON representation of the pie slices",title:"WebChartPieChartSlice"},WebChartPieChartGroupSlice:{type:"object",properties:{sliceId:{type:"string",description:"A unique string used identify the slice of a pie chart."},originalLabel:{anyOf:[{type:"string",format:"date-time"},{type:"number"},{type:"string"},{type:"null"}],description:"The slice's original label."},label:{type:"string",description:"Custom label for the slice.\n\nFor grouped slice, the default value is `Other`. For regular slice, it will be either the category or field name."},fillSymbol:{$ref:"#/definitions/ISimpleFillSymbol",description:"Contains styling information on how the slice should be rendered. If not provided, the slice will be styled with default values."},percentageThreshold:{type:"number",description:"Slices that have a percent value equal or lesser to this threshold are grouped into a unique slice."},dataLabels:{$ref:"#/definitions/WebChartText",description:"Specifies how the grouped slice data labels should be rendered.\n\nIf the property is not set the `series.dataLabels` will be used instead."}},required:["percentageThreshold","sliceId"],description:"JSON representation of the pie grouped slice.",title:"WebChartPieChartGroupSlice"},WebChartPieChartSeries:{type:"object",properties:{type:{type:"string",const:"pieSeries",description:"Represents a unique string identifier for the `WebChartPieChartSeries` object. For the `WebChartPieChartSeries` object, it is `pieSeries`."},id:{type:"string",description:"A unique string used to differentiate the series on a chart."},visible:{type:"boolean",description:"Hides or shows the series. If the series is has **visible** set to `false`, the corresponding legend is grayed out in the legend box.",default:!0},dataTooltipVisible:{type:"boolean",description:`Hides or shows data tooltips.
24
+ **Note**: Not applicable to gauge.`,default:!0},dataTooltipReverseColor:{type:"boolean",description:"Indicates whether to apply the hovered element's color to the background (`false`) or the outline (`true`).\n**Note**: Not applicable to gauge.",default:!1},dataTooltipValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render numeric values in tooltips."},dataTooltipPercentFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render percent values in tooltips. Used for stacked 100% bar and line charts, as well as pie charts."},dataTooltipDateFormat:{$ref:"#/definitions/DateTimeFormatOptions",description:"Defines how to render dates in tooltips. Used for bar and line charts using a date x-axis with no time binning."},name:{type:"string",description:"Specifies the name of the series. It would be reflected in the chart's legend."},query:{$ref:"#/definitions/WebChartSeriesQuery",description:"Specifies a query object associated with a particular series containing information on what data to fetch for that series."},x:{type:"string",description:"Specifies which field represents the x-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) is needed.",minLength:1},dataLabels:{$ref:"#/definitions/WebChartText",description:"Specifies how the data labels should be rendered."},assignToSecondValueAxis:{type:"boolean",description:"Specifies whether the series should be assigned to the second value axis, when the `axes` property defines it. Supported by bar and line series.",default:!1},y:{type:"string",description:"Specifies which field represents the y-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) are needed.",minLength:1},innerRadius:{type:["number","null"],description:"Represents the size of the hole in middle of the chart. The number is used as a percentage rather than a fixed value.",minimum:0,maximum:100,default:50},startAngle:{type:["number","null"],default:-90},endAngle:{type:["number","null"],default:270},fillSymbol:{$ref:"#/definitions/ISimpleFillSymbol",description:"Contains styling information on how the slices should be rendered."},displayCategoryOnDataLabel:{type:"boolean",description:"Indicates whether the category associated to a slice is to be displayed on its data label. This property will be ignored if the chart options `dataLabelFormatter` is provided.",default:!0},displayNumericValueOnDataLabel:{type:"boolean",description:"Indicates whether the numeric value associated to a slice is to be displayed on its data label.\n\nIf both displayNumericValue & displayPercentage are true on a same label, they will be displayed as `percentage (value)`.\n\nThis property will be ignored if the chart options `dataLabelFormatter` is provided.",default:!0},displayPercentageOnDataLabel:{type:"boolean",description:"Indicates whether the percentage associated to a slice is to be displayed on its data label.\n\nIf both displayNumericValue & displayPercentage are true on a same label, they will be displayed as `percentage (value)`\n\nThis property will be ignored if the chart options `dataLabelFormatter` is provided.",default:!1},displayCategoryOnTooltip:{type:"boolean",description:"Indicates whether the category associated to a slice is to be displayed on its tooltip.\n\nThis property will be ignored if the chart options `tooltipFormatter` is provided.",default:!0},displayNumericValueOnTooltip:{type:"boolean",description:"Indicates whether the numeric value associated to a slice is to be displayed on its tooltip.\n\nIf both displayNumericValue & displayPercentage are true on a same label, they will be displayed as `percentage (value)`\n\nThis property will be ignored if the chart options `tooltipFormatter` is provided.",default:!0},displayPercentageOnTooltip:{type:"boolean",description:"Indicates whether the percentage associated to a slice is to be displayed on its tooltip.\n\nIf both displayNumericValue & displayPercentage are true on a same label, they will be displayed as `percentage (value)`\n\nThis property will be ignored if the chart options `tooltipFormatter` is provided.",default:!0},numericValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Specifies how the numerical values should be formatted (applied to label, tooltip and legend).\n\nCan be overridden for the tooltips by `series.dataTooltipValueFormat`."},percentValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Specifies how the percent values should be formatted (applied to label, tooltip and legend).\n\nCan be overridden for the tooltips by `series.dataTooltipPercentFormat`."},valuePrefix:{type:"string",description:"Adds a prefix to all the values displayed on the pie chart: data labels, tooltips and legend."},valueSuffix:{type:"string",description:"Adds a suffix to all the values displayed on the pie chart: data labels, tooltips and legend."},percentagePrefix:{type:"string",description:"Adds a prefix to all the percentages displayed on the pie chart: data labels, tooltips and legend."},percentageSuffix:{type:"string",description:"Adds a suffix to all the percentages displayed on the pie chart: data labels, tooltips and legend."},dataLabelsCharacterLimit:{type:["number","null"],description:'If set, the category on the data label is truncated to display only `characterLimit` characters, and an ellipsis ("...") is added to the end of the label.\n\nDoes not affect the value or percentage displayed in labels. Not applicable to tooltips or legend labels.',default:"undefined",minimum:1,multipleOf:1},ticks:{$ref:"#/definitions/WebChartPieChartTick",description:"Specifies how to render the ticks shown on each slide. Ticks will be displayed with default values if not provided."},dataLabelsInside:{type:"boolean",description:"Whether to place the data labels inside the pie slices.\n\nWhen set to `true` the following properties will be ignored:\n- `dataLabelsOffset`\n- `alignDataLabels`\n- `optimizeDataLabelsOverlapping`",default:!1},dataLabelsOffset:{type:"number",description:"Determines in pixel how far the data labels should be placed from their slice. If a negative value is provided the label will be placed inside of the chart.\n\nIgnored when `dataLabelsInside` is set to `true`.",default:10},alignDataLabels:{type:"boolean",description:"Aligns labels into columns to make them more readable and avoid them to overlap each other.\n\nIgnored when `dataLabelsInside` is set to `true`.",default:!1},optimizeDataLabelsOverlapping:{type:"boolean",description:"Optimizes the data labels rendering to avoid them to be cut off on the edges or to overlap the legend by wrapping them and adding padding to the chart.\n\nIgnored when `dataLabelsInside` is set to `true`.",default:!1},sliceGrouping:{$ref:"#/definitions/WebChartPieChartGroupSlice",description:"Specifies if and how the slices under a given percentage threshold are grouped into a unique slice."},slices:{type:"array",items:{$ref:"#/definitions/WebChartPieChartSlice"},description:"An array of `WebChartPieChartSlice` representing the ids, labels and styles of the pie slices.\n\nWhen this property is not defined, or when a pie slice does not have a matching slice in this array, the series' fillSymbol will be used. If the series' fillSymbol does not contain color information, colors from the color ramps will be utilized."}},required:["id","name","type","x","y"],description:"JSON representation of the pie chart series",title:"WebChartPieChartSeries"},WebChartGaugeSeries:{type:"object",properties:{type:{type:"string",const:"gaugeSeries",description:"Represents a unique string identifier for the `WebChartGaugeSeries` object. For the `WebChartGaugeSeries` object, it is `gaugeSeries`."},id:{type:"string",description:"A unique string used to differentiate the series on a chart."},visible:{type:"boolean",description:"Hides or shows the series. If the series is has **visible** set to `false`, the corresponding legend is grayed out in the legend box.",default:!0},dataTooltipVisible:{type:"boolean",description:`Hides or shows data tooltips.
25
+ **Note**: Not applicable to gauge.`,default:!0},dataTooltipReverseColor:{type:"boolean",description:"Indicates whether to apply the hovered element's color to the background (`false`) or the outline (`true`).\n**Note**: Not applicable to gauge.",default:!1},dataTooltipValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render numeric values in tooltips."},dataTooltipPercentFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render percent values in tooltips. Used for stacked 100% bar and line charts, as well as pie charts."},dataTooltipDateFormat:{$ref:"#/definitions/DateTimeFormatOptions",description:"Defines how to render dates in tooltips. Used for bar and line charts using a date x-axis with no time binning."},name:{type:"string",description:"Specifies the name of the series. It would be reflected in the chart's legend."},query:{$ref:"#/definitions/WebChartSeriesQuery",description:"Specifies a query object associated with a particular series containing information on what data to fetch for that series."},x:{type:"string",description:"Specifies which field represents the x-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) is needed.",minLength:1},dataLabels:{$ref:"#/definitions/WebChartText",description:"Specifies how the data labels should be rendered."},assignToSecondValueAxis:{type:"boolean",description:"Specifies whether the series should be assigned to the second value axis, when the `axes` property defines it. Supported by bar and line series.",default:!1},valueConversion:{$ref:"#/definitions/ValueConversion",description:"Defines the conversion to apply to the gauge value."},featureIndex:{type:"number",description:`Specifies the index of the feature to be rendered.
26
+
27
+ This property will be ignored for a statistic gauge (indicated via \`WebGaugeChart.subType\` property).
28
+
29
+ For feature-based gauge, if this property is not present, the first feature will be used (featureIndex = 0)`}},required:["id","name","type","x"],description:"JSON representation of the gauge series",title:"WebChartGaugeSeries"},WebChartBoxPlotSeries:{type:"object",properties:{type:{type:"string",const:"boxPlotSeries"},id:{type:"string",description:"A unique string used to differentiate the series on a chart."},visible:{type:"boolean",description:"Hides or shows the series. If the series is has **visible** set to `false`, the corresponding legend is grayed out in the legend box.",default:!0},dataTooltipVisible:{type:"boolean",description:`Hides or shows data tooltips.
30
+ **Note**: Not applicable to gauge.`,default:!0},dataTooltipReverseColor:{type:"boolean",description:"Indicates whether to apply the hovered element's color to the background (`false`) or the outline (`true`).\n**Note**: Not applicable to gauge.",default:!1},dataTooltipValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render numeric values in tooltips."},dataTooltipPercentFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render percent values in tooltips. Used for stacked 100% bar and line charts, as well as pie charts."},dataTooltipDateFormat:{$ref:"#/definitions/DateTimeFormatOptions",description:"Defines how to render dates in tooltips. Used for bar and line charts using a date x-axis with no time binning."},name:{type:"string",description:"Specifies the name of the series. It would be reflected in the chart's legend."},query:{$ref:"#/definitions/WebChartSeriesQuery",description:"Specifies a query object associated with a particular series containing information on what data to fetch for that series."},x:{type:"string",description:"Specifies which field represents the x-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) is needed.",minLength:1},dataLabels:{$ref:"#/definitions/WebChartText",description:"Specifies how the data labels should be rendered."},assignToSecondValueAxis:{type:"boolean",description:"Specifies whether the series should be assigned to the second value axis, when the `axes` property defines it. Supported by bar and line series.",default:!1},y:{anyOf:[{type:"array",items:{type:"string"}},{type:"string"}],description:"Specifies the numeric field(s) used by the box plot series.",minLength:1,minItems:1},fillSymbol:{$ref:"#/definitions/ISimpleFillSymbol",description:"Contains styling information on how the box and whiskers should be rendered. The whiskers use the `fillSymbol.outline`."}},required:["id","name","type","x","y"],description:"JSON representation of the box plot series",title:"WebChartBoxPlotSeries"},WebChartHeatChartGradient:{type:"object",properties:{colorList:{type:"array",items:{$ref:"#/definitions/Color"},minItems:2,maxItems:2,description:"An array of 2 colors to use for the gradient. The first color represents the minimum value, the second color represents the maximum value."},minValue:{type:"number",description:"Specifies the custom minimum value for the heat chart. If none is provided, the minimum value from the dataset will be used."},maxValue:{type:"number",description:"Specifies the custom maximum value for the heat chart. If none is provided, the maximum value from the dataset will be used."},outsideRangeLowerColor:{$ref:"#/definitions/Color",description:"Specifies the color to use for the items outside the lower range specified by `minValue`. If none is provided, the default color will be used.",default:"`[250, 250, 250, 255] - white`"},outsideRangeUpperColor:{$ref:"#/definitions/Color",description:"Specifies the color to use for the items outside the upper range specified by `maxValue`. If none is provided, the default color will be used.",default:"`[0, 0, 255, 255] - blue`"}},description:"JSON representation of the Heat chart with gradient heat rules.",title:"WebChartHeatChartGradient"},WebChartHeatChartHeatClassBreaks:{type:"object",properties:{breaksCount:{type:"number",description:"The number of class breaks to be used for the heat chart.",default:5},classificationMethod:{$ref:"#/definitions/WebChartClassBreakTypes",description:"The classification method to be used for the heat chart. `equal-interval` - divides the range of values into equal-sized intervals. `quantile` - divides the range of values into intervals that contain an equal number of features. `natural-breaks` - identifies natural groupings of values in the data by minimizing the variance within classes and maximizing the variance between classes. `manual` - allows you to manually specify the class breaks."}},description:"JSON representation of the Heat chart with class breaks heat rules.",title:"WebChartHeatChartHeatClassBreaks"},WebChartClassBreakTypes:{type:"string",enum:["equal-interval","quantile","natural-breaks","manual"],description:"Class break types for data classification in charts.",title:"WebChartClassBreakTypes"},WebChartHeatChartEmptyCell:{type:"object",properties:{text:{type:"string",description:"Specifies the text to use by the empty cells. If none is provided, the default `null` text will be used.",default:"`null`"},symbol:{$ref:"#/definitions/ISimpleFillSymbol",description:"Specifies the symbol to use by the empty cells. If none is provided, the default symbol will be used."}},description:"JSON representation of the heat chart empty cell configuration.",title:"WebChartHeatChartEmptyCell"},WebChartHeatChartSeries:{type:"object",properties:{type:{type:"string",const:"heatSeries"},id:{type:"string",description:"A unique string used to differentiate the series on a chart."},visible:{type:"boolean",description:"Hides or shows the series. If the series is has **visible** set to `false`, the corresponding legend is grayed out in the legend box.",default:!0},dataTooltipVisible:{type:"boolean",description:`Hides or shows data tooltips.
31
+ **Note**: Not applicable to gauge.`,default:!0},dataTooltipReverseColor:{type:"boolean",description:"Indicates whether to apply the hovered element's color to the background (`false`) or the outline (`true`).\n**Note**: Not applicable to gauge.",default:!1},dataTooltipValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render numeric values in tooltips."},dataTooltipPercentFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render percent values in tooltips. Used for stacked 100% bar and line charts, as well as pie charts."},dataTooltipDateFormat:{$ref:"#/definitions/DateTimeFormatOptions",description:"Defines how to render dates in tooltips. Used for bar and line charts using a date x-axis with no time binning."},name:{type:"string",description:"Specifies the name of the series. It would be reflected in the chart's legend."},query:{$ref:"#/definitions/WebChartSeriesQuery",description:"Specifies a query object associated with a particular series containing information on what data to fetch for that series."},x:{type:"string",description:"Specifies which field represents the x-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) is needed.",minLength:1},dataLabels:{$ref:"#/definitions/WebChartText",description:"Specifies how the data labels should be rendered."},assignToSecondValueAxis:{type:"boolean",description:"Specifies whether the series should be assigned to the second value axis, when the `axes` property defines it. Supported by bar and line series.",default:!1},y:{type:"string",description:"Specifies which field represents the y-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) are needed.",minLength:1},xTemporalBinning:{$ref:"#/definitions/WebChartCalendarDatePartsBinning",description:"Describes how to bin the temporal data when the x-axis field is a date."},yTemporalBinning:{$ref:"#/definitions/WebChartCalendarDatePartsBinning",description:"Describes how to bin the temporal data when the y-axis field is a date."},gridLine:{$ref:"#/definitions/ISimpleLineSymbol",description:"Defines how the cells outline should render."},heatRulesType:{$ref:"#/definitions/WebChartHeatChartHeatRulesTypes",description:"Defines the type of rule to apply for the heat chart.",default:"WebChartHeatChartHeatRulesTypes.Gradient"},gradientRules:{$ref:"#/definitions/WebChartHeatChartGradient",description:"Specifies the details of the gradient rules for the heat chart."},classBreaksRules:{$ref:"#/definitions/WebChartHeatChartHeatClassBreaks",description:"Specifies the details of the class breaks rules for the heat chart."},emptyCells:{$ref:"#/definitions/WebChartHeatChartEmptyCell",description:"Specifies how to display the empty cells, in terms of text and symbology."}},required:["id","name","type","x","y"],description:"JSON representation of the heat chart series.",title:"WebChartHeatChartSeries"},WebChartHeatChartHeatRulesTypes:{type:"string",enum:["gradient","renderer"],description:"Represents the different types of heat rule that can be applied to a heat chart.",title:"WebChartHeatChartHeatRulesTypes"},WebChartRadarChartSeries:{$ref:"#/definitions/WebChartLineChartSeries%3C%22radarSeries%22%3E",title:"WebChartRadarChartSeries"},'WebChartLineChartSeries<"radarSeries">':{type:"object",properties:{binTemporalData:{type:"boolean",description:"Whether to use the time properties to bin the temporal data.\n\n`false` - the `binCount` and `unit` properties can be used to set the date axis base interval.",default:!0},temporalBinning:{$ref:"#/definitions/WebChartTemporalBinning",description:"Describes how to bin the temporal data."},type:{type:"string",const:"radarSeries",description:"Represents a unique string identifier for the `WebChartLineChartSeries` object. For the `WebChartLineChartSeries` object, it is `lineSeries`."},id:{type:"string",description:"A unique string used to differentiate the series on a chart."},visible:{type:"boolean",description:"Hides or shows the series. If the series is has **visible** set to `false`, the corresponding legend is grayed out in the legend box.",default:!0},dataTooltipVisible:{type:"boolean",description:`Hides or shows data tooltips.
32
+ **Note**: Not applicable to gauge.`,default:!0},dataTooltipReverseColor:{type:"boolean",description:"Indicates whether to apply the hovered element's color to the background (`false`) or the outline (`true`).\n**Note**: Not applicable to gauge.",default:!1},dataTooltipValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render numeric values in tooltips."},dataTooltipPercentFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render percent values in tooltips. Used for stacked 100% bar and line charts, as well as pie charts."},dataTooltipDateFormat:{$ref:"#/definitions/DateTimeFormatOptions",description:"Defines how to render dates in tooltips. Used for bar and line charts using a date x-axis with no time binning."},name:{type:"string",description:"Specifies the name of the series. It would be reflected in the chart's legend."},query:{$ref:"#/definitions/WebChartSeriesQuery",description:"Specifies a query object associated with a particular series containing information on what data to fetch for that series."},x:{type:"string",description:"Specifies which field represents the x-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) is needed.",minLength:1},dataLabels:{$ref:"#/definitions/WebChartText",description:"Specifies how the data labels should be rendered."},assignToSecondValueAxis:{type:"boolean",description:"Specifies whether the series should be assigned to the second value axis, when the `axes` property defines it. Supported by bar and line series.",default:!1},y:{anyOf:[{type:"array",items:{type:"string"}},{type:"string"}],description:"Specifies the numeric field(s) used by the series."},lineSymbol:{$ref:"#/definitions/ISimpleLineSymbol",description:"Contains styling information on how the line or line segments should be rendered."},lineSmoothed:{type:"boolean",description:"Specifies whether line segments should be smoothed.",default:!1},showArea:{type:"boolean",description:"Indicates whether line series show area.",default:!1},markerVisible:{type:"boolean",description:"Indicates whether to show or hide the markers/bullets of the line series.",default:!0},markerSymbol:{$ref:"#/definitions/ISimpleMarkerSymbol",description:"Contains styling information on how the marker should be rendered."},areaColor:{$ref:"#/definitions/Color",description:"Specifies the color of the filled area for line chart.\n\n`areaColor` will be applied only if `showArea` is true, and is defaulted to the line color if not provided."},stackNegativeValuesToBaseline:{type:"boolean",description:"Specifies how negative values are treated in stacked series. `true` - negative values will be stacked on the base line. `false` - negative values will be stacked in relation to their previous values in the stack.",default:!0},connectLines:{type:"boolean",description:"Whether to connect the lines when there's a gap in the data. Can be overridden by the temporal data setting `nullPolicy`.",default:!0},nullCategory:{$ref:"#/definitions/WebChartNullCategory",description:`Specifies how to display the category with null value.
33
+
34
+ Setting this property will ensure that the item with no data is displayed on the chart with the specified text and color.`}},required:["id","name","type","x","y"],description:"JSON representation of the line chart series.",title:'WebChartLineChartSeries<"radarSeries">'},WebChartSeriesType:{anyOf:[{$ref:"#/definitions/WebChartBarChartSeries"},{$ref:"#/definitions/WebChartBoxPlotSeries"},{$ref:"#/definitions/WebChartGaugeSeries"},{$ref:"#/definitions/WebChartHeatChartSeries"},{$ref:"#/definitions/WebChartHistogramSeries"},{$ref:"#/definitions/WebChartLineChartSeries"},{$ref:"#/definitions/WebChartPieChartSeries"},{$ref:"#/definitions/WebChartRadarChartSeries"},{$ref:"#/definitions/WebChartScatterplotSeries"}],description:"Type containing all the series types available",title:"WebChartSeriesType"},WebChartLineChartSeries:{type:"object",properties:{binTemporalData:{type:"boolean",description:"Whether to use the time properties to bin the temporal data.\n\n`false` - the `binCount` and `unit` properties can be used to set the date axis base interval.",default:!0},temporalBinning:{$ref:"#/definitions/WebChartTemporalBinning",description:"Describes how to bin the temporal data."},type:{type:"string",const:"lineSeries",description:"Represents a unique string identifier for the `WebChartLineChartSeries` object. For the `WebChartLineChartSeries` object, it is `lineSeries`."},id:{type:"string",description:"A unique string used to differentiate the series on a chart."},visible:{type:"boolean",description:"Hides or shows the series. If the series is has **visible** set to `false`, the corresponding legend is grayed out in the legend box.",default:!0},dataTooltipVisible:{type:"boolean",description:`Hides or shows data tooltips.
35
+ **Note**: Not applicable to gauge.`,default:!0},dataTooltipReverseColor:{type:"boolean",description:"Indicates whether to apply the hovered element's color to the background (`false`) or the outline (`true`).\n**Note**: Not applicable to gauge.",default:!1},dataTooltipValueFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render numeric values in tooltips."},dataTooltipPercentFormat:{$ref:"#/definitions/NumberFormatOptions",description:"Defines how to render percent values in tooltips. Used for stacked 100% bar and line charts, as well as pie charts."},dataTooltipDateFormat:{$ref:"#/definitions/DateTimeFormatOptions",description:"Defines how to render dates in tooltips. Used for bar and line charts using a date x-axis with no time binning."},name:{type:"string",description:"Specifies the name of the series. It would be reflected in the chart's legend."},query:{$ref:"#/definitions/WebChartSeriesQuery",description:"Specifies a query object associated with a particular series containing information on what data to fetch for that series."},x:{type:"string",description:"Specifies which field represents the x-coordinates of this series. Empty string or one with just white spaces is not allowed. At least 1 or more word characters (a-z, A-Z, _) is needed.",minLength:1},dataLabels:{$ref:"#/definitions/WebChartText",description:"Specifies how the data labels should be rendered."},assignToSecondValueAxis:{type:"boolean",description:"Specifies whether the series should be assigned to the second value axis, when the `axes` property defines it. Supported by bar and line series.",default:!1},y:{anyOf:[{type:"array",items:{type:"string"}},{type:"string"}],description:"Specifies the numeric field(s) used by the series."},lineSymbol:{$ref:"#/definitions/ISimpleLineSymbol",description:"Contains styling information on how the line or line segments should be rendered."},lineSmoothed:{type:"boolean",description:"Specifies whether line segments should be smoothed.",default:!1},showArea:{type:"boolean",description:"Indicates whether line series show area.",default:!1},markerVisible:{type:"boolean",description:"Indicates whether to show or hide the markers/bullets of the line series.",default:!0},markerSymbol:{$ref:"#/definitions/ISimpleMarkerSymbol",description:"Contains styling information on how the marker should be rendered."},areaColor:{$ref:"#/definitions/Color",description:"Specifies the color of the filled area for line chart.\n\n`areaColor` will be applied only if `showArea` is true, and is defaulted to the line color if not provided."},stackNegativeValuesToBaseline:{type:"boolean",description:"Specifies how negative values are treated in stacked series. `true` - negative values will be stacked on the base line. `false` - negative values will be stacked in relation to their previous values in the stack.",default:!0},connectLines:{type:"boolean",description:"Whether to connect the lines when there's a gap in the data. Can be overridden by the temporal data setting `nullPolicy`.",default:!0},nullCategory:{$ref:"#/definitions/WebChartNullCategory",description:`Specifies how to display the category with null value.
36
+
37
+ Setting this property will ensure that the item with no data is displayed on the chart with the specified text and color.`}},required:["id","name","type","x","y"],description:"JSON representation of the line chart series.",title:"WebChartLineChartSeries"},WebChart:{type:"object",properties:{version:{type:"string",const:"25.0.0",description:"Version of the specification. Used to identify when a saved config was created."},type:{type:"string",const:"chart",description:"Represents a unique string identifier for the `WebChart` object. For the `WebChart` object, it is `chart`."},id:{type:"string",description:"Can be used to uniquely identify a chart."},iLayer:{anyOf:[{$ref:"#/definitions/IFeatureLayer"},{$ref:"#/definitions/IImageServiceLayer"},{$ref:"#/definitions/ITiledImageServiceLayer"}],description:"Property representing the layer to be used by the chart. If not provided we expect a layer object to be set on the component."},dataFilters:{$ref:"#/definitions/WebChartDataFilters",description:"Used to filter the chart's data while in layer mode."},title:{$ref:"#/definitions/WebChartText",description:"Specifies title of the chart."},subtitle:{$ref:"#/definitions/WebChartText",description:"Specifies subtitle of the chart."},footer:{$ref:"#/definitions/WebChartText",description:"Specifies footer of the chart."},background:{$ref:"#/definitions/Color",description:"Specifies the background color of the chart.",default:"`[255, 255, 255, 255]`"},cursorCrosshair:{$ref:"#/definitions/WebChartCursorCrosshair",description:"Specifies cursor's crosshair information for the chart. Only for XY charts."},legend:{anyOf:[{$ref:"#/definitions/WebChartLegend"},{$ref:"#/definitions/WebChartPieChartLegend"}],description:"Specifies the Legend information for the chart."},axes:{type:"array",items:{$ref:"#/definitions/WebChartAxis"},minItems:1,maxItems:3,description:"Represents an array of **at least 1 or at most 3** chart axes accompanying the chart. The third axis config is used when a series `assignToSecondValueAxis` is set to `true`. Some of the axis features won't apply to the third axis (e.g. labels behaviors)."},horizontalAxisLabelsBehavior:{$ref:"#/definitions/WebChartLabelBehavior",description:"Represents the way the labels should behave when the horizontal axis can't display them all.\n\nApplicable to XY charts only. Histograms support `none` and `rotate` only. The default horizontal axis value is `rotate`, except for histograms, where it is `none`.",default:"rotate"},verticalAxisLabelsBehavior:{$ref:"#/definitions/WebChartLabelBehavior",description:`Represents the way the labels should behave when the vertical axis can't display them all.
38
+
39
+ For XY Chart only.`,default:"wrap"},series:{type:"array",items:{$ref:"#/definitions/WebChartSeriesType"},description:`Represents an array of various chart series to be plot inside the chart.
40
+
41
+ Empty array is not allowed.`,minItems:1},rotated:{type:"boolean",description:"Specifies whether or not the chart is rotated.",default:!1},stackedType:{$ref:"#/definitions/WebChartStackedKinds",description:`Specifies how the bars/lines should be placed when multiple series are rendered in the same chart.
42
+
43
+ Only applicable to bar and line series.`,default:"sideBySide"},colorMatch:{type:"boolean",description:"Specifies whether to first try matching the colors from the layer renderer or the chart renderer for coloring the chart elements, like markers, line segments, columns, etc.\n\nTo do so, this property needs to be set to `true`.\n\nWhen there is no matching color found (for when `colorMatch = true`) or when `colorMatch = false`, the colors from the config, and then from the color ramps will be used, in that order.",default:!1},chartRenderer:{description:`Renderer to use to style the series when the chart uses the color match mode.
44
+
45
+ Considered before the layer's renderer.`},orderOptions:{type:"object",properties:{series:{$ref:"#/definitions/WebChartOrderSeriesBy",description:`How series should be ordered and displayed in a multi-series chart.
46
+
47
+ If not provided the series will be displayed as they are ordered in the config.`},data:{anyOf:[{$ref:"#/definitions/WebChartDirectionalDataOrder"},{$ref:"#/definitions/WebChartMultiAxesDataOrder"},{$ref:"#/definitions/WebChartPredefinedLabelsDataOrder"}],description:"How data for a chart should be ordered. It is recommended to use this property over its sibling `orderByFields` to order the chart data. If not provided, the data will be displayed as it was retrieved from the server. No additional ordering will be applied.\n\nThe `WebChartDirectionalDataOrder` and `WebChartPredefinedLabelsDataOrder` are applicable to all chart types except heat chart. The `WebChartMultiAxesDataOrder` is specifically used for heat chart."},orderByFields:{type:"array",items:{type:"string"},description:"The `orderByFields` to be sent with the query when retrieving data for the chart. It represents the desired sorting order of the output result from the server.\n\nThe format of any entry in this array is `field_name sorting_order`. When `sorting_order` is not defined, it is assumed to be ascending.\n\nIn case both this property and its sibling `data` object are provided, the order of the chart elements are settled by the order instruction in the `data` property. This property is applicable to all chart types but heat charts."}},description:"Chart order options for data and series."}},required:["version","type","series"],description:"JSON representation of the web chart object.",title:"WebChart"},IFeatureLayer:{type:"object",properties:{timeAnimation:{type:"boolean",description:"This property is applicable to layers that support time. If 'true', timeAnimation is enabled."},id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"ArcGISFeatureLayer",description:"String indicating the layer type."},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",description:"Deprecated, use layerType instead.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},capabilities:{type:"string",description:"A comma-separated string listing which editing operations are allowed on an editable feature service."},definitionEditor:{$ref:"#/definitions/IDefinitionEditor",description:"Stores interactive filters."},disablePopup:{type:"boolean",const:!0,description:"Indicates whether to allow a client to ignore popups defined by the service item."},featureCollection:{description:"A featureCollection object defining a layer of features whose geometry and attributes are either stored directly within the web map or with an item. Feature Collections can be created from CSVs, shapefiles, GPX, or map notes."},featureCollectionType:{type:"string",enum:["markup","notes","route"],description:"Indicates the type of features in the feature collection. If featureCollectionType is missing, it means the feature collection is a regular single-layer or multi-layer feature collection."},layerDefinition:{$ref:"#/definitions/ILayerDefinition",description:"A layerDefinition object defining the attribute schema and drawing information for the layer."},mode:{type:"number",enum:[0,1,2],description:"0 is snapshot mode. 1 is on-demand mode. 2 is selection-only mode. Used with ArcGIS feature services and individual layers in ArcGIS map services."},popupInfo:{$ref:"#/definitions/IPopupInfo",description:"A popupInfo object defining the content of popup windows when you click or query a feature."},refreshInterval:{type:"number",description:"Refresh interval of the layer in minutes. Non-zero value indicates automatic layer refresh at the specified interval. Value of 0 indicates auto refresh is not enabled."},showLabels:{type:"boolean",const:!0,description:"Labels will display if this property is set to true and the layer also has a labelingInfo property associated with it. This property can get stored in the web map config and in the item/data."},visibleLayers:{type:"array",items:{type:"number"},description:"An array of sublayer ids that should appear visible. Used with feature layers that are based on feature collections."}},required:["id","layerType"],title:"IFeatureLayer"},ILayer:{type:"object",properties:{id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",description:"Indicates the layer type"},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",description:"Deprecated, use layerType instead.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."}},required:["id","layerType"],title:"ILayer"},ISupportsTime:{type:"object",properties:{timeAnimation:{type:"boolean",description:"This property is applicable to layers that support time. If 'true', timeAnimation is enabled."}},title:"ISupportsTime"},IDefinitionEditor:{type:"object",properties:{inputs:{type:"array",items:{$ref:"#/definitions/IDefinitionInput"},description:"An array of input objects."},parameterizedExpression:{type:"string",description:"A string value representing the where clause for the interactive filter."}},title:"IDefinitionEditor"},IDefinitionInput:{type:"object",properties:{hint:{type:"string",description:"A string value representing a hint for the input."},parameters:{type:"array",items:{$ref:"#/definitions/IDefinitionParameter"},description:"An array of parameter objects."},prompt:{type:"string",description:"A string value representing the prompt for the input."}},title:"IDefinitionInput"},IDefinitionParameter:{type:"object",properties:{defaultValue:{type:["number","string"],description:"The default value that is automatically given if nothing is provided."},fieldName:{type:"string",description:"A string value representing the name of the field to query."},parameterId:{description:"Number given to uniquely identify the specified parameter."},type:{type:"string",enum:["esriFieldTypeBlob","esriFieldTypeDate","esriFieldTypeDateOnly","esriFieldTypeDouble","esriFieldTypeGeometry","esriFieldTypeGlobalID","esriFieldTypeGUID","esriFieldTypeInteger","esriFieldTypeOID","esriFieldTypeRaster","esriFieldTypeSingle","esriFieldTypeSmallInteger","esriFieldTypeString","esriFieldTypeTimeOnly","esriFieldTypeTimestampOffset","esriFieldTypeXML"],description:"The field type for the specified field parameter."},utcValue:{type:"number",description:"An integer value representing exact UNIX time used when defaultValue is a date string."}},title:"IDefinitionParameter"},ILayerDefinition:{type:"object",properties:{hasZ:{type:"boolean"},hasM:{type:"boolean"},allowGeometryUpdates:{type:"boolean",description:"Boolean value indicating whether the geometry of the features in the layer can be edited."},capabilities:{type:"string",description:"A comma separated list of supported capabilities, e.g. Query, Editing."},copyrightText:{type:"string",description:"String value for the copyright text information for the layer."},currentVersion:{type:"number",description:"Numeric value indicating the server version of the layer."},defaultVisibility:{type:"boolean",description:"Boolean value indicating whether the layer's visibility is turned on."},definitionEditor:{$ref:"#/definitions/IDefinitionEditor",description:"Stores interactive filters."},definitionExpression:{type:"string",description:"SQL-based definition expression string that narrows the data to be displayed in the layer."},description:{type:"string",description:"String value of the layer as defined in the map service."},displayField:{type:"string",description:"A string value that summarizes the feature."},drawingInfo:{description:"Contains drawing, labeling, and transparency information."},extent:{anyOf:[{$ref:"#/definitions/IExtent"},{type:"null"}],description:"An object defining the rectangular area."},editingInfo:{$ref:"#/definitions/IEditingInfo",description:"An object defining the editing info (last edit date)."},featureReduction:{description:"Feature reductions declutter the screen by hiding features that would otherwise intersect with other features on screen."},fields:{type:"array",items:{$ref:"#/definitions/IField"},description:"An array of field objects containing information about the attribute fields for the feature collection or layer."},geometryType:{$ref:"#/definitions/GeometryType",description:"A string defining the type of geometry. Possible geometry types are: esriGeometryPoint, esriGeometryMultipoint, esriGeometryPolyline, esriGeometryPolygon, and esriGeometryEnvelope."},globalIdField:{type:"string",description:"The unique identifier for a feature or table row within a geodatabase."},hasAttachments:{type:"boolean",description:"Indicates whether attachments should be loaded for the layer."},hasStaticData:{type:"boolean",description:"Boolean value indicating whether data changes. True if it does not."},htmlPopupType:{type:"string",enum:["esriServerHTMLPopupTypeAsHTMLText","esriServerHTMLPopupTypeAsURL","esriServerHTMLPopupTypeNone"],description:"String value indicating the HTML popup type."},id:{type:"number",description:"The identifier assigned to the layer."},isDataVersioned:{type:"boolean",description:"Boolean value indicating whether the data is versioned."},maxRecordCount:{type:"number",description:"Numeric value indicating tbe maximum number of records that will be returned at once for a query."},maxScale:{type:"number",description:"Represents the maximum scale at which the layer definition will be applied. This does not apply to layers of type: ArcGISMapServiceLayer, ImageServiceVectorLayer or ImageServiceLayer."},minScale:{type:"number",description:"Represents the minimum scale at which the layer definition will be applied. This does not apply to layers of type: ArcGISMapServiceLayer, ImageServiceVectorLayer or ImageServiceLayer."},name:{type:"string",description:"Contains a unique name for the layer that can be displayed in a legend."},objectIdField:{type:"string",description:"Indicates the name of the object ID field in the dataset."},overrideSymbols:{type:"boolean",description:"Dictates whether a client can support having an end user modify symbols on individual features."},rangeInfos:{description:"Indicates range information"},source:{description:"An object indicating the layerDefinition's layer source."},spatialReference:{$ref:"#/definitions/ISpatialReference",description:"An object containing the WKID or WKT identifying the spatial reference of the layer's geometry."},supportedQueryFormats:{type:"string",description:"String value indicating the output formats that are supported in a query."},supportsAdvancedQueries:{type:"boolean",description:"Boolean value indicating whether the layer supports orderByFields in a query operation."},supportsAttachmentsByUploadId:{type:"boolean",description:"Boolean value indicating whether the layer supports uploading attachments with the Uploads operation. This can then be used in the Add Attachment and Update Attachment operations."},supportsCalculate:{type:"boolean",description:"Boolean value indicating whether the layer supports the Calculate REST operation when updating features."},supportsRollbackOnFailureParameter:{type:"boolean",description:"Boolean value indicating whether the layer supports rolling back edits made on a feature layer if some of the edits fail."},supportsStatistics:{type:"boolean",description:"Boolean value indicating whether feature layer query operations support statistical functions."},supportsValidateSql:{type:"boolean",description:"Boolean value indicating whether the validateSQL operation is supported across a feature service layer."},templates:{type:"array",items:{$ref:"#/definitions/ITemplate"},description:"A property of the layer definition when there are no types defined; otherwise, templates are defined as properties of the types."},timeInfo:{description:"The time info metadata of the layer. May be set for feature layers inside a feature collection item."},type:{type:"string",enum:["Feature Layer","Table"],description:"Indicates whether the layerDefinition applies to a Feature Layer or a Table."},typeIdField:{type:"string",description:"Contains the name of the field holding the type ID for the features."},types:{description:"Contains information about an attribute field."},visibilityField:{type:"string",description:"String value indicating the attribute field that is used to control the visibility of a feature. If applicable, when rendering a feature the client should use this field to control visibility. The field's values are 0 = do not display, 1 = display."},relationships:{type:"array",items:{}},editFieldsInfo:{type:"object",properties:{creationDateField:{type:"string"},creatorField:{type:"string"},editDateField:{type:"string"},editorField:{type:"string"}}},parentLayerId:{type:"number"},ownershipBasedAccessControlForFeatures:{type:"boolean"},syncCanReturnChanges:{type:"boolean"},archivingInfo:{type:"object",properties:{supportsQueryWithHistoricMoment:{type:"boolean"},startArchivingMoment:{type:"number"}}},supportsValidateSQL:{type:"boolean"},advancedQueryCapabilities:{type:"object",properties:{supportsPagination:{type:"boolean"},supportsTrueCurve:{type:"boolean"},supportsQueryWithDistance:{type:"boolean"},supportsReturningQueryExtent:{type:"boolean"},supportsStatistics:{type:"boolean"},supportsOrderBy:{type:"boolean"},supportsDistinct:{type:"boolean"},supportsSqlExpression:{type:"boolean"},supportsPercentileStatistics:{type:"boolean"}}},allowTrueCurvesUpdates:{type:"boolean"},onlyAllowTrueCurveUpdatesByTrueCurveClients:{type:"boolean"},supportsApplyEditsWithGlobalIds:{type:"boolean"},subtypeField:{type:"string"},indexes:{type:"array",items:{}},dateFieldsTimeReference:{type:"object",properties:{timeZone:{type:"string"},respectsDaylightSaving:{type:"boolean"}}},useStandardizedQueries:{type:"boolean"}},description:'`ILayerDefinition` can also be imported from the following packages:\n\n```js import { ILayerDefinition } from "@esri/arcgis-rest-service-admin"; import { ILayerDefinition } from "@esri/arcgis-rest-feature-layer"; ```',title:"ILayerDefinition"},IEditingInfo:{type:"object",properties:{lastEditDate:{type:"number",description:"date of last edit to the layer"}},title:"IEditingInfo"},IField:{type:"object",properties:{name:{type:"string",description:"A string defining the field name."},type:{$ref:"#/definitions/FieldType",description:"A string defining the field type."},alias:{type:"string",description:"A string defining the field alias."},domain:{$ref:"#/definitions/IDomain",description:"The domain objects if applicable."},editable:{type:"boolean",description:"A Boolean defining whether this field is editable."},exactMatch:{type:"boolean",description:"A Boolean defining whether or not the field is an exact match."},length:{type:"number",description:"A number defining how many characters are allowed in a string. field."},nullable:{type:"boolean",description:"A Boolean defining whether this field can have a null value."},defaultValue:{description:"The value written in for new records by default."}},required:["name","type"],description:'Contains information about an attribute field.\n\n`IField` can also be imported from the following packages:\n\n```js import { IField } from "@esri/arcgis-rest-feature-layer"; ```',title:"IField"},FieldType:{type:"string",enum:["esriFieldTypeBigInteger","esriFieldTypeBlob","esriFieldTypeDate","esriFieldTypeDateOnly","esriFieldTypeDouble","esriFieldTypeGeometry","esriFieldTypeGlobalID","esriFieldTypeGUID","esriFieldTypeInteger","esriFieldTypeOID","esriFieldTypeRaster","esriFieldTypeSingle","esriFieldTypeSmallInteger","esriFieldTypeString","esriFieldTypeTimeOnly","esriFieldTypeTimestampOffset","esriFieldTypeXML"],title:"FieldType"},IDomain:{type:"object",properties:{type:{$ref:"#/definitions/DomainType",description:"A string defining the domain type."},name:{type:"string",description:"A string defining the field name."},range:{type:"array",items:{type:"number"},minItems:2,maxItems:2,description:"A 2 element array defining the range of possible values."},codedValues:{type:"array",items:{$ref:"#/definitions/ICodedValue"},description:"An array of CodedValues for domains of type codedValue."},description:{type:"string",description:"Description of the domain"},mergePolicy:{type:"string",description:"Merge policy"},splitPolicy:{type:"string",description:"Split Policy"}},required:["type"],title:"IDomain"},DomainType:{type:"string",enum:["codedValue","inherited","range"],title:"DomainType"},ICodedValue:{type:"object",properties:{name:{type:"string",description:"User-friendly name for what the code means."},code:{type:["number","string"],description:"The value stored in the feature attribute."}},required:["name","code"],title:"ICodedValue"},GeometryType:{type:"string",enum:["esriGeometryEnvelope","esriGeometryMultipoint","esriGeometryPoint","esriGeometryPolygon","esriGeometryPolyline"],description:'`GeometryType` can also be imported from the following packages:\n\n```js import { GeometryType } from "@esri/arcgis-rest-feature-layer"; ```',title:"GeometryType"},ITemplate:{type:"object",properties:{description:{description:"A string value containing a detailed description of the template."},drawingTool:{$ref:"#/definitions/FeatureEditTool",description:"An optional string that can define a client-side drawing tool to be used with this feature. For example, map notes used by the Online Map Viewer use this to represent the viewer's different drawing tools."},name:{type:"string",description:"A string containing a user-friendly name for the template."},prototype:{$ref:"#/definitions/IFeature",description:"A feature object representing a prototypical feature for the template."}},description:`Templates describe features that can be created in a layer. They are generally used with feature collections and editable web-based CSV layers.
48
+
49
+ Templates are not used with ArcGIS feature services as these already have templates defined in the service.
50
+
51
+ They are also defined as properties of the layer definition when there are no defined types. Otherwise, templates are defined as properties of the types.`,title:"ITemplate"},FeatureEditTool:{type:"string",enum:["esriFeatureEditToolAutoCompletePolygon","esriFeatureEditToolCircle","esriFeatureEditToolDownArrow","esriFeatureEditToolEllipse","esriFeatureEditToolFreehand","esriFeatureEditToolLeftArrow","esriFeatureEditToolLine","esriFeatureEditToolNone","esriFeatureEditToolPoint","esriFeatureEditToolPolygon","esriFeatureEditToolRectangle","esriFeatureEditToolRightArrow","esriFeatureEditToolText","esriFeatureEditToolTriangle","esriFeatureEditToolUpArrow"],title:"FeatureEditTool"},IFeature:{type:"object",properties:{geometry:{$ref:"#/definitions/IGeometry"},attributes:{$ref:"#/definitions/Record%3Cstring%2Cany%3E"},symbol:{$ref:"#/definitions/ISymbol"}},required:["attributes"],description:'a spatial entity and its corresponding properties\n\n`IFeature` can also be imported from the following packages:\n\n```js import { IFeature } from "@esri/arcgis-rest-feature-layer"; import { IFeature } from "@esri/arcgis-rest-routing"; ```',title:"IFeature"},"Record<string,any>":{type:"object",title:"Record<string,any>"},IPopupInfo:{type:"object",properties:{description:{type:["string","null"],description:"A string that appears in the body of the popup window as a description. It is also possible to specify the description as HTML-formatted content."},expressionInfos:{type:"array",items:{$ref:"#/definitions/IPopupExpressionInfo"},description:"List of Arcade expressions added to the pop-up."},fieldInfos:{type:"array",items:{$ref:"#/definitions/IFieldInfo"},description:"Array of fieldInfo information properties. This information is provided by the service layer definition. When the description uses name/value pairs, the order of the array is how the fields display in the editable Map Viewer popup and the resulting popup. It is also possible to specify HTML-formatted content."},layerOptions:{type:"object",properties:{showNoDataRecords:{type:"boolean",description:"Indicates whether or not the NoData records should be displayed."}},required:["showNoDataRecords"],description:"Additional options that can be defined for the popup layer."},mediaInfos:{type:"array",items:{$ref:"#/definitions/IMediaInfo"},description:"Array of various mediaInfo to display. Can be of type image, piechart, barchart, columnchart, or linechart. The order given is the order in which is displays."},popupElements:{type:"array",items:{$ref:"#/definitions/IPopupElement"},description:"An array of popupElement objects that represent an ordered list of popup elements."},relatedRecordsInfo:{$ref:"#/definitions/IRelatedRecordsInfo",description:"Indicates whether to enable related records if they exist on a layer."},showAttachments:{type:"boolean",description:"Indicates whether attachments will be loaded for feature layers that have attachments."},title:{type:"string",description:"A string that appears at the top of the popup window as a title."}},title:"IPopupInfo"},IPopupExpressionInfo:{type:"object",properties:{expression:{type:"string",description:"The Arcade expression."},name:{type:"string",description:"Unique identifier for the expression."},returnType:{type:"string",enum:["number","string"],description:"Return type of the Arcade expression, can be number or string. Defaults to string value. Number values are assumed to be double. This can be determined by the authoring client by executing the expression using a sample feature(s), although it can be corrected by the user. Knowing the returnType allows the authoring client to present fields in relevant contexts. For example, numeric fields in numeric contexts such as charts."},title:{type:"string",description:"Title of the expression."}},title:"IPopupExpressionInfo"},IFieldInfo:{type:"object",properties:{fieldName:{description:"A string containing the field name as defined by the service. Anywhere that a fieldname is referenced as {field-name} in popupInfo, an Arcade expression can also be referenced as{expression/}`."},format:{$ref:"#/definitions/IFieldFormat",description:"A format object used with numerical or date fields to provide more detail about how the value should be displayed in a web map popup window."},isEditable:{type:"boolean",description:"A Boolean determining whether users can edit this field. Not applicable to Arcade expressions."},label:{type:"string",description:"A string containing the field alias. This can be overridden by the web map author. Not applicable to Arcade expressions as title is used instead."},stringFieldOption:{type:"string",enum:["richtext","textarea","textbox"],description:"A string determining what type of input box editors see when editing the field. Applies only to string fields. Not applicable to Arcade expressions."},tooltip:{type:"string",description:"A string providing an editing hint for editors of the field. Not applicable to Arcade expressions."},visible:{type:"boolean",description:"A Boolean determining whether the field is visible in the popup window."}},title:"IFieldInfo"},IFieldFormat:{type:"object",properties:{dateFormat:{type:"string",enum:["dayShortMonthYear","longDate","longMonthDayYear","longMonthYear","shortDate","shortDateLE","shortDateLELongTime","shortDateLELongTime24","shortDateLEShortTime","shortDateLEShortTime24","shortDateLongTime","shortDateLongTime24","shortDateShortTime","shortDateShortTime24","shortMonthYear","year"],description:"A string used with date fields to specify how the date should appear in popup windows."},digitSeparator:{type:"boolean",description:"A Boolean used with numerical fields. A value of true allows the number to have a digit (or thousands) separator when the value appears in popup windows. Depending on the locale, this separator is a decimal point or a comma. A value of false means that no separator will be used."},places:{type:"number",description:"An integer used with numerical fields to specify the number of supported decimal places that should appear in popup windows. Any places beyond this value are rounded."}},title:"IFieldFormat"},IMediaInfo:{type:"object",properties:{caption:{description:"A string caption describing the media."},refreshInterval:{description:"Refresh interval of the layer in minutes. Non-zero value indicates automatic layer refresh at the specified interval. Value of 0 indicates auto refresh is not enabled. If the property does not exist, it's equivalent to having a value of 0. Only applicable when type is set to image."},title:{type:["string","null"],description:"A string title for the media."},type:{type:"string",enum:["barchart","columnchart","image","linechart","piechart"],description:"A string defining the type of media."},value:{anyOf:[{$ref:"#/definitions/IMediaInfoValue"},{type:"null"}],description:"A value object containing information about how the image should be retrieved or how the chart should be constructed."}},title:"IMediaInfo"},IMediaInfoValue:{type:"object",properties:{fields:{type:"array",items:{type:"string"},description:"Used with charts. An array of strings, with each string containing the name of a field to display in the chart."},linkURL:{type:"string",description:"Used with images. A string containing a URL to be launched in a browser when a user clicks the image."},normalizeField:{type:"string",description:"Used with charts. An optional string containing the name of a field. The values of all fields in the chart will be normalized (divided) by the value of this field."},sourceURL:{type:"string",description:"Used with images. A string containing the URL to the image."},tooltipField:{type:"string",description:"String value indicating the tooltip for a chart specified from another field. This field is needed when related records are not sued. It is used for showing tooltips from another field in the same layer or related layer/table."}},title:"IMediaInfoValue"},IPopupElement:{type:"object",properties:{displayType:{type:"string",enum:["list","preview"],description:"This property applies to elements of type attachments. A string value indicating how to display the attachment. Possible values are, preview, and list. If list is specified, attachments show as links."},fieldInfos:{type:"array",items:{$ref:"#/definitions/IFieldInfo"},description:"This property applies to elements of type fields. It is an array of popupInfo.fieldInfo objects representing a field/value pair displayed as a table within the popupElement. If the fieldInfos property is not provided, the popupElement will display whatever is specified directly in the popupInfo.fieldInfos property."},mediaInfos:{type:"array",items:{$ref:"#/definitions/IMediaInfo"},description:"This property applies to elements of type media. An array of popupInfo.mediaInfo objects representing an image or chart for display. If no mediaInfos property is provided, the popupElement will display whatever is specified in the popupInfo.mediaInfo property."},text:{type:"string",description:"This property applies to elements of type text. This is string value indicating the text to be displayed within the popupElement. If no text property is provided, the popupElement will display whatever is specified in the popupInfo.description property."},type:{type:"string",enum:["attachments","fields","media","text"],description:"String value indicating which elements to use."}},title:"IPopupElement"},IRelatedRecordsInfo:{type:"object",properties:{orderByFields:{type:"array",items:{$ref:"#/definitions/IOrderByField"},description:"Array of orderByFields objects indicating the field display order for the related records and whether they should be sorted in ascending 'asc' or descending 'desc' order."},showRelatedRecords:{type:"boolean",description:"Required boolean value indicating whether to display related records. If true, client should let the user navigate to the related records. Defaults to true if the layer participates in a relationship AND the related layer/table has already been added to the map (either as an operationalLayer or as a table)."}},required:["showRelatedRecords"],title:"IRelatedRecordsInfo"},IOrderByField:{type:"object",properties:{field:{type:"string",description:"The attribute value of the field selected that will drive the sorting of related records."},order:{type:"string",enum:["asc","desc"],description:"Set the ascending or descending sort order of the returned related records."}},title:"IOrderByField"},IImageServiceLayer:{type:"object",properties:{timeAnimation:{type:"boolean",description:"This property is applicable to layers that support time. If 'true', timeAnimation is enabled."},id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"ArcGISImageServiceLayer",description:"String indicating the layer type. Value of this property must be ArcGISImageServiceLayer"},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",description:"Deprecated, use layerType instead.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},bandIds:{type:"array",items:{type:"number"},description:"An array of bandIds that are visible, can specify bands to export or rearrange band order(from image service)."},compressionQuality:{description:"Controls how much loss the image will be subjected to by the compression algorithm (from image service)."},definitionEditor:{description:"Stores interactive filters."},disablePopup:{type:"boolean",description:"Boolean property indicating whether to ignore popups defined by the service item."},format:{type:"string",enum:["bmp","gif","jpg","jpgpng","png","png8","png24","png32","tiff"],description:"String value representing image format."},interpolation:{type:"string",enum:["RSP_BilinearInterpolation","RSP_CubicConvolution","RSP_Majority","RSP_NearestNeighbor"],description:"The algorithm used for interpolation."},isReference:{type:"boolean",description:"This is applicable if used as a baseMapLayer. A boolean value indicating whether or not the baseMapLayer draws on top (true) of other layers, including operationalLayers , or below (false)."},layerDefinition:{$ref:"#/definitions/ILayerDefinition",description:"A layerDefinition object defining the attribute schema and drawing information for the layer."},mosaicRule:{description:"Specifies the mosaic rule when defining how individual images should be mosaicked."},noData:{description:"The pixel value that represents no information."},noDataInterpretation:{type:"string",enum:["esriNoDataMatchAll","esriNoDataMatchAny"],description:"A string value of interpretation of noData setting. Default is 'esriNoDataMatchAny' when noData is a number, and 'esriNoDataMatchAll' when noData is an array."},pixelType:{type:"string",enum:["C64","C128","F32","F64","S8","S16","S32","U1","U2","U4","U8","U16","U32","UNKNOWN"],description:"Pertains to the type of values stored in the raster, such as signed integer, unsigned integer, or floating point."},popupInfo:{$ref:"#/definitions/IPopupInfo",description:"A popupInfo object defining the content of popup windows when you click or query a feature."},refreshInterval:{type:"number",description:"Refresh interval of the layer in minutes. Non-zero value indicates automatic layer refresh at the specified interval. Value of 0 indicates auto refresh is not enabled."},renderingRule:{description:"Specifies the rendering rule for how the requested image should be rendered."}},required:["id","layerType"],title:"IImageServiceLayer"},ITiledImageServiceLayer:{type:"object",properties:{id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"ArcGISTiledImageServiceLayer",description:"String indicating the layer type. Value of this property must be ArcGISTiledImageServiceLayer"},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",description:"Deprecated, use layerType instead.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},isReference:{type:"boolean",description:"Applicable if used as a baseMapLayer. A boolean value indicating whether or not the baseMapLayer draws on top (true) of other layers, including operationalLayers , or below (false)."},refreshInterval:{type:"number",description:"Refresh interval of the layer in minutes. Non-zero value indicates automatic layer refresh at the specified interval. Value of 0 indicates auto refresh is not enabled."}},required:["id","layerType"],title:"ITiledImageServiceLayer"},WebChartLabelBehavior:{type:"string",enum:["hide","rotate","stagger","wrap"],description:"Represents the different types of behaviors that can applied to a chart axis.",title:"WebChartLabelBehavior"},WebChartStackedKinds:{type:"string",enum:["sideBySide","stacked","stacked100"],title:"WebChartStackedKinds"},WebChartOrderSeriesBy:{type:"object",properties:{preferLabel:{type:"boolean",description:`When the value is set to true, we want to order the split-by series based on the series' names (alias, custom label, or description).
52
+
53
+ When the value is set to false, we want to order the split-by series based on the series' split-by values.`,default:!0},orderBy:{$ref:"#/definitions/WebChartSortOrderKinds",description:"The direction of the order.",default:"WebChartSortOrderKinds.Ascending"}},description:"Order options for split-by series.",title:"WebChartOrderSeriesBy"},WebChartSortOrderKinds:{type:"string",enum:["ASC","DESC"],title:"WebChartSortOrderKinds"},WebChartDirectionalDataOrder:{type:"object",properties:{orderType:{type:"string",enum:["arcgis-charts-category","arcgis-charts-mean","arcgis-charts-median","arcgis-charts-y-value"],description:"The type of order, eg by category, by mean, by median, or by y value."},orderBy:{$ref:"#/definitions/WebChartSortOrderKinds",description:"The direction of the order, either ascending or descending."},preferLabel:{type:"boolean",description:"Indicates whether to order data by the label or the value.\n\nFor example, when a field has domain coded values or supbtypes, setting this property to `false` will order the data by the field value. Otherwise the domain description, subtypes description, or the alias of the field will be used to sort the data.",default:!0}},required:["orderType","orderBy"],description:"A data order option that allows the items to be ordered either ascending or descending. This option can be used for the following types of order: by category, by mean, by median, and by y value.",title:"WebChartDirectionalDataOrder"},WebChartMultiAxesDataOrder:{type:"object",properties:{orderType:{type:"string",const:"arcgis-charts-multi-axes",description:"The type of order, which is two dimensional."},orderByX:{anyOf:[{type:"array",items:{type:"string"}},{$ref:"#/definitions/WebChartSortOrderKinds"}],description:"The direction of the order for the x axis. If the axis is categorical, this can also be a predefined list of labels."},orderByY:{anyOf:[{type:"array",items:{type:"string"}},{$ref:"#/definitions/WebChartSortOrderKinds"}],description:"The direction of the order for the y axis. If the axis is categorical, this can also be a predefined list of labels."}},required:["orderType"],description:`A data order option that allows the items to be ordered on both the x- and y-axes;
54
+
55
+ For each axis, the order can be either a direction (ascending or descending) for all axis types; or a predefined list of labels when the axis is categorical.`,title:"WebChartMultiAxesDataOrder"},WebChartPredefinedLabelsDataOrder:{type:"object",properties:{orderType:{type:"string",const:"arcgis-charts-category",description:"The type of order, which is by category."},orderBy:{type:"array",items:{type:"string"},description:"The predefined list of labels to order the data by.\n\nWhen the value of the `preferLabel` property is set to `false`, the `orderBy` list should be a list of coded domain values or field names; otherwise, it should be a list of domain descriptions, subtypes descriptions, or field aliases."},preferLabel:{type:"boolean",description:"Indicates whether to order data by the label or the value.\n\nFor example, when a field has domain coded values or supbtypes, setting this property to `false` will order the data by the field value. Otherwise the domain description, subtypes description, or the alias of the field will be used to sort the data.\n\nWhen the value is set to `true` or undefined, the `orderBy` property should contain a list of labels like domain descriptions, subtypes descriptions, or field aliases. When the value is set to `false`, the `orderBy` property should contain a list of coded domain values or field names, in order for the data to be sorted correctly.",default:!0}},required:["orderType","orderBy"],description:"A data order option that allows the items to be ordered by `category` based on a predefined list of labels.",title:"WebChartPredefinedLabelsDataOrder"},WebGaugeChart:{type:"object",properties:{version:{type:"string",const:"25.0.0",description:"Version of the specification. Used to identify when a saved config was created."},type:{type:"string",const:"chart",description:"Represents a unique string identifier for the `WebChart` object. For the `WebChart` object, it is `chart`."},id:{type:"string",description:"Can be used to uniquely identify a chart."},iLayer:{anyOf:[{$ref:"#/definitions/IFeatureLayer"},{$ref:"#/definitions/IImageServiceLayer"},{$ref:"#/definitions/ITiledImageServiceLayer"}],description:"Property representing the layer to be used by the chart. If not provided we expect a layer object to be set on the component."},dataFilters:{$ref:"#/definitions/WebChartDataFilters",description:"Used to filter the chart's data while in layer mode."},title:{$ref:"#/definitions/WebChartText",description:"Specifies title of the chart."},subtitle:{$ref:"#/definitions/WebChartText",description:"Specifies subtitle of the chart."},footer:{$ref:"#/definitions/WebChartText",description:"Specifies footer of the chart."},background:{$ref:"#/definitions/Color",description:"Specifies the background color of the chart.",default:"`[255, 255, 255, 255]`"},cursorCrosshair:{$ref:"#/definitions/WebChartCursorCrosshair",description:"Specifies cursor's crosshair information for the chart. Only for XY charts."},legend:{anyOf:[{$ref:"#/definitions/WebChartLegend"},{$ref:"#/definitions/WebChartPieChartLegend"}],description:"Specifies the Legend information for the chart."},axes:{type:"array",items:{$ref:"#/definitions/WebChartGaugeAxis"},minItems:1,maxItems:1,description:"Array of one `WebChartGaugeAxis`."},horizontalAxisLabelsBehavior:{$ref:"#/definitions/WebChartLabelBehavior",description:"Represents the way the labels should behave when the horizontal axis can't display them all.\n\nApplicable to XY charts only. Histograms support `none` and `rotate` only. The default horizontal axis value is `rotate`, except for histograms, where it is `none`.",default:"rotate"},verticalAxisLabelsBehavior:{$ref:"#/definitions/WebChartLabelBehavior",description:`Represents the way the labels should behave when the vertical axis can't display them all.
56
+
57
+ For XY Chart only.`,default:"wrap"},series:{type:"array",items:{$ref:"#/definitions/WebChartSeriesType"},description:`Represents an array of various chart series to be plot inside the chart.
58
+
59
+ Empty array is not allowed.`,minItems:1},rotated:{type:"boolean",description:"Specifies whether or not the chart is rotated.",default:!1},stackedType:{$ref:"#/definitions/WebChartStackedKinds",description:`Specifies how the bars/lines should be placed when multiple series are rendered in the same chart.
60
+
61
+ Only applicable to bar and line series.`,default:"sideBySide"},colorMatch:{type:"boolean",description:"Specifies whether to first try matching the colors from the layer renderer or the chart renderer for coloring the chart elements, like markers, line segments, columns, etc.\n\nTo do so, this property needs to be set to `true`.\n\nWhen there is no matching color found (for when `colorMatch = true`) or when `colorMatch = false`, the colors from the config, and then from the color ramps will be used, in that order.",default:!1},chartRenderer:{description:`Renderer to use to style the series when the chart uses the color match mode.
62
+
63
+ Considered before the layer's renderer.`},orderOptions:{type:"object",properties:{series:{$ref:"#/definitions/WebChartOrderSeriesBy",description:`How series should be ordered and displayed in a multi-series chart.
64
+
65
+ If not provided the series will be displayed as they are ordered in the config.`},data:{anyOf:[{$ref:"#/definitions/WebChartDirectionalDataOrder"},{$ref:"#/definitions/WebChartMultiAxesDataOrder"},{$ref:"#/definitions/WebChartPredefinedLabelsDataOrder"}],description:"How data for a chart should be ordered. It is recommended to use this property over its sibling `orderByFields` to order the chart data. If not provided, the data will be displayed as it was retrieved from the server. No additional ordering will be applied.\n\nThe `WebChartDirectionalDataOrder` and `WebChartPredefinedLabelsDataOrder` are applicable to all chart types except heat chart. The `WebChartMultiAxesDataOrder` is specifically used for heat chart."},orderByFields:{type:"array",items:{type:"string"},description:"The `orderByFields` to be sent with the query when retrieving data for the chart. It represents the desired sorting order of the output result from the server.\n\nThe format of any entry in this array is `field_name sorting_order`. When `sorting_order` is not defined, it is assumed to be ascending.\n\nIn case both this property and its sibling `data` object are provided, the order of the chart elements are settled by the order instruction in the `data` property. This property is applicable to all chart types but heat charts."}},description:"Chart order options for data and series."},innerRadius:{type:["number","null"],description:"Represents the size of the hole in middle of the chart. The number is used as a percentage rather than a fixed value.",default:50},startAngle:{type:["number","null"],description:"Represents where is the chart's starting point",default:-180},endAngle:{type:["number","null"],description:"Represents where is the chart's ending point. To be related with `startAngle`. If `endAngle-startAngle` is 360 the chart will render as a full circle.",default:180},subType:{$ref:"#/definitions/GaugeChartSubTypes",description:"The type of gauge, like `FeatureGauge` or `StatisticGauge`.\n\nWhen this property is not specified, it will be defaulted to `GaugeChartSubTypes.StatisticGauge`."}},required:["axes","series","type","version"],description:"JSON representation of the gauge chart.",title:"WebGaugeChart"},GaugeChartSubTypes:{type:"string",enum:["featureGauge","statisticGauge"],description:"Represents the different types of gauge charts.",title:"GaugeChartSubTypes"},WebBoxPlot:{type:"object",properties:{version:{type:"string",const:"25.0.0",description:"Version of the specification. Used to identify when a saved config was created."},type:{type:"string",const:"chart",description:"Represents a unique string identifier for the `WebChart` object. For the `WebChart` object, it is `chart`."},id:{type:"string",description:"Can be used to uniquely identify a chart."},iLayer:{anyOf:[{$ref:"#/definitions/IFeatureLayer"},{$ref:"#/definitions/IImageServiceLayer"},{$ref:"#/definitions/ITiledImageServiceLayer"}],description:"Property representing the layer to be used by the chart. If not provided we expect a layer object to be set on the component."},dataFilters:{$ref:"#/definitions/WebChartDataFilters",description:"Used to filter the chart's data while in layer mode."},title:{$ref:"#/definitions/WebChartText",description:"Specifies title of the chart."},subtitle:{$ref:"#/definitions/WebChartText",description:"Specifies subtitle of the chart."},footer:{$ref:"#/definitions/WebChartText",description:"Specifies footer of the chart."},background:{$ref:"#/definitions/Color",description:"Specifies the background color of the chart.",default:"`[255, 255, 255, 255]`"},cursorCrosshair:{$ref:"#/definitions/WebChartCursorCrosshair",description:"Specifies cursor's crosshair information for the chart. Only for XY charts."},legend:{anyOf:[{$ref:"#/definitions/WebChartLegend"},{$ref:"#/definitions/WebChartPieChartLegend"}],description:"Specifies the Legend information for the chart."},axes:{type:"array",items:{$ref:"#/definitions/WebChartAxis"},minItems:1,maxItems:3,description:"Represents an array of **at least 1 or at most 3** chart axes accompanying the chart. The third axis config is used when a series `assignToSecondValueAxis` is set to `true`. Some of the axis features won't apply to the third axis (e.g. labels behaviors)."},horizontalAxisLabelsBehavior:{$ref:"#/definitions/WebChartLabelBehavior",description:"Represents the way the labels should behave when the horizontal axis can't display them all.\n\nApplicable to XY charts only. Histograms support `none` and `rotate` only. The default horizontal axis value is `rotate`, except for histograms, where it is `none`.",default:"rotate"},verticalAxisLabelsBehavior:{$ref:"#/definitions/WebChartLabelBehavior",description:`Represents the way the labels should behave when the vertical axis can't display them all.
66
+
67
+ For XY Chart only.`,default:"wrap"},series:{type:"array",items:{anyOf:[{$ref:"#/definitions/WebChartBoxPlotSeries"},{$ref:"#/definitions/WebChartLineChartSeries"}]},description:"The box plot series can be of type `boxPlotSeries` or `lineSeries`."},rotated:{type:"boolean",description:"Specifies whether or not the chart is rotated.",default:!1},stackedType:{$ref:"#/definitions/WebChartStackedKinds",description:`Specifies how the bars/lines should be placed when multiple series are rendered in the same chart.
68
+
69
+ Only applicable to bar and line series.`,default:"sideBySide"},colorMatch:{type:"boolean",description:"Specifies whether to first try matching the colors from the layer renderer or the chart renderer for coloring the chart elements, like markers, line segments, columns, etc.\n\nTo do so, this property needs to be set to `true`.\n\nWhen there is no matching color found (for when `colorMatch = true`) or when `colorMatch = false`, the colors from the config, and then from the color ramps will be used, in that order.",default:!1},chartRenderer:{description:`Renderer to use to style the series when the chart uses the color match mode.
70
+
71
+ Considered before the layer's renderer.`},orderOptions:{type:"object",properties:{series:{$ref:"#/definitions/WebChartOrderSeriesBy",description:`How series should be ordered and displayed in a multi-series chart.
72
+
73
+ If not provided the series will be displayed as they are ordered in the config.`},data:{anyOf:[{$ref:"#/definitions/WebChartDirectionalDataOrder"},{$ref:"#/definitions/WebChartMultiAxesDataOrder"},{$ref:"#/definitions/WebChartPredefinedLabelsDataOrder"}],description:"How data for a chart should be ordered. It is recommended to use this property over its sibling `orderByFields` to order the chart data. If not provided, the data will be displayed as it was retrieved from the server. No additional ordering will be applied.\n\nThe `WebChartDirectionalDataOrder` and `WebChartPredefinedLabelsDataOrder` are applicable to all chart types except heat chart. The `WebChartMultiAxesDataOrder` is specifically used for heat chart."},orderByFields:{type:"array",items:{type:"string"},description:"The `orderByFields` to be sent with the query when retrieving data for the chart. It represents the desired sorting order of the output result from the server.\n\nThe format of any entry in this array is `field_name sorting_order`. When `sorting_order` is not defined, it is assumed to be ascending.\n\nIn case both this property and its sibling `data` object are provided, the order of the chart elements are settled by the order instruction in the `data` property. This property is applicable to all chart types but heat charts."}},description:"Chart order options for data and series."},showOutliers:{type:"boolean",description:"Whether to show the outliers on the chart."},standardizeValues:{type:"boolean",description:"Whether to standardize the values by calculating the series z-score."},showMean:{type:"boolean",description:`Whether to show the mean lines on the chart. Applies only if a split-by field is set.
74
+
75
+ Additionally the chart will render with that option enabled only if the the series array contains one box plot series and N lines series.`,default:!1}},required:["series","type","version"],description:"JSON representation of the box plot.",title:"WebBoxPlot"},WebRadarChart:{type:"object",properties:{version:{type:"string",const:"25.0.0",description:"Version of the specification. Used to identify when a saved config was created."},type:{type:"string",const:"chart",description:"Represents a unique string identifier for the `WebChart` object. For the `WebChart` object, it is `chart`."},id:{type:"string",description:"Can be used to uniquely identify a chart."},iLayer:{anyOf:[{$ref:"#/definitions/IFeatureLayer"},{$ref:"#/definitions/IImageServiceLayer"},{$ref:"#/definitions/ITiledImageServiceLayer"}],description:"Property representing the layer to be used by the chart. If not provided we expect a layer object to be set on the component."},dataFilters:{$ref:"#/definitions/WebChartDataFilters",description:"Used to filter the chart's data while in layer mode."},title:{$ref:"#/definitions/WebChartText",description:"Specifies title of the chart."},subtitle:{$ref:"#/definitions/WebChartText",description:"Specifies subtitle of the chart."},footer:{$ref:"#/definitions/WebChartText",description:"Specifies footer of the chart."},background:{$ref:"#/definitions/Color",description:"Specifies the background color of the chart.",default:"`[255, 255, 255, 255]`"},cursorCrosshair:{$ref:"#/definitions/WebChartCursorCrosshair",description:"Specifies cursor's crosshair information for the chart. Only for XY charts."},legend:{anyOf:[{$ref:"#/definitions/WebChartLegend"},{$ref:"#/definitions/WebChartPieChartLegend"}],description:"Specifies the Legend information for the chart."},axes:{type:"array",minItems:2,items:[{$ref:"#/definitions/WebChartRadarChartAxis"},{$ref:"#/definitions/WebChartAxis"}],maxItems:2,description:"Array of two axes, one specific to the radar chart and the other one common to all charts."},horizontalAxisLabelsBehavior:{$ref:"#/definitions/WebChartLabelBehavior",description:"Represents the way the labels should behave when the horizontal axis can't display them all.\n\nApplicable to XY charts only. Histograms support `none` and `rotate` only. The default horizontal axis value is `rotate`, except for histograms, where it is `none`.",default:"rotate"},verticalAxisLabelsBehavior:{$ref:"#/definitions/WebChartLabelBehavior",description:`Represents the way the labels should behave when the vertical axis can't display them all.
76
+
77
+ For XY Chart only.`,default:"wrap"},series:{type:"array",items:{$ref:"#/definitions/WebChartRadarChartSeries"},description:"The radar chart series.",minItems:1},rotated:{type:"boolean",description:"Specifies whether or not the chart is rotated.",default:!1},stackedType:{$ref:"#/definitions/WebChartStackedKinds",description:`Specifies how the bars/lines should be placed when multiple series are rendered in the same chart.
78
+
79
+ Only applicable to bar and line series.`,default:"sideBySide"},colorMatch:{type:"boolean",description:"Specifies whether to first try matching the colors from the layer renderer or the chart renderer for coloring the chart elements, like markers, line segments, columns, etc.\n\nTo do so, this property needs to be set to `true`.\n\nWhen there is no matching color found (for when `colorMatch = true`) or when `colorMatch = false`, the colors from the config, and then from the color ramps will be used, in that order.",default:!1},chartRenderer:{description:`Renderer to use to style the series when the chart uses the color match mode.
80
+
81
+ Considered before the layer's renderer.`},orderOptions:{type:"object",properties:{series:{$ref:"#/definitions/WebChartOrderSeriesBy",description:`How series should be ordered and displayed in a multi-series chart.
82
+
83
+ If not provided the series will be displayed as they are ordered in the config.`},data:{anyOf:[{$ref:"#/definitions/WebChartDirectionalDataOrder"},{$ref:"#/definitions/WebChartMultiAxesDataOrder"},{$ref:"#/definitions/WebChartPredefinedLabelsDataOrder"}],description:"How data for a chart should be ordered. It is recommended to use this property over its sibling `orderByFields` to order the chart data. If not provided, the data will be displayed as it was retrieved from the server. No additional ordering will be applied.\n\nThe `WebChartDirectionalDataOrder` and `WebChartPredefinedLabelsDataOrder` are applicable to all chart types except heat chart. The `WebChartMultiAxesDataOrder` is specifically used for heat chart."},orderByFields:{type:"array",items:{type:"string"},description:"The `orderByFields` to be sent with the query when retrieving data for the chart. It represents the desired sorting order of the output result from the server.\n\nThe format of any entry in this array is `field_name sorting_order`. When `sorting_order` is not defined, it is assumed to be ascending.\n\nIn case both this property and its sibling `data` object are provided, the order of the chart elements are settled by the order instruction in the `data` property. This property is applicable to all chart types but heat charts."}},description:"Chart order options for data and series."}},required:["axes","series","type","version"],description:"Gives a JSON representation of the radar chart object.",title:"WebRadarChart"},WebHeatChart:{type:"object",properties:{outTimeZone:{type:"string",description:"Defines the [IANA time zone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) used for temporal bin calculations.\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation."},firstDayOfWeek:{type:"number",description:"The first day of the week. This property is used to determine the start of the week for date-based bins. The default value depends on the user locale (e.g. `7` as Sunday for US, `1` as Monday for France).\n\nCurrent limitation: this is applied only when the provided layer supports the `queryBins` operation.",minimum:1,maximum:7,multipleOf:1},nullPolicy:{$ref:"#/definitions/WebChartNullPolicyTypes",description:"How summarized bins returning a null value are displayed. Supported options are:\n- `null`, `zero`, and `interpolate` for line series.\n- `null` and `zero` for bar series.",default:"null"},version:{type:"string",const:"25.0.0",description:"Version of the specification. Used to identify when a saved config was created."},type:{type:"string",const:"chart",description:"Represents a unique string identifier for the `WebChart` object. For the `WebChart` object, it is `chart`."},id:{type:"string",description:"Can be used to uniquely identify a chart."},iLayer:{anyOf:[{$ref:"#/definitions/IFeatureLayer"},{$ref:"#/definitions/IImageServiceLayer"},{$ref:"#/definitions/ITiledImageServiceLayer"}],description:"Property representing the layer to be used by the chart. If not provided we expect a layer object to be set on the component."},dataFilters:{$ref:"#/definitions/WebChartDataFilters",description:"Used to filter the chart's data while in layer mode."},title:{$ref:"#/definitions/WebChartText",description:"Specifies title of the chart."},subtitle:{$ref:"#/definitions/WebChartText",description:"Specifies subtitle of the chart."},footer:{$ref:"#/definitions/WebChartText",description:"Specifies footer of the chart."},background:{$ref:"#/definitions/Color",description:"Specifies the background color of the chart.",default:"`[255, 255, 255, 255]`"},cursorCrosshair:{$ref:"#/definitions/WebChartCursorCrosshair",description:"Specifies cursor's crosshair information for the chart. Only for XY charts."},legend:{anyOf:[{$ref:"#/definitions/WebChartLegend"},{$ref:"#/definitions/WebChartPieChartLegend"}],description:"Specifies the Legend information for the chart."},axes:{type:"array",items:{$ref:"#/definitions/WebChartAxis"},minItems:1,maxItems:3,description:"Represents an array of **at least 1 or at most 3** chart axes accompanying the chart. The third axis config is used when a series `assignToSecondValueAxis` is set to `true`. Some of the axis features won't apply to the third axis (e.g. labels behaviors)."},horizontalAxisLabelsBehavior:{$ref:"#/definitions/WebChartLabelBehavior",description:"Represents the way the labels should behave when the horizontal axis can't display them all.\n\nApplicable to XY charts only. Histograms support `none` and `rotate` only. The default horizontal axis value is `rotate`, except for histograms, where it is `none`.",default:"rotate"},verticalAxisLabelsBehavior:{$ref:"#/definitions/WebChartLabelBehavior",description:`Represents the way the labels should behave when the vertical axis can't display them all.
84
+
85
+ For XY Chart only.`,default:"wrap"},series:{type:"array",items:{$ref:"#/definitions/WebChartHeatChartSeries"},description:"The heat chart series.",minItems:1},rotated:{type:"boolean",description:"Specifies whether or not the chart is rotated.",default:!1},stackedType:{$ref:"#/definitions/WebChartStackedKinds",description:`Specifies how the bars/lines should be placed when multiple series are rendered in the same chart.
86
+
87
+ Only applicable to bar and line series.`,default:"sideBySide"},colorMatch:{type:"boolean",description:"Specifies whether to first try matching the colors from the layer renderer or the chart renderer for coloring the chart elements, like markers, line segments, columns, etc.\n\nTo do so, this property needs to be set to `true`.\n\nWhen there is no matching color found (for when `colorMatch = true`) or when `colorMatch = false`, the colors from the config, and then from the color ramps will be used, in that order.",default:!1},chartRenderer:{description:`Renderer to use to style the series when the chart uses the color match mode.
88
+
89
+ Considered before the layer's renderer.`},orderOptions:{type:"object",properties:{data:{$ref:"#/definitions/WebChartMultiAxesDataOrder",description:`How data for a chart should be ordered.
90
+
91
+ If not provided, the data will be displayed as it was retrieved from the server. No additional ordering will be applied.`},series:{$ref:"#/definitions/WebChartOrderSeriesBy",description:`How series should be ordered and displayed in a multi-series chart.
92
+
93
+ If not provided the series will be displayed as they are ordered in the config.`}},description:"Chart order options for data and series."},hideEmptyRowsAndColumns:{type:"boolean",description:"Whether to hide entire rows or columns that are empty (i.e. contain no valid data).",default:!1},viewType:{$ref:"#/definitions/WebChartHeatChartViewTypes",description:`The calendar view type for the heat chart.
94
+
95
+ **NOTE**: This property is only applicable to the calendar heat chart.`},includeLeapDay:{type:"boolean",description:"Whether to include leap day (Feb. 29th) in queries.",default:!1}},required:["series","type","version"],description:"Gives a JSON representation of the heat chart object.",title:"WebHeatChart"},'Omit<(structure-1066060463-57317-59060-1066060463-57242-59061-1066060463-53359-59063-1066060463-0-62116|undefined)937098756,("data"|"orderByFields")>':{$ref:"#/definitions/Pick%3C(structure-1066060463-57317-59060-1066060463-57242-59061-1066060463-53359-59063-1066060463-0-62116%7Cundefined)937098756%2CExclude%3C(%22series%22%7C%22data%22%7C%22orderByFields%22)%2C(%22data%22%7C%22orderByFields%22)%3E%3E",title:'Omit<(structure-1066060463-57317-59060-1066060463-57242-59061-1066060463-53359-59063-1066060463-0-62116|undefined)937098756,("data"|"orderByFields")>'},'Pick<(structure-1066060463-57317-59060-1066060463-57242-59061-1066060463-53359-59063-1066060463-0-62116|undefined)937098756,Exclude<("series"|"data"|"orderByFields"),("data"|"orderByFields")>>':{type:"object",properties:{series:{$ref:"#/definitions/WebChartOrderSeriesBy",description:`How series should be ordered and displayed in a multi-series chart.
96
+
97
+ If not provided the series will be displayed as they are ordered in the config.`}},additionalProperties:!1,title:'Pick<(structure-1066060463-57317-59060-1066060463-57242-59061-1066060463-53359-59063-1066060463-0-62116|undefined)937098756,Exclude<("series"|"data"|"orderByFields"),("data"|"orderByFields")>>'},WebChartHeatChartViewTypes:{type:"string",enum:["SingleCalendarView","SequentialCalendarViews"],description:"Represents the different types of views that can be applied to a heat chart.",title:"WebChartHeatChartViewTypes"},RGBObject:{type:"object",properties:{r:{type:"number",description:"Red component of the color, in the range [0, 255]."},g:{type:"number",description:"Green component of the color, in the range [0, 255]."},b:{type:"number",description:"Blue component of the color, in the range [0, 255]."},a:{type:"number",description:"Alpha component of the color.",default:1}},required:["r","g","b"],description:"JSON representation of the color object.",title:"RGBObject"},IRendererSymbol:{type:"object",properties:{style:{type:"string"},color:{$ref:"#/definitions/Color"},outline:{$ref:"#/definitions/ISimpleLineSymbol"},label:{type:"string"},uniqueValue:{type:"string"},type:{$ref:"#/definitions/SymbolType"}},required:["color","type"],title:"IRendererSymbol"},WebChartDataItemColor:{anyOf:[{$ref:"#/definitions/Color"},{$ref:"#/definitions/RGBArray"},{$ref:"#/definitions/RGBObject"},{type:"string"}],title:"WebChartDataItemColor"},RGBArray:{type:"array",items:{type:"number"},minItems:3,maxItems:3,title:"RGBArray"},WebChartDataItemValue:{anyOf:[{type:"string",format:"date-time"},{$ref:"#/definitions/IExtent"},{$ref:"#/definitions/IRendererSymbol"},{type:"array",items:{type:"number"}},{type:"array",items:{type:"string"}},{type:"array",items:{$ref:"#/definitions/WebChartDataItem"}},{$ref:"#/definitions/WebChartDataItemColor"},{type:"boolean"},{type:"number"},{type:"string"},{type:"null"},{not:{}}],title:"WebChartDataItemValue"},WebChartDataItem:{$ref:"#/definitions/Record%3Cstring%2CWebChartDataItemValue%3E",description:"JSON representation of a typical data item.",title:"WebChartDataItem"},"Record<string,WebChartDataItemValue>":{type:"object",additionalProperties:{$ref:"#/definitions/WebChartDataItemValue"},title:"Record<string,WebChartDataItemValue>"},WebChartBoxPlotDataItem:{type:"object",properties:{dataItems:{type:"array",items:{$ref:"#/definitions/WebChartDataItem"}},outliers:{type:"array",items:{$ref:"#/definitions/WebChartDataItem"}},meanLines:{type:"array",items:{$ref:"#/definitions/WebChartDataItem"}}},required:["dataItems"],description:"JSON representation of the processed data for a box plot.",title:"WebChartBoxPlotDataItem"},ScatterplotTrendLineData:{type:"object",properties:{r2:{type:"number"},trendLinePoints:{type:"array",items:{$ref:"#/definitions/WebChartDataItem"},minItems:2,maxItems:2}},description:"JSON representation of the processed data for a scatterplot trend line.",title:"ScatterplotTrendLineData"},WebChartScatterplotDataItem:{type:"object",properties:{r2:{type:"number"},trendLinePoints:{type:"array",items:{$ref:"#/definitions/WebChartDataItem"},minItems:2,maxItems:2},dataItems:{type:"array",items:{$ref:"#/definitions/WebChartDataItem"}},aggregated:{type:"boolean"}},required:["dataItems"],description:"JSON representation of the processed data for a scatterplot.",title:"WebChartScatterplotDataItem"},WebChartGenericDataItem:{type:"object",properties:{dataItems:{type:"array",items:{$ref:"#/definitions/WebChartDataItem"}},timeIntervalInfo:{$ref:"#/definitions/TimeIntervalInfo",description:`Time interval information.
98
+
99
+ Only applicable to bar chart, line chart.`},serverLimitReached:{type:"boolean",description:"Indicates whether the server limit has been reached when fetching data."}},required:["dataItems"],description:"JSON representation of the generic data structure for bar chart, line chart, combo bar line chart, gauge, heat chart, pie chart and radar chart.",title:"WebChartGenericDataItem"},WebChartBin:{type:"object",properties:{count:{type:"number"},minValue:{type:"number",description:"Minimum value in the bin."},maxValue:{type:"number",description:"Maximum value in the bin."},symbol:{$ref:"#/definitions/WebChartDataItem",description:"Symbol associated with the bin."},isLastBin:{type:"boolean",description:"Whether this is the last bin."}},required:["count","minValue","maxValue"],description:"JSON representation of a histogram bin.",title:"WebChartBin"},WebChartHistogramDataItem:{type:"object",properties:{mean:{type:"number"},median:{type:"number"},stddev:{type:"number"},max:{type:"number"},min:{type:"number"},sum:{type:"number",description:"Sum of the values of all the points."},count:{type:"number",description:"Number of all the points/features in un-binned data (including only non-null entries)."},nulls:{type:"number",description:"Number of null entries in the pool of points."},bins:{type:"array",items:{$ref:"#/definitions/WebChartBin"}}},required:["mean","median","stddev","max","min","bins"],description:"JSON representation of the processed data for a histogram.",title:"WebChartHistogramDataItem"},WebChartDataTypes:{anyOf:[{$ref:"#/definitions/WebChartBoxPlotDataItem"},{$ref:"#/definitions/WebChartGenericDataItem"},{$ref:"#/definitions/WebChartHistogramDataItem"},{$ref:"#/definitions/WebChartScatterplotDataItem"}],title:"WebChartDataTypes"},WebChartTypes:{type:"string",enum:["chart","chartText","chartOverlay","chartOverlays","chartLegend","cursorCrosshair","chartAxis","gaugeAxisTick","gaugeNeedle","category","number","date","chartGuide","scatterSeries","pieSeries","pieTick","gaugeSeries","lineSeries","barSeries","histogramSeries","boxPlotSeries","radarSeries","comboLineAndBarSeries","heatSeries","buffer","sizeScale","calendarDateParts"],title:"WebChartTypes"},WebChartStatisticType:{type:"string",enum:["count","sum","min","max","avg","stddev","var","percentile-continuous","percentile-discrete","envelope-aggregate","centroid-aggregate","convex-hull-aggregate","no_aggregation"],title:"WebChartStatisticType"},WebChartColoringPatterns:{type:"string",enum:["singleColor","colorMatch"],title:"WebChartColoringPatterns"},WebChartBoxPlotMultipleSeriesKinds:{type:"string",enum:["sideBySide","meanLines"],title:"WebChartBoxPlotMultipleSeriesKinds"},WebChartLineSmoothedKinds:{type:"string",enum:["bezier","monotoneX","monotoneY"],description:"Represents the different types of smoothing that can be applied to a line chart when the `lineSmoothed` property is set to `true`.",title:"WebChartLineSmoothedKinds"},WebChartCalendarBinningOffsetUnits:{type:"string",enum:["seconds","minutes","hours","days"],description:"The temporal binning units for the calendar based binning offset",title:"WebChartCalendarBinningOffsetUnits"},WebChartVersionStatus:{type:"string",enum:["same","newer","older","unrecognized"],title:"WebChartVersionStatus"},WebChartAxisTypes:{type:"string",enum:["value","date","category"],description:"Represents the different types of axes that can be used in a chart.",title:"WebChartAxisTypes"},WebChartOrderDataByTypes:{type:"string",enum:["arcgis-charts-y-value","arcgis-charts-mean","arcgis-charts-median","arcgis-charts-category","arcgis-charts-multi-axes"],description:"The types of order assocated with chart data.",title:"WebChartOrderDataByTypes"},RESTFieldType:{type:"string",enum:["esriFieldTypeBlob","esriFieldTypeDate","esriFieldTypeDateOnly","esriFieldTypeTimeOnly","esriFieldTypeTimestampOffset","esriFieldTypeDouble","esriFieldTypeGeometry","esriFieldTypeGlobalID","esriFieldTypeGUID","esriFieldTypeInteger","esriFieldTypeSmallInteger","esriFieldTypeBigInteger","esriFieldTypeOID","esriFieldTypeRaster","esriFieldTypeSingle","esriFieldTypeString","esriFieldTypeXML"],title:"RESTFieldType"},RESTSimpleLineSymbolStyle:{type:"string",enum:["esriSLSDash","esriSLSDashDot","esriSLSDashDotDot","esriSLSDot","esriSLSNull","esriSLSSolid"],title:"RESTSimpleLineSymbolStyle"},RESTSimpleMarkerSymbolStyle:{type:"string",enum:["esriSMSCircle","esriSMSCross","esriSMSDiamond","esriSMSSquare","esriSMSX","esriSMSTriangle"],title:"RESTSimpleMarkerSymbolStyle"},RESTSimpleFillSymbolStyle:{type:"string",enum:["esriSFSBackwardDiagonal","esriSFSCross","esriSFSDiagonalCross","esriSFSForwardDiagonal","esriSFSHorizontal","esriSFSNull","esriSFSSolid","esriSFSVertical"],title:"RESTSimpleFillSymbolStyle"},RESTHorizontalAlignment:{type:"string",enum:["left","right","center","justify"],title:"RESTHorizontalAlignment"},RESTVerticalAlignment:{type:"string",enum:["baseline","top","middle","bottom"],title:"RESTVerticalAlignment"},RESTSymbolType:{type:"string",enum:["esriSLS","esriSMS","esriSFS","esriPMS","esriPFS","esriTS"],title:"RESTSymbolType"},RESTFontStyle:{type:"string",enum:["italic","normal","oblique"],title:"RESTFontStyle"},RESTFontWeight:{type:"string",enum:["bold","bolder","lighter","normal"],title:"RESTFontWeight"},RESTFontDecoration:{type:"string",enum:["line-through","underline","none"],title:"RESTFontDecoration"},RESTRendererType:{type:"string",enum:["unique-value","simple","class-breaks","heatmap","dot-density","dictionary","pie-chart"],title:"RESTRendererType"},OverlayTerms:{type:"string",enum:["Mean","Median","Standard Deviation","Normal Distribution","Trendline"],title:"OverlayTerms"},CalculatedMinMaxBoundsPayload:{type:"object",properties:{isXAxis:{type:"boolean"},isSecondValueAxis:{type:"boolean"},minimum:{type:["number","null"],description:"The minimum value which the axis should represent, when it is not defined or null, then the minimum value for the corresponding axis is automatically calculated."},maximum:{type:["number","null"],description:"The maximum value which the axis should represent, when it is not defined or null, then the maximum value for the corresponding axis is automatically calculated."}},required:["isXAxis"],description:"Represents a subset of the event payload carrying the chart's axes bounds.",title:"CalculatedMinMaxBoundsPayload"},ChartDeletePayload:{type:"object",properties:{chartId:{type:"string"}},required:["chartId"],description:"Represents the payload of the event sent when a chart is removed from the chart list.",title:"ChartDeletePayload"},LegendItemVisibility:{type:"object",properties:{visible:{type:"boolean"},seriesId:{type:"string"},overlayType:{$ref:"#/definitions/OverlayTerms"},sliceId:{type:"string"},sliceData:{$ref:"#/definitions/WebChartDataItem"}},required:["visible"],description:"Represents the payload of the event sent when an item is toggled in the chart's legend (slice or series).",title:"LegendItemVisibility"},IFeatureSet:{type:"object",properties:{hasZ:{type:"boolean"},hasM:{type:"boolean"},objectIdFieldName:{type:"string"},globalIdFieldName:{type:"string"},displayFieldName:{type:"string"},geometryType:{$ref:"#/definitions/GeometryType",description:"For feature layers only."},spatialReference:{$ref:"#/definitions/ISpatialReference",description:"For feature layers only."},fields:{type:"array",items:{$ref:"#/definitions/IField"}},features:{type:"array",items:{$ref:"#/definitions/IFeature"}},fieldAliases:{$ref:"#/definitions/Record%3Cstring%2Cstring%3E"}},required:["features"],description:'`IFeatureSet` can also be imported from the following packages:\n\n```js import { IFeatureSet } from "@esri/arcgis-rest-feature-layer"; ```',title:"IFeatureSet"},"Record<string,string>":{type:"object",additionalProperties:{type:"string"},title:"Record<string,string>"},ILocation:{type:"object",properties:{latitude:{type:"number"},longitude:{type:"number"},lat:{type:"number"},long:{type:"number"},z:{type:"number"}},title:"ILocation"},IPolylineWithCurves:{type:"object",properties:{spatialReference:{$ref:"#/definitions/ISpatialReference"},hasZ:{type:"boolean"},hasM:{type:"boolean"},curvePaths:{type:"array",items:{type:"array",items:{anyOf:[{$ref:"#/definitions/JsonCurve"},{$ref:"#/definitions/Position"}]}}}},required:["curvePaths"],title:"IPolylineWithCurves"},ElipticArc:{$ref:"#/definitions/IArc",title:"ElipticArc"},SpatialRelationship:{type:"string",enum:["esriSpatialRelContains","esriSpatialRelCrosses","esriSpatialRelEnvelopeIntersects","esriSpatialRelIndexIntersects","esriSpatialRelIntersects","esriSpatialRelOverlaps","esriSpatialRelTouches","esriSpatialRelWithin"],description:'The spatial relationship used to compare input geometries\n\n`SpatialRelationship` can also be imported from the following packages:\n\n```js import { SpatialRelationship } from "@esri/arcgis-rest-feature-layer"; ```',title:"SpatialRelationship"},IMultipoint:{type:"object",properties:{spatialReference:{$ref:"#/definitions/ISpatialReference"},hasZ:{type:"boolean"},hasM:{type:"boolean"},points:{type:"array",items:{$ref:"#/definitions/Position"}}},required:["points"],title:"IMultipoint"},Units:{type:"string",enum:["esriSRUnit_Foot","esriSRUnit_Kilometer","esriSRUnit_Meter","esriSRUnit_NauticalMile","esriSRUnit_StatuteMile","esriSRUnit_USNauticalMile"],description:'`Units` can also be imported from the following packages:\n\n```js import { Units } from "@esri/arcgis-rest-feature-layer"; ```',title:"Units"},GroupMembership:{type:"string",enum:["admin","member","none","owner"],description:'`GroupMembership` can also be imported from the following packages:\n\n```js import { GroupMembership } from "@esri/arcgis-rest-portal"; ```',title:"GroupMembership"},IGroupAdd:{type:"object",properties:{title:{type:"string"},access:{type:"string",enum:["org","private","public"]},owner:{type:"string"},tags:{type:"array",items:{type:"string"}},description:{type:"string"},phone:{type:"string"},sortField:{type:"string",enum:["avgrating","created","modified","numviews","owner","title"]},sortOrder:{type:"string",enum:["asc","desc"]},isViewOnly:{type:"boolean"},isInvitationOnly:{type:"boolean"},thumbnail:{type:"string"},autoJoin:{type:"boolean"},snippet:{type:"string"}},required:["title","access"],title:"IGroupAdd"},IGroup:{type:"object",properties:{title:{type:"string"},access:{type:"string",enum:["org","private","public"]},owner:{type:"string"},tags:{type:"array",items:{type:"string"}},description:{type:"string"},phone:{type:"string"},sortField:{type:"string",enum:["avgrating","created","modified","numviews","owner","title"]},sortOrder:{type:"string",enum:["asc","desc"]},isViewOnly:{type:"boolean"},isInvitationOnly:{type:"boolean"},thumbnail:{type:"string"},autoJoin:{type:"boolean"},snippet:{type:"string"},id:{type:"string"},created:{type:"number"},modified:{type:"number"},protected:{type:"boolean"},isOpenData:{type:"boolean"},isFav:{type:"boolean"},userMembership:{type:"object",properties:{username:{type:"string"},memberType:{$ref:"#/definitions/GroupMembership"},applications:{type:"number"}}},hasCategorySchema:{type:"boolean"}},required:["access","autoJoin","created","id","isFav","isInvitationOnly","isViewOnly","modified","owner","protected","tags","title"],title:"IGroup"},IItemAdd:{type:"object",properties:{title:{type:"string"},type:{type:"string"},owner:{type:"string"},typeKeywords:{type:"array",items:{type:"string"}},description:{type:"string"},snippet:{type:"string"},documentation:{type:"string"},extent:{type:"array",items:{type:"array",items:{type:"number"}}},categories:{type:"array",items:{type:"string"}},spatialReference:{$ref:"#/definitions/ISpatialReference"},culture:{type:"string"},properties:{},url:{type:"string"},tags:{type:"array",items:{type:"string"}}},required:["title","type"],title:"IItemAdd"},IItemUpdate:{type:"object",properties:{id:{type:"string"}},required:["id"],title:"IItemUpdate"},IItem:{type:"object",properties:{title:{type:"string"},type:{type:"string"},owner:{type:"string"},typeKeywords:{type:"array",items:{type:"string"}},description:{type:"string"},snippet:{type:"string"},documentation:{type:"string"},extent:{type:"array",items:{type:"array",items:{type:"number"}}},categories:{type:"array",items:{type:"string"}},spatialReference:{$ref:"#/definitions/ISpatialReference"},culture:{type:"string"},properties:{},url:{type:"string"},tags:{type:"array",items:{type:"string"}},id:{type:"string"},created:{type:"number"},modified:{type:"number"},numViews:{type:"number"},size:{type:"number"},protected:{type:"boolean"}},required:["created","id","modified","numViews","owner","size","tags","title","type"],title:"IItem"},IFolder:{type:"object",properties:{username:{type:"string"},id:{type:"string"},title:{type:"string"},created:{type:"number"}},required:["username","id","title"],title:"IFolder"},IFeatureServiceDefinition:{type:"object",properties:{currentVersion:{type:"number"},serviceDescription:{type:"string"},hasVersionedData:{type:"boolean"},supportsDisconnectedEditing:{type:"boolean"},supportsReturnDeleteResults:{type:"boolean"},hasStaticData:{type:"boolean",description:"Boolean value indicating whether data changes. True if it does not."},maxRecordCount:{type:"number",description:"Numeric value indicating tbe maximum number of records that will be returned at once for a query."},supportedQueryFormats:{type:"string",description:"String value indicating the output formats that are supported in a query."},supportsRelationshipsResource:{type:"boolean"},capabilities:{type:"string",description:"A comma separated list of supported capabilities, e.g. Query,Editing."},description:{type:"string",description:"String value of the layer as defined in the map service."},copyrightText:{type:"string",description:"String value for the copyright text information for the layer."},advancedEditingCapabilities:{$ref:"#/definitions/Record%3Cstring%2Cboolean%3E"},spatialReference:{$ref:"#/definitions/ISpatialReference",description:"An object containing the WKID or WKT identifying the spatial reference of the layer's geometry."},initialExtent:{$ref:"#/definitions/IExtent"},fullExtent:{$ref:"#/definitions/IExtent"},allowGeometryUpdates:{type:"boolean",description:"Boolean value indicating whether the geometry of the features in the layer can be edited."},units:{type:"string"},syncEnabled:{type:"boolean"},returnServiceEditsHaveSR:{type:"boolean"},validationSystemLayers:{type:"object",properties:{validationPointErrorlayerId:{type:"number"},validationLineErrorlayerId:{type:"number"},validationPolygonErrorlayerId:{type:"number"},validationObjectErrortableId:{type:"number"}},required:["validationPointErrorlayerId","validationLineErrorlayerId","validationPolygonErrorlayerId","validationObjectErrortableId"]},extractChangesCapabilities:{type:"object",properties:{supportsReturnIdsOnly:{type:"boolean"},supportsReturnExtentOnly:{type:"boolean"},supportsReturnAttachments:{type:"boolean"},supportsLayerQueries:{type:"boolean"},supportsSpatialFilter:{type:"boolean"},supportsReturnFeature:{type:"boolean"}},required:["supportsReturnIdsOnly","supportsReturnExtentOnly","supportsReturnAttachments","supportsLayerQueries","supportsSpatialFilter","supportsReturnFeature"]},syncCapabilities:{type:"object",properties:{supportsASync:{type:"boolean"},supportsRegisteringExistingData:{type:"boolean"},supportsSyncDirectionControl:{type:"boolean"},supportsPerLayerSync:{type:"boolean"},supportsPerReplicaSync:{type:"boolean"},supportsRollbackOnFailure:{type:"boolean"},supportedSyncDataOptions:{type:"number"}},required:["supportsASync","supportsRegisteringExistingData","supportsSyncDirectionControl","supportsPerLayerSync","supportsPerReplicaSync","supportsRollbackOnFailure","supportedSyncDataOptions"]},editorTrackingInfo:{type:"object",properties:{enableEditorTracking:{type:"boolean"},enableOwnershipAccessControl:{type:"boolean"},allowOthersToUpdate:{type:"boolean"},allowOthersToDelete:{type:"boolean"}},required:["enableEditorTracking","enableOwnershipAccessControl","allowOthersToUpdate","allowOthersToDelete"]},documentInfo:{$ref:"#/definitions/Record%3Cstring%2Cstring%3E"},layers:{type:"array",items:{$ref:"#/definitions/ILayerDefinition"}},tables:{type:"array",items:{$ref:"#/definitions/ITable"}},relationships:{type:"array",items:{type:"object",properties:{id:{type:"number"},name:{type:"string"},backwardPathLabel:{type:"string"},originLayerId:{type:"number"},originPrimaryKey:{type:"string"},forwardPathLabel:{type:"string"},destinationLayerId:{type:"number"},originForeignKey:{type:"string"},relationshipTableId:{type:"number"},destinationPrimaryKey:{type:"string"},destinationForeignKey:{type:"string"},rules:{type:"array",items:{type:"object",properties:{ruleID:{type:"number"},originSubtypeCode:{type:"number"},originMinimumCardinality:{type:"number"},originMaximumCardinality:{type:"number"},destinationSubtypeCode:{type:"number"},destinationMinimumCardinality:{type:"number"},destinationMaximumCardinality:{type:"number"}},required:["ruleID","originSubtypeCode","originMinimumCardinality","originMaximumCardinality","destinationSubtypeCode","destinationMinimumCardinality","destinationMaximumCardinality"]},minItems:1,maxItems:1},cardinality:{type:"string",enum:["esriRelCardinalityManyToMany","esriRelCardinalityOneToMany","esriRelCardinalityOneToOne"]},attributed:{type:"boolean"},composite:{type:"boolean"}},required:["id","name","backwardPathLabel","originLayerId","originPrimaryKey","forwardPathLabel","destinationLayerId","originForeignKey","relationshipTableId","destinationPrimaryKey","destinationForeignKey","rules","cardinality","attributed","composite"]},minItems:1,maxItems:1},enableZDefaults:{type:"boolean"},isLocationTrackingService:{type:"boolean"},isLocationTrackingView:{type:"boolean"},zDefault:{type:"number"}},required:["serviceDescription","hasVersionedData","supportsDisconnectedEditing","supportsReturnDeleteResults","maxRecordCount","supportedQueryFormats","supportsRelationshipsResource","capabilities","description","copyrightText","advancedEditingCapabilities","spatialReference","initialExtent","fullExtent","allowGeometryUpdates","units","syncEnabled","validationSystemLayers","extractChangesCapabilities","syncCapabilities","editorTrackingInfo","layers","tables","relationships","isLocationTrackingService","isLocationTrackingView"],title:"IFeatureServiceDefinition"},"Record<string,boolean>":{type:"object",additionalProperties:{type:"boolean"},title:"Record<string,boolean>"},ITable:{type:"object",properties:{name:{type:"string",description:"Table name"},capabilities:{type:"string",description:"A comma-separated string listing which editing operations are allowed on an editable feature service. Available operations include: 'Create', 'Delete', 'Query', 'Update', and 'Editing'."},definitionEditor:{$ref:"#/definitions/IDefinitionEditor",description:"Object indicating the definitionEditor used as a layer's interactive filter."},id:{type:"number",description:"Unique identifier for the table."},itemId:{type:"string",description:"Unique string value indicating an item registered in ArcGIS Online or your organization's portal."},layerDefinition:{$ref:"#/definitions/ILayerDefinition",description:"A layerDefinition object defining a definition expression for the table."},popupInfo:{$ref:"#/definitions/IPopupInfo",description:"An object defining the content of popup windows when you query a record and the sort option for child related records."},title:{type:"string",description:"String value for the title of the table."},url:{type:"string",description:"String value indicating the URL reference of the hosted table."}},title:"ITable"},IServiceInfo:{type:"object",properties:{adminServiceInfo:{type:"object",properties:{name:{type:"string"},type:{type:"string"},status:{type:"string"},database:{type:"object",properties:{datasource:{type:"object",properties:{name:{type:"string"}},required:["name"]}},required:["datasource"]}},required:["name","type","status","database"]},layers:{type:"array",items:{$ref:"#/definitions/Record%3Cstring%2Cunknown%3E"}}},required:["adminServiceInfo","layers"],title:"IServiceInfo"},"Record<string,unknown>":{type:"object",additionalProperties:{},title:"Record<string,unknown>"},IViewServiceSource:{type:"object",properties:{name:{type:"string"},type:{type:"string"},url:{type:"string"},serviceItemId:{type:"string"}},required:["name","type","url","serviceItemId"],title:"IViewServiceSource"},IViewServiceSources:{type:"object",properties:{currentVersion:{type:"number"},services:{type:"array",items:{$ref:"#/definitions/IViewServiceSource"}}},required:["currentVersion","services"],title:"IViewServiceSources"},IServiceNameAvailable:{type:"object",properties:{available:{type:"boolean"}},required:["available"],title:"IServiceNameAvailable"},IPictureSourced:{type:"object",properties:{url:{type:"string"},imageData:{type:"string"},contentType:{type:"string"},width:{type:"number"},height:{type:"number"},angle:{type:"number"},xoffset:{type:"number"},yoffset:{type:"number"}},title:"IPictureSourced"},IPictureFillSymbol:{type:"object",properties:{url:{type:"string"},imageData:{type:"string"},contentType:{type:"string"},width:{type:"number"},height:{type:"number"},angle:{type:"number"},xoffset:{type:"number"},yoffset:{type:"number"},type:{type:"string",const:"esriPFS"},style:{type:"string"},outline:{$ref:"#/definitions/ISimpleLineSymbol"},xscale:{type:"number"},yscale:{type:"number"}},required:["type"],title:"IPictureFillSymbol"},IPictureMarkerSymbol:{type:"object",properties:{url:{type:"string"},imageData:{type:"string"},contentType:{type:"string"},width:{type:"number"},height:{type:"number"},angle:{type:"number"},xoffset:{type:"number"},yoffset:{type:"number"},type:{type:"string",const:"esriPMS"},style:{type:"string"}},required:["type"],title:"IPictureMarkerSymbol"},ITextSymbol:{type:"object",properties:{type:{type:"string",const:"esriTS"},style:{type:"string"},angle:{type:"number"},xoffset:{type:"number"},yoffset:{type:"number"},color:{$ref:"#/definitions/Color"},backgroundColor:{$ref:"#/definitions/Color"},borderLineSize:{type:"number"},borderLineColor:{$ref:"#/definitions/Color"},haloSize:{type:"number"},haloColor:{$ref:"#/definitions/Color"},verticalAlignment:{type:"string",enum:["baseline","bottom","middle","top"]},horizontalAlignment:{type:"string",enum:["center","justify","left","right"]},rightToLeft:{type:"boolean"},kerning:{type:"boolean"},font:{$ref:"#/definitions/IFont"},text:{type:"string",description:"Only applicable when specified as a client-side graphic."}},required:["type"],title:"ITextSymbol"},IUser:{type:"object",properties:{username:{type:"string"},fullName:{type:"string"},availableCredits:{type:"number"},assignedCredits:{type:"number"},firstName:{type:"string"},lastName:{type:"string"},preferredView:{},description:{type:"string"},email:{type:"string"},idpUsername:{type:"string"},favGroupId:{type:"string"},lastLogin:{type:"number"},mfaEnabled:{type:"boolean"},access:{type:"string"},storageUsage:{type:"number"},storageQuota:{type:"number"},orgId:{type:"string"},cOrgId:{type:"string"},role:{type:"string",enum:["org_admin","org_publisher","org_user"]},privileges:{type:"array",items:{type:"string"}},roleId:{type:"string"},level:{type:"string"},disabled:{type:"boolean"},units:{type:"string"},tags:{type:"array",items:{type:"string"}},culture:{type:"string"},region:{type:"string"},thumbnail:{type:"string"},created:{type:"number"},modified:{type:"number"},groups:{type:"array",items:{$ref:"#/definitions/IGroup"}},provider:{type:"string",enum:["arcgis","enterprise","facebook","google"]}},title:"IUser"},IPagingParams:{type:"object",properties:{start:{type:"number"},num:{type:"number"}},title:"IPagingParams"},IPagedResponse:{type:"object",properties:{start:{type:"number"},num:{type:"number"},total:{type:"number",description:"total number of object across all pages"},nextStart:{type:"number",description:"next entry index or -1 for the last page"}},required:["total","nextStart"],title:"IPagedResponse"},IWebMapBackground:{type:"object",properties:{color:{$ref:"#/definitions/Color",description:"To define the color of the background of the map (which is shown when no data is shown)."}},required:["color"],title:"IWebMapBackground"},IBookmark:{type:"object",properties:{extent:{$ref:"#/definitions/IExtent",description:"An extent object containing a spatial reference, a lower left coordinate, and an upper right coordinate defining the rectangular area of the bookmark. The spatial reference must be the same as the map spatial reference. Documentation for the envelope is in the Geometry Objects topic of the ArcGIS REST API help."},name:{type:"string",description:"A string name for the bookmark."}},required:["extent","name"],title:"IBookmark"},IMapRangeInfo:{type:"object",properties:{activeRangeName:{type:"string",description:"Active range ID that slider/picker acts upon."},currentRangeExtent:{type:"array",items:{type:"number"},description:"Current range for the active range."},fullRangeExtent:{type:"array",items:{type:"number"},description:"Full range extent for the active range to be presented in the UI."}},title:"IMapRangeInfo"},IMapLocation:{type:"object",properties:{centerPoint:{$ref:"#/definitions/IPoint",description:"The center of the map specified using X/Y coordinates."},spatialReference:{$ref:"#/definitions/ISpatialReference",description:"Well-known ID (WKID) or well-known text (WKT)."}},required:["centerPoint","spatialReference"],title:"IMapLocation"},IVisibleLayer:{type:"object",properties:{featureVisibility:{type:"array",items:{type:"array",items:{}},description:"An array of arrays."},id:{type:"number",description:"The id of the layer as listed on the operational layer."},subLayerIds:{type:"array",items:{type:"number"},description:"An array of integers."}},title:"IVisibleLayer"},IVisiblePopup:{type:"object",properties:{anchorPoint:{$ref:"#/definitions/IPoint",description:"Object with spatialReference, x, and y."},featureId:{type:"number",description:"An integer specifying the feature's id."},layerId:{type:"string",description:"A string specifying the layer id."},subLayerId:{type:"number",description:"An integer specifying the sublayer id."}},title:"IVisiblePopup"},ISlide:{type:"object",properties:{baseMap:{$ref:"#/definitions/IBaseMap",description:"Basemaps give the web map a geographic context."},extent:{$ref:"#/definitions/IExtent",description:"The standard Esri extent object with spatialReference, xmax, xmin, ymax and ymin."},hidden:{type:"boolean",description:"Indicates whether the slide should be hidden within the presentation."},mapLocation:{$ref:"#/definitions/IMapLocation",description:"An object with a centerPoint object and sometimes a resolution."},timeExtent:{type:"array",items:{type:"number"},minItems:2,maxItems:2,description:"An array of two numbers. The first one indicates start time and the second one indicates end time."},title:{type:"string",description:"Title including text and formatting for each slide."},visibleLayers:{$ref:"#/definitions/IVisibleLayer",description:"An array of objects used to indicate layer visibility."},visiblePopup:{$ref:"#/definitions/IVisiblePopup",description:"A presentation slide's visiblePopup which contains anchorPoint, featureId, layerId, and subLayerId."}},title:"ISlide"},IBaseMap:{type:"object",properties:{baseMapLayers:{type:"array",items:{$ref:"#/definitions/ILayer"},description:"An array of baseMapLayer objects defining the basemaps used in the web map."},title:{type:"string",description:"Required string title for the basemap that can be used in a table of contents. It takes the title of the first baseMapLayer in the array."}},required:["baseMapLayers","title"],title:"IBaseMap"},IPresentation:{type:"object",properties:{displayTimeSlider:{type:"boolean",description:"Indicates whether to display the time slider (if accessible)."},showLegend:{type:"boolean",description:"Indicates whether to display a legend on all slides."},slideAdvancementInterval:{type:"number",description:"Number of seconds to show slide before proceeding to the next slide."},slides:{type:"array",items:{$ref:"#/definitions/ISlide"},description:"Array of slide objects."},useTimeExtentOfSlide:{type:"boolean",description:"Indicates whether to use the time extent (if applicable) of a slide."}},title:"IPresentation"},IWebmap:{type:"object",properties:{applicationProperties:{$ref:"#/definitions/IApplicationProperties",description:"Viewing and editing properties of the webmap"},authoringApp:{type:"string",description:"String value indicating the application which authored the webmap"},authoringAppVersion:{type:"string",description:"String value indicating the authoring App's version number"},background:{$ref:"#/definitions/IWebMapBackground",description:"Defines the appearance for the background of the map."},baseMap:{$ref:"#/definitions/IBaseMap",description:"[Required] Basemaps give the web map a geographic context"},bookmarks:{type:"array",items:{$ref:"#/definitions/IBookmark"},description:"A bookmark is a saved geographic extent that allows end users to quickly navigate to a particular area of interest"},mapRangeInfo:{$ref:"#/definitions/IMapRangeInfo",description:"Map Range Information"},operationalLayers:{type:"array",items:{$ref:"#/definitions/ILayer"},description:"Operational layers contain business data which are used to make thematic maps"},presentation:{description:"A presentation consists of multiple slides. Each slide has a different title, extent, basemap, layers etc"},spatialReference:{$ref:"#/definitions/ISpatialReference",description:"[Required] An object used to specify the spatial reference of the given geometry."},tables:{type:"array",items:{$ref:"#/definitions/ITable"},description:"Root element in the web map specifying an array of table objects. (optional)"},version:{type:"string",description:"[Required] Root element in the web map specifying a string value indicating the web map version."},widgets:{description:"The widgets object contains widgets that should be exposed to the user"}},required:["baseMap","spatialReference","version"],title:"IWebmap"},IApplicationProperties:{type:"object",properties:{editing:{anyOf:[{$ref:"#/definitions/IEditingProperties"},{type:"null"}],description:"If locationTracking is set and enabled, the Collector application will update the feature service at the defined interval with the current location of the user logged into the Collector app."},offline:{anyOf:[{$ref:"#/definitions/IOfflineInfo"},{type:"null"}],description:"Use if working with offline maps."},viewing:{anyOf:[{$ref:"#/definitions/IViewingInfo"},{type:"null"}],description:"An object containing all the viewing properties of the web map. If this is null or not defined, the client should assume a logical default."}},title:"IApplicationProperties"},IEditingProperties:{type:"object",properties:{locationTracking:{$ref:"#/definitions/ILocationTracking",description:"If locationTracking is set and enabled, the collector app will update the feature service at the defined interval with the current location of the user logged into the collector application."}},required:["locationTracking"],title:"IEditingProperties"},ILocationTracking:{type:"object",properties:{enabled:{type:"boolean",description:"A boolean value indicating whether or not location tracking is enabled on the webmap."},info:{$ref:"#/definitions/ILocationTrackingInfo",description:"An object of additional information specifying layer and update interval time."}},required:["enabled","info"],title:"ILocationTracking"},ILocationTrackingInfo:{type:"object",properties:{layerId:{description:"A string value indicating the given layer id specified in the web map."},updateInterval:{description:"A numeric value indicating the time interval used to update the feature service. Default value is 300 seconds."}},required:["layerId"],title:"ILocationTrackingInfo"},IOfflineInfo:{type:"object",properties:{editableLayers:{$ref:"#/definitions/IEditableLayers",description:"Object detailing the available offline editing options."},readonlyLayers:{$ref:"#/definitions/IReadOnlyLayers",description:"Object indicating what to do with attachments in read-only layers."}},required:["editableLayers","readonlyLayers"],title:"IOfflineInfo"},IEditableLayers:{type:"object",properties:{download:{type:"string",enum:["featuers","featuresAndAttachments","none"],description:"When editing layers, the edits are always sent to the server. This string value indicates which data is retrieved. For example, none indicates that only the schema is written since neither the features nor attachments are retrieved. For a full sync without downloading attachments, indicate features. Lastly, the default behavior is to have a full sync using featuresAndAttachments where both features and attachments are retrieved."},sync:{type:"string",enum:["syncFeaturesAndAttachments","syncFeaturesUploadAttachments","uploadFeaturesAndAttachments"],description:"This string value indicates how the data is synced."}},required:["download","sync"],title:"IEditableLayers"},IReadOnlyLayers:{type:"object",properties:{downloadAttachments:{type:"boolean",description:"Indicates whether to include attachments with the read-only data."}},required:["downloadAttachments"],title:"IReadOnlyLayers"},IViewingInfo:{type:"object",properties:{basemapGallery:{$ref:"#/definitions/IEnableable",description:"The basemap tool which will use the basemap group defined in the Portal."},measure:{$ref:"#/definitions/IEnableable",description:"Measure tool."},routing:{$ref:"#/definitions/IEnableable",description:"The route tool which will leverage the Portals defined route service."},search:{$ref:"#/definitions/ISearch",description:"An object specifying search parameters within the webmap."}},title:"IViewingInfo"},IEnableable:{type:"object",properties:{enabled:{type:"boolean"}},required:["enabled"],title:"IEnableable"},ISearch:{type:"object",properties:{enabled:{type:"boolean"},disablePlaceFinder:{description:"A boolean value indicating whether or not to disable the place finder."},hintText:{description:"A string value used to indicate the hint provided with the search dialog."},layers:{description:"An array of layer objects defining the styling, geometry, and attribute information for the features."}},required:["enabled"],title:"ISearch"},IRange:{type:"object",properties:{interactionMode:{type:"string",enum:["picker","slider"],description:"Indicates the mode in which the active range should be presented to the user. Must be one of the following values: slider, picker"},numberOfStops:{description:"This is used to generate the activeRangeValues if activeRangeValues are not specified."},stopInterval:{type:"number",description:"Interval in which stops should be generated."}},title:"IRange"},IWidget:{type:"object",properties:{range:{$ref:"#/definitions/IRange",description:"Active range."},timeSlider:{$ref:"#/definitions/ITimeSliderProperties",description:"Time animation is controlled by a configurable time slider. The time slider widget will act upon all the time aware layers in the map."}},title:"IWidget"},ITimeSliderProperties:{type:"object",properties:{currentTimeExtent:{type:"array",items:{type:"number"},description:"An optional array of numbers indicating the slider's start to end time extent."},endTime:{type:"number",description:"The optional end of the time slider. If not specified, the slider defaults to the full time extent of all time-enabled layers."},numberOfStops:{type:"number",description:"Number of stops within the timeSlider widget."},startTime:{type:"number",description:"The optional start of the time slider. If not specified, the slider defaults to the full time extent of all time-enabled layers."},thumbCount:{type:"number",description:"The default value for the thumbCount is 1."},thumbMovingRate:{type:"number",description:"Rate at which the time animation plays. Units are in milliseconds. Default is 1000."},timeStopInterval:{type:"number",description:"The interval which has been defined for the time slider."}},title:"ITimeSliderProperties"},ITimeSlider:{type:"object",properties:{properties:{$ref:"#/definitions/ITimeSliderProperties",description:"Configurable properties used within the TimeSlider widget."}},required:["properties"],title:"ITimeSlider"},IBingLayer:{type:"object",properties:{id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",enum:["BingMapsAerial","BingMapsHybrid","BingMapsRoad"],description:"String indicating the layer type."},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",description:"Deprecated, use layerType instead.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},bingKey:{type:"string",description:"String value that unlocks the use of Bing layers in a web map."},canShareBingPublic:{type:"boolean",description:"Boolean value indicating whether the Bing key can be shared to the public."},portalUrl:{type:"string",description:"A string value representing the URL to the Portal/organization Self resource. Calls should be made to this property to retrieve the Bing key. If the key is not made accessible to the public or if canShareBingPublic is false, any web maps using Bing layers will not work."}},required:["id","layerType"],title:"IBingLayer"},IImageVectorLayer:{type:"object",properties:{timeAnimation:{type:"boolean",description:"This property is applicable to layers that support time. If 'true', timeAnimation is enabled."},id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"ArcGISImageServiceVectorLayer",description:"String indicating the layer type. Value of this property must be ArcGISImageServiceVectorLayer"},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",description:"Deprecated, use layerType instead.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},definitionEditor:{description:"Stores interactive filters."},disablePopup:{description:"Boolean property indicating whether to ignore popups defined by the service item."},isReference:{type:"boolean",description:"This is applicable if used as a baseMapLayer. A boolean value indicating whether or not the baseMapLayer draws on top (true) of other layers, including operationalLayers , or below (false)."},layerDefinition:{description:"A layerDefinition object defining the attribute schema and drawing information for the layer."},mosaicRule:{description:"Specifies the mosaic rule when defining how individual images should be mosaicked."},popupInfo:{$ref:"#/definitions/IPopupInfo",description:"A popupInfo object defining the content of popup windows when you click or query a feature."},symbolTileSize:{description:"Number describing the size of the tile."}},required:["id","layerType"],title:"IImageVectorLayer"},IChildLayer:{type:"object",properties:{defaultVisibility:{description:"Default visibility of the layers in the map service."},definitionEditor:{$ref:"#/definitions/IDefinitionEditor",description:"An object that provides interactive filters."},featureSet:{$ref:"#/definitions/IFeatureSet",description:"A featureSet object containing the geometry and attributes of the features in the layer. Used with feature collections only."},field:{type:"array",items:{$ref:"#/definitions/IField"},description:"Information about each field in a layer. Used with feature collections."},id:{type:"string",description:"A string indicating the index position of the layer in the map service or feature collection."},layerDefinition:{description:"The layerDefinition object defines the attribute schema and drawing information for the layer."},layerUrl:{description:"A string URL to a service that should be used for all queries against the layer. Used with hosted tiled map services on ArcGIS Online when there is an associated feature service that allows for queries."},maxScale:{description:"Represents the maximum scale at which the layer definition will be applied."},minScale:{description:"Represents the minimum scale at which the layer definition will be applied."},nextObjectId:{description:"Iterates within a featureset. Number objectId value is incremented +1 based on last Object ID defined for the feature in a featureset. Used with feature collections."},parentLayerId:{description:"If working with nested layers, this is the numeric value indicating the layer id of the next layer (parent) directly above the current referenced layer."},popupInfo:{$ref:"#/definitions/IPopupInfo",description:"A popupInfo object defining the popup window content for the layer."},showLegend:{description:"Indicates whether to allow map authors the ability to control what layers should be shown in a client's legend."},subLayer:{description:"Array of numeric values indicating the layer index for layers nested directly under the parent layer."},subLayerIds:{description:"If the layer is a parent layer, it will have one or more sub layers included in an array."},title:{description:"A user-friendly string title for the layer that can be used in a table of contents."}},title:"IChildLayer"},IMapServiceLayer:{type:"object",properties:{timeAnimation:{type:"boolean",description:"This property is applicable to layers that support time. If 'true', timeAnimation is enabled."},id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"ArcGISMapServiceLayer",description:"String indicating the layer type."},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",description:"Deprecated, use layerType instead.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},isReference:{description:"This is applicable if used as a baseMapLayer. A boolean value indicating whether or not the baseMapLayer draws on top (true) of other layers, including operationalLayers , or below (false)."},layers:{type:"array",items:{$ref:"#/definitions/IChildLayer"},description:"An array of layer objects defining the styling, geometry, and attribute information for the features."},refreshInterval:{type:"number",description:"Refresh interval of the layer in minutes. Non-zero value indicates automatic layer refresh at the specified interval. Value of 0 indicates auto refresh is not enabled."},thematicGroup:{$ref:"#/definitions/IThematicGroup",description:"(Optional) A thematicGroup object used in ArcGISMapServiceLayer layers."},visibleLayers:{type:"array",items:{type:"number"},description:"An array of sublayer ids that should appear visible. Used with map service layers that are not tiled."}},required:["id","layerType"],title:"IMapServiceLayer"},IThematicGroup:{type:"object",properties:{fieldNames:{type:"array",items:{type:"string"},description:"An array of string values indicating all the fields used within the webmap. All other fields can be disregarded and should not display in any field selection list."},layerIds:{type:"array",items:{type:"number"},description:"A zero-based array of integers indicating the layers to be used in the webmap. NOTE: All other layers should not be added to the TOC and may or may not be visible on the map as reference layers."},name:{type:"string",description:"String property indicating the name for the thematic grouping of layers."}},title:"IThematicGroup"},IDrawingInfo:{type:"object",properties:{fixedSymbols:{description:"Only used for feature collections with a renderer. The feature's symbol is defined by the layer's renderer."},labelingInfo:{description:"An object defining the properties used for labeling the layer."},renderer:{description:"An object defined which provides the symbology for the layer."},scaleSymbols:{description:"Boolean property indicating whether symbols should stay the same size in screen units as you zoom in. A value of true means the symbols stay the same size in screen units regardless of the map scale."},showLabels:{type:"boolean",description:"Defines whether labels should be shown or not. This is only valid for sublayers."},transparency:{type:"number",description:"Number value ranging between `0` (no transparency) to `100` (completely transparent)."}},description:"Drawing info container for renderer, labeling etc.",title:"IDrawingInfo"},ITypeInfoDomain:{type:"object",properties:{type:{type:"string"}},required:["type"],title:"ITypeInfoDomain"},ITypeInfo:{type:"object",properties:{domains:{$ref:"#/definitions/Record%3Cstring%2CITypeInfoDomain%3E",description:"A comma-delimited series of domain objects for each domain in the type."},id:{type:["number","string"],description:"A unique string or numerical ID for the type."},name:{type:"string",description:"A user-friendly name for the type."},templates:{type:"array",items:{$ref:"#/definitions/ITemplate"},description:"Defined as a property of the layer definition when there are no types defined; otherwise, templates are defined as properties of the types."}},title:"ITypeInfo"},"Record<string,ITypeInfoDomain>":{type:"object",additionalProperties:{$ref:"#/definitions/ITypeInfoDomain"},title:"Record<string,ITypeInfoDomain>"},IOpenStreetMapLayer:{type:"object",properties:{id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"OpenStreetMap",description:"String indicating the layer type. Value of this property must be OpenStreetMap"},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",const:"OpenStreetMap",description:"Deprecated, use layerType instead.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."}},required:["id","layerType"],title:"IOpenStreetMapLayer"},IExclusionArea:{type:"object",properties:{geometry:{$ref:"#/definitions/IGeometry",description:"The geometry defining the area where no data will be fetched. Only extent is supported."},maxScale:{type:"number",description:"The zoom level where the exclusion ends."},maxZoom:{type:"number",description:"The zoom level where the exclusion ends."},minScale:{type:"number",description:"The zoom level where the exclusion starts."},minZoom:{type:"number",description:"The zoom level where the exclusion starts."}},title:"IExclusionArea"},ITiledMapServiceLayer:{type:"object",properties:{id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"ArcGISTiledMapServiceLayer",description:"String indicating the layer type."},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",description:"Deprecated, use layerType instead.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},displayLevels:{anyOf:[{type:"array",items:{type:"number"}},{type:"number"}],description:"NOTE: Applicable if used as a baseMapLayer. Integer value(s) indicating the display levels of the basemap layer. Only applicable for TiledMapService layers. All tiled map service layers should share the same tiling scheme. This property cannot be set via the Map Viewer UI."},exclusionAreas:{type:"array",items:{$ref:"#/definitions/IExclusionArea"},description:"NOTE: Applicable if used as a baseMapLayer. An array of exclusionArea objects defining the layer exclusions."},isReference:{description:"This property is applicable if used as a baseMapLayer. A boolean value indicating whether or not the baseMapLayer draws on top (true) of other layers, including operationalLayers , or below (false)."},layers:{type:"array",items:{$ref:"#/definitions/IChildLayer"},description:"An array of layer objects defining a URL for queries and the popup window content."},refreshInterval:{type:"number",description:"Refresh interval of the layer in minutes. Non-zero value indicates automatic layer refresh at the specified interval. Value of 0 indicates auto refresh is not enabled."}},required:["id","layerType"],title:"ITiledMapServiceLayer"},IVectorTileLayer:{type:"object",properties:{id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"VectorTileLayer",description:"String indicating the layer type."},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",const:"VectorTileLayer",description:"Deprecated. User layerType instead."},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},styleUrl:{type:"string",description:"A url to a JSON file containing the stylesheet information used to render the layer. You may also pass an object containing the stylesheet information identical to the JSON file."}},required:["id","layerType"],title:"IVectorTileLayer"},ILod:{type:"object",properties:{level:{type:"number",description:"ID for each level."},levelValue:{type:"string",description:"String to be used when constructing URL to access a tile from this LOD."},resolution:{type:"number",description:"Resolution in map units of each pixel in a tile for each level."},scale:{type:"number",description:"Scale for each level."}},title:"ILod"},ITileInfo:{type:"object",properties:{cols:{description:"Requested tile's column."},compressionQuality:{description:"Compression quality of the tile."},dpi:{description:"The dpi of the tiling scheme."},format:{type:"string",enum:["bmp","emf","gif","jpg","lerc","mixed","pdf","png","png8","png24","png32","ps","svg","svgz"],description:"Image format of the cached tiles."},lods:{type:"array",items:{$ref:"#/definitions/ILod"},description:"An array of levels of detail that define the tiling scheme."},origin:{$ref:"#/definitions/IPoint",description:"The tiling scheme origin."},rows:{description:"Requested tile's row."},spatialReference:{$ref:"#/definitions/ISpatialReference",description:"The spatial reference of the tiling schema."}},title:"ITileInfo"},IWebMapTileServiceInfo:{type:"object",properties:{customLayerParameters:{description:"A sequence of parameters used to append different custom parameters to a WMTS tile request. These parameters are applied to GetTile. The customLayerParameters property takes precedence if customParameters is also present."},customParameters:{description:"A sequence of parameters used to append custom parameters to all WMTS requests. These parameters are applied to GetCapabilities and GetTile. If used with the customLayerParameters property, customParameters will not take precedence."},layerIdentifier:{type:"string",description:"Identifier for the specific layer used in the WMTS service. Required input by the user."},tileMatrixSet:{description:"Tiling schema, set by the WMTS service."},url:{type:"string",description:"URL to the WMTS web service. Required input by the user."}},required:["layerIdentifier","url"],title:"IWebMapTileServiceInfo"},IWebTiledLayer:{type:"object",properties:{id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"WebTiledLayer",description:"String indicating the layer type. Value of this property must be WebTiledLayer"},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",const:"WebTiledLayer",description:"Deprecated, use layerType instead.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},copyright:{description:"Attribution to the Web Tiled Layer provider. It is displayed in the attribution on the web map. Input required by the user when the layer is added to the web map."},fullExtent:{$ref:"#/definitions/IExtent",description:"An extent object representing the full extent envelope for the layer."},isReference:{description:"This is applicable if used as a baseMapLayer. A boolean value indicating whether or not the baseMapLayer draws on top (true) of other layers, including operationalLayers , or below (false)."},refreshInterval:{description:"Refresh interval of the layer in minutes. Non-zero value indicates automatic layer refresh at the specified interval. Value of 0 indicates auto refresh is not enabled."},subDomains:{description:"If subdomains are detected, they must be specified. The map viewer detects if the Web Tiled Layer has subdomains by parsing the templateURL value for {subDomain}."},templateUrl:{description:"URL to the Web Tiled Layer. Input required by the user when the layer is added to the web map. The template URL contains a parameterized URL. The URL can contain the following templated parameters: 'level', 'col', 'row', and 'subDomain'."},tileInfo:{$ref:"#/definitions/ITileInfo",description:"Contains the spatial reference and the tiling scheme of the layer. Typically retrieved from a WMTS OGC Web Service. If missing the layer must be in the WGS 1984 Web Mercator (Auxiliary Sphere) tiling scheme."},wmtsInfo:{$ref:"#/definitions/IWebMapTileServiceInfo",description:"Object containing information about the chosen WMTS service layer and tiling schema."}},required:["id","layerType"],title:"IWebTiledLayer"},ICsvLayer:{type:"object",properties:{id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"CSV",description:"String indicating the layer type."},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",const:"CSV",description:"Deprecated, use layerType instead."},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},columnDelimiter:{type:"string",enum:[" ",",",";"," ","|"],description:"A string defining the character used to separate columns in a CSV file."},layerDefinition:{$ref:"#/definitions/ILayerDefinition",description:"A layerDefinition object defining the attribute schema and drawing information for the layer."},locationInfo:{description:"A locationInfo object defining how location information will be retrieved from a CSV file."},popupInfo:{$ref:"#/definitions/IPopupInfo",description:"A popupInfo object defining the content of popup windows when you click or query a feature."},refreshInterval:{type:"number",description:"Refresh interval of the layer in minutes. Non-zero value indicates automatic layer refresh at the specified interval. Value of 0 indicates auto refresh is not enabled."}},required:["id","layerType"],title:"ICsvLayer"},IGeoRssLayer:{type:"object",properties:{id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"GeoRSS",description:"String indicating the layer type."},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",const:"GeoRSS",description:"Deprecated, please use layerType.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},lineSymbol:{$ref:"#/definitions/ISimpleLineSymbol",description:"Defined by the GeoRSS to JSON request service. If the GeoRSS feed does not have lines, this property is not added to the layer JSON."},pointSymbol:{$ref:"#/definitions/IPictureMarkerSymbol",description:"Defined by the GeoRSS to JSON request service. If the GeoRSS feed does not have points, this property is not added to the layer JSON."},polygonSymbol:{$ref:"#/definitions/ISimpleFillSymbol",description:"Defined by the GeoRSS to JSON request service. If the GeoRSS feed does not have polygons, this property is not added to the layer JSON."},refreshInterval:{type:"number",description:"Refresh interval of the layer in minutes. Non-zero value indicates automatic layer refresh at the specified interval. Value of 0 indicates auto refresh is not enabled."}},required:["id","layerType"],title:"IGeoRssLayer"},IKmlLayer:{type:"object",properties:{id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"KML",description:"String indicating the layer type."},maxScale:{description:"A number representing the maximum scale at which the layer will be visible. The number is the scale's denominator."},minScale:{description:"A number representing the minimum scale at which the layer will be visible. The number is the scale's denominator."},opacity:{description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{description:"Indicates whether to allow map authors the ability to control what layers should be shown in a client's legend."},title:{description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",const:"KML",description:"Deprecated, use layerType instead.",deprecated:"Use layerType instead."},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},refreshInterval:{description:"Refresh interval of the layer in minutes. Non-zero value indicates automatic layer refresh at the specified interval. Value of 0 indicates auto refresh is not enabled."},visibleFolders:{type:"array",items:{type:"number"},description:"Array of numeric IDs of folders that will be made visible."}},required:["id","layerType"],title:"IKmlLayer"},IArcGisStreamLayer:{type:"object",properties:{id:{description:"A unique identifying string for the layer."},name:{type:"string",description:"Layer name"},itemId:{type:"string",description:"Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal."},layerType:{type:"string",const:"ArcGISStreamLayer",description:"String indicating the layer type."},maxScale:{type:"number",description:"Integer property used to determine the maximum scale at which the layer is displayed."},minScale:{type:"number",description:"Integer property used to determine the minimum scale at which the layer is displayed."},opacity:{type:"number",description:"The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency."},showLegend:{type:"boolean",description:"Boolean property indicating whether to display in the legend."},title:{type:"string",description:"A user-friendly string title for the layer that can be used in a table of contents."},type:{type:"string",description:"Deprecated, use layerType instead.",deprecated:!0},visibility:{type:"boolean",description:"Boolean property determining whether the layer is initially visible in the web map."},url:{type:"string",description:"The URL to the layer. Not applicable to all layer types."},definitionEditor:{$ref:"#/definitions/IDefinitionEditor",description:"Stores interactive filters."},disablePopup:{type:"boolean",description:"Indicates whether to ignore popups defined by the service item."},layerDefinition:{$ref:"#/definitions/ILayerDefinition",description:"A layerDefinition object defining the attribute schema and drawing information for the layer."},popupInfo:{$ref:"#/definitions/IPopupInfo",description:"A popupInfo object defining the content of pop-up windows when you click or query a feature."}},required:["id","layerType"],title:"IArcGisStreamLayer"}},$ref:"#/definitions/WebChart"};function Sx(t){let e=t.lastIndexOf("/");return e!==-1?t.slice(e+1):t}async function wx(t){let e=(await qt(gt(document.documentElement).t9nLocale,$t("./assets/common/t9n"),"messages.")).errorStrings;return t.map(r=>{let a=r,i=r.dataPath.startsWith(".")?r.dataPath.substring(1):r.dataPath;switch(r.keyword){case Or.Required:a={...r,message:Re(e.errors.requiredProperty,{dataPath:i,missingProperty:r.params.missingProperty})};break;case Or.MinLength:a={...r,message:Re(e.errors.minLength,{dataPath:i,limit:r.params.limit.toString()})};break;case Or.MinItems:a={...r,message:Re(e.errors.minItems,{dataPath:i,limit:r.params.limit.toString()})};break;case Or.MaxItems:a={...r,message:Re(e.errors.maxItems,{dataPath:i,limit:r.params.limit.toString()})};break;case Or.Pattern:r.params.pattern==="\\w+"&&(a={...r,message:Re(e.errors.whiteSpacePattern,{dataPath:i}),params:{}});break;case Or.AdditionalProperties:a={...r,message:Re(e.errors.additionalProperty,{dataPath:i,additionalProperty:r.params.additionalProperty})};break;case Or.Enum:a={...r,message:Re(e.errors.enumValues,{dataPath:i,allowedValues:r.params.allowedValues.join(", ")})};break;case Or.AnyOf:{let n=[];r.schemaPath==="#/properties/legend/anyOf"&&(n=Ti.definitions.WebChart.properties.legend.anyOf.map(s=>Sx(s.$ref))),a={...r,params:n,message:Re(e.errors.anyOfValues,{dataPath:i,schemaOptions:n.join(", ")})};break}}return a})}function un(t,e){return{...t,$ref:`#/definitions/${e}`}}async function xx(t){let e,r=(await qt(gt(document.documentElement).t9nLocale,$t("./assets/common/t9n"),"messages.")).errorStrings,a=re(t);try{await a.load()}catch{let i=a?.url??"",n=st(a)?.portalItem?.id??"";e={keyword:Ye.LayerLoadFailure,message:Re(r.errors.layerLoadFailure,{url:i,portalItemId:n}),params:{url:i,portalItemId:n}}}return e}function Cx(){let t=new lp.default({allErrors:!0});return async e=>{let r=[],a=K(e?.series),i=Ti;switch(a){case g.GaugeSeries:i=un(Ti,"WebGaugeChart");break;case g.BoxPlotSeries:i=un(Ti,"WebBoxPlot");break;case g.RadarSeries:i=un(Ti,"WebRadarChart");break;default:i=un(Ti,"WebChart");break}let n=t.compile(i);return n(e),n.errors!==null&&n.errors!==void 0&&(r=await wx(n.errors)),r}}var Tx=Cx();async function Fx(t){let{seriesConfigs:e,queryObject:r,allowUsingObjectIdStat:a}=t,i=[],n=r?Ct(r):void 0,s=(await qt(gt(document.documentElement).t9nLocale,$t("./assets/common/t9n"),"messages.")).errorStrings;for(let o=0;o<e.length;o+=1){let l=e[o].query?.outStatistics;if(l!==void 0)for(let d=0;d<l.length;d+=1){let u=l[d],c=$p(u.onStatisticField,n);if(c&&!(c.type===ce.OID&&a||Li(c))&&u.statisticType!==j.Count){let f=`series[${o}].query.outStatistics[${d}]`;i.push({keyword:Ap.NonNumericAggregation,message:Re(s.errors.nonNumericAggregation,{dataPath:f}),dataPath:f,params:{fieldName:u.onStatisticField,fieldType:c.type,aggregationRequested:u.statisticType}})}}}return i}async function Ix(t){let e=[],r=(await qt(gt(document.documentElement).t9nLocale,$t("./assets/common/t9n"),"messages.")).errorStrings;if(t!==void 0&&t.series.length>1){let a=new Set,i=0;t.series.forEach((n,s)=>{if(a.add(n.id),a.size===i){let o=`series[${s}].id`;e.push({keyword:Ap.DuplicateSeriesID,message:Re(r.errors.duplicateSeriesID,{dataPath:o,seriesID:n.id,seriesName:n.name}),dataPath:o,params:{seriesId:n.id,seriesName:n.name}})}else i+=1})}return e}function Ox(t){let e=new Set,r=hr(t);if(r){let a=K(t.series),i=X(t.series);a===g.GaugeSeries&&!bo(t)||i===x.PieFromFields||i===x.BarAndLineFromFields||i===x.BoxPlotMonoField||i===x.BoxPlotMultiFields||i===x.BoxPlotMonoFieldAndSplitBy||i===x.BoxPlotMultiFieldsAndSplitBy||e.add(r.x);let n=a===g.ScatterSeries||a===g.BoxPlotSeries||a===g.HeatSeries||i===x.BarAndLineNoAggregation||i===x.BarAndLineSplitByNoAggregation||i===x.PieNoAggregation,s=[Bi,ct,ub,Vt,cb,me.outStatistics.outStatisticFieldName??""],o=[];at(t)?o=On({showMean:t.showMean,seriesConfig:t.series}):o=t.series.map(d=>"y"in d?d.y:void 0).filter(d=>d!==void 0).flat(),n?o.forEach(d=>e.add(d)):s.push(...o),t.series.forEach(d=>{let{query:u}=d;u&&(dr(u.where)||e.add(rt(u.where)),u.groupByFieldsForStatistics&&u.groupByFieldsForStatistics.forEach(c=>e.add(c)),u.outStatistics&&u.outStatistics.forEach(c=>e.add(c.onStatisticField)))});let l=i===x.BarAndLineNoAggregation||i===x.BarAndLineSplitByNoAggregation||i===x.PieNoAggregation;if(t.orderOptions?.orderByFields&&l&&t.orderOptions.orderByFields.forEach(d=>{let u=Lv(d).fieldToSort;e.add(u)}),a===g.GaugeSeries&&t.axes?.[0]!==void 0){let d=t.axes?.[0];d&&"minimumFromField"in d&&typeof d.minimumFromField=="string"&&e.add(d.minimumFromField),d&&"maximumFromField"in d&&typeof d.maximumFromField=="string"&&e.add(d.maximumFromField)}s.forEach(d=>{e.delete(d)})}return Array.from(e.values()).filter(a=>!Ue(a))}async function Ax(t,e){let r,a=(await qt(gt(document.documentElement).t9nLocale,$t("./assets/common/t9n"),"messages.")).errorStrings,i=Ct(e),n=Ox(t).filter(s=>!$p(s,i));if(n.length>0){let s=n.join(", ");r={keyword:Ye.LayerFieldsNotFound,message:Re(a.errors.layerFieldsNotFound,{fieldNames:s}),params:s}}return r}async function Px(t){let{input:e,queryObject:r,allowUsingObjectIdStat:a}=t,i=[];if(r!==void 0){let n=await Fx({seriesConfigs:e.series,queryObject:r,allowUsingObjectIdStat:a});i=i.concat(n)}return i=i.concat(await Ix(e)),i}async function Ex(t,e){let r=[];if(t!==void 0){let a=await xx(t);if(a!==void 0)r=r.concat(a);else if(e!==void 0){let i=await Ax(e,t);i!==void 0&&(r=r.concat(i))}}return r}async function R1(t){let{input:e,queryObject:r,allowUsingObjectIdStat:a}=t,i;if(H0(e?.version).versionStatus===yr.Newer)i={valid:!0,schemaErrors:[],customErrors:[],warnings:[]};else{let n=await Tx(e),s=[],o=[];e!==void 0&&n.length===0&&(o=await Ex(r,e),o.length===0&&(s=await Px({input:e,queryObject:r,allowUsingObjectIdStat:a}))),i={valid:n.length===0&&s.length===0&&o.length===0,schemaErrors:n,customErrors:o,warnings:s}}return i}function k1(t){let e=K(t?.series),r=!1;switch(e){case g.HistogramSeries:case g.GaugeSeries:{r=(t?.series?.[0]?.x?.trim()?.length??0)===0;break}case g.ScatterSeries:{let a=t?.series;r=(a?.[0]?.x?.length??0)===0||(a?.[0]?.y?.length??0)===0;break}case g.PieSeries:{let a=t?.series;X(a)===x.PieFromFields?r=(a?.[0]?.query?.outStatistics?.length??0)===0:r=(a?.[0]?.x?.length??0)===0||a?.[0]?.x===ct;break}case g.BoxPlotSeries:{let a=t?.series;r=[a?.[0]?.y].flat().length===0||a?.[0]?.y==="";break}case g.ComboLineAndBarSeries:case g.RadarSeries:case g.BarSeries:case g.LineSeries:{let a=t?.series;X(a)===x.BarAndLineFromFields?r=(a?.[0]?.query?.outStatistics?.length??0)===0:r=(a?.[0]?.x?.trim()?.length??0)===0;break}case g.HeatSeries:{let a=t?.series,i=Ue(a?.[0]?.x)||Ue(a?.[0]?.y),n=t!==void 0&&Vp(t)?!1:a?.[0]?.xTemporalBinning===void 0;r=i||n;break}}return r}async function Qs(t){let{queryObject:e,queryConfig:r,category:a,splitByField:i,chartLimits:n,abortKey:s}=t,o=i!==void 0,l=a!==Bi?[a]:[];o&&l.push(i);let d=re(e),{idField:u,isTraditionalTypeOID:c}=zt(d),f=c?u:"*",p={...r,groupByFieldsForStatistics:Array.from(new Set(l)),outStatistics:[{statisticType:j.Count,onStatisticField:f,outStatisticFieldName:`${j.Count}_OBJECTID`}],orderByFields:void 0,num:n?.maxBarThreePlusSeriesCountTotal},h=await Bt({queryObject:e,featureCount:1,queryConfig:p,abortKey:s});return Array.from(new Set(h.map(m=>m.attributes[o?i:a]))).sort((m,y)=>typeof m=="string"&&typeof y=="string"?m.localeCompare(y):Number(m)-Number(y))}var ip=[{unit:G.Second,threshold:6e4,unitMs:1e3,preferredIntervalSize:[1,2,3,5,6,10,12,15,20,30,60]},{unit:G.Minute,threshold:36e5,unitMs:1e3*60,preferredIntervalSize:[1,2,3,5,6,10,12,15,20,30,60]},{unit:G.Hour,threshold:864e5,unitMs:1e3*60*60,preferredIntervalSize:[1,2,3,4,6,8,12,24]},{unit:G.Day,threshold:6048e5,unitMs:1e3*60*60*24,preferredIntervalSize:[1,2,3,4,5,6,7]},{unit:G.Week,threshold:24192e5,unitMs:1e3*60*60*24*7,preferredIntervalSize:[1,2,3,4]},{unit:G.Month,threshold:290304e5,unitMs:1e3*60*60*24*7*4,preferredIntervalSize:[1,2,3,4,6,12]},{unit:G.Year,threshold:Number.MAX_SAFE_INTEGER,unitMs:1e3*60*60*24*7*4*12,preferredIntervalSize:[1,2,4,5,10,25,50,100]}],Lx="{ groupByFieldsForStatistics } WHEN { dateField }>='{ startDate }' AND { dateField }{ endDateOperand }'{ endDate }' THEN '{ y }|{ binIndex}'";function Nx(t,e){let r=!0;if(e?.trim()){let a={};Object.entries(t).forEach(([s,o])=>{a[s.toUpperCase()]=o});let i=e.trim(),n=i.match(/^(\w+)\s+IS\s+(NOT\s+)?NULL$/iu);if(n){let[s,o,l]=n,d=a[o.toUpperCase()],u=d==null;r=l?!u:u}else{let s=i.match(/^(\w+)\s*(=|!=|<>|>|<|>=|<=)\s*(.+)$/iu);if(s){let[o,l,d,u]=s,c=l.toUpperCase();if(!(c in a))r=!1;else{let f=a[c],p=u.trim().replace(/^['"]|['"]$/gu,"");switch(typeof f=="number"?p=Number(p):typeof f=="boolean"&&(p=p.toLowerCase()==="true"),d){case"=":r=f===p;break;case"!=":case"<>":r=f!==p;break;case">":r=f>p;break;case"<":r=f<p;break;case">=":r=f>=p;break;case"<=":r=f<=p;break;default:r=!0}}}}}return r}function Dx(t){let{features:e,aggregationType:r,onField:a}=t,i;if(!a)r==="count"&&(i=e.length);else switch(r){case"count":{a==="*"?i=e.length:i=e.filter(n=>n[a]!==null&&n[a]!==void 0).length;break}case"sum":{i=e.reduce((n,s)=>{let o=s[a];return n+(typeof o=="number"?o:0)},0);break}case"avg":{let n=0,s=0;e.forEach(o=>{let l=o[a];typeof l=="number"&&(n+=l,s++)}),i=s>0?n/s:0;break}case"min":{let n=e.map(s=>s[a]).filter(s=>typeof s=="number"&&s!==null&&s!==void 0);i=n.length>0?Math.min(...n):void 0;break}case"max":{let n=e.map(s=>s[a]).filter(s=>typeof s=="number"&&s!==null&&s!==void 0);i=n.length>0?Math.max(...n):void 0;break}case"percentile-continuous":{let n=[...e.map(o=>o[a]).filter(o=>typeof o=="number"&&o!==null&&o!==void 0)].sort((o,l)=>o-l),s=Math.floor(n.length/2);i=n.length%2!==0?n[s]:(n[s-1]+n[s])/2;break}}return i}function ap(t,e){let r;return t==null&&e?r={groupKey:A.nullValue,display:A.nullValue,original:null}:r={groupKey:t,display:t,original:t},r}async function Bx(t){let{layer:e,geometry:r,abortKey:a}=t;e.loaded||await e.load();let i=await e.generateRasterInfo(e.rasterFunction),n=Mi(r)??e.fullExtent,s=i.attributeTable;return n instanceof np&&n.equals(e.fullExtent)||(s=await Qg(e,{geometry:n},{signal:a!==void 0?Er.get(a)?.signal:void 0})),s}async function Mx(t){let{chartConfig:e,queryConfig:r,queryObject:a,abortKey:i}=t,n;if(a===void 0)throw new Error("QueryObject is undefined!");let s=re(a);if(!Xe(s))throw new Ke(Ye.LayerNotSupported);let o=await Bx({layer:s,geometry:r.geometry,abortKey:i}),l=o?.features;if(!o||!l)n={valid:!1,invalidType:ae.BadData};else{let d=e.series;if(!d||d.length===0||l.length===0)n={valid:!0};else{let u=r.groupByFieldsForStatistics?.[0]??"",c=d.some(h=>h.query?.fetchNullValues),f=new Map;for(let h of l){let{groupKey:m}=ap(h.attributes[u],c);m===A.nullValue&&!c||(f.has(m)||f.set(m,[]),f.get(m).push(h.attributes))}let p=[];f.forEach(h=>{let m={},y=h[0][u],{display:b,original:v}=ap(y,c);m[u]=b,m[A.xAxisField]=b,m[A.originalCategoryValue]=v,d.forEach(S=>{let C=S.query?.outStatistics?.[0];if(!C){let{name:R}=S;m[R]=h[0][R];return}let F=h,O=S.query?.where;O&&(F=h.filter(R=>Nx(R,O)));let N=C.statisticType,E=C.onStatisticField,P=C.outStatisticFieldName;m[P]=Dx({features:F,aggregationType:N,onField:E})}),p.push(m)}),n={valid:!0,data:{dataItems:p}}}}return n}async function j1(t){let{layer:e,category:r,splitByField:a}=t,i=(await e.generateRasterInfo(e.rasterFunction))?.attributeTable?.features,n=a!==void 0;return Array.from(new Set(i?.map(s=>s.attributes[n?a:r]))).sort((s,o)=>typeof s=="string"&&typeof o=="string"?s.localeCompare(o):Number(s)-Number(o))}var $x=[...Nn,"ar-u-nu-latn","en-AU","en-GB","es-ES","es-MX","de-CH","de-DE","de-AT","fr-CA","it-CH","it-IT"];function W1(t){let{t9nLocale:e}=gt(t??document.documentElement),r=lf(t??document.documentElement),a=No(t??document.documentElement)==="rtl";return{locale:e,formatLocale:r,rtl:a}}function V1(t){let e;return t==="unknown"?e="UTC":t!==void 0&&t!=="system"&&(e=t),e}function _1(t,e){let r={year:"numeric",month:"2-digit",day:"2-digit",timeZone:e};return new Intl.DateTimeFormat("en-CA",r).format(t)}function z1(t,e){let r={hour:"2-digit",minute:"2-digit",hour12:!1,timeZone:e};return new Intl.DateTimeFormat("en-US",r).format(t)}function U1(t,e){let[,r,,,,a]=1111.1.toLocaleString(e),i=t.replace(r,"").replace(a,".");return Number.parseFloat(i)}function qx(t){let e=Array.from(Nn);return $x.includes(t)&&!e.includes(t)}function lf(t){let{lang:e,t9nLocale:r}=gt(t);return qx(e)?e:r}return{a:ie,b:cr,c:ct,d:Vt,e:ub,f:cb,g:sr,h:jc,i:pb,j:Yt,k:ST,l:tt,m:wT,n:or,o:Yr,p:xT,q:CT,r:wb,s:xb,t:TT,u:se,v:me,w:FT,x:pt,y:Fb,z:IT,A:OT,B:mn,C:Bi,D:ne,E:AT,F:Ib,G:PT,H:ET,I:LT,J:NT,K:DT,L:BT,M:MT,N:Dt,O:cp,P:$T,Q:wn,R:ge,S:pp,T:de,U:la,V:Ab,W:qT,X:Zs,Y:RT,Z:kT,_:Br,$:on,aa:pr,ba:jT,ca:Pb,da:Eb,ea:Lb,fa:WT,ga:Nb,ha:Db,ia:ei,ja:Mb,ka:qb,la:VT,ma:Rb,na:_T,oa:zT,pa:kb,qa:jb,ra:UT,sa:HT,ta:ra,ua:GT,va:QT,wa:ZT,xa:KT,ya:JT,za:YT,Aa:XT,Ba:eF,Ca:Wb,Da:Vb,Ea:_b,Fa:tF,Ga:xn,Ha:rF,Ia:iF,Ja:zb,Ka:aF,La:Ub,Ma:Hb,Na:Gb,Oa:nF,Pa:sF,Qa:A,Ra:oF,Sa:lF,Ta:dF,Ua:uF,Va:cF,Wa:pF,Xa:Zb,Ya:fF,Za:Oi,_a:ia,$a:Jb,ab:fp,bb:tv,cb:Wc,db:hF,eb:nv,fb:mF,gb:yF,hb:sv,ib:gF,jb:bF,kb:vF,lb:SF,mb:wF,nb:uv,ob:gv,pb:xF,qb:CF,rb:Pi,sb:at,tb:TF,ub:FF,vb:Js,wb:Ei,xb:Cv,yb:IF,zb:H,Ab:Ke,Bb:Ye,Cb:x,Db:OF,Eb:gp,Fb:_c,Gb:AF,Hb:uo,Ib:bp,Jb:Xs,Kb:PF,Lb:EF,Mb:Pv,Nb:Ue,Ob:LF,Pb:NF,Qb:DF,Rb:BF,Sb:Ev,Tb:Lv,Ub:MF,Vb:$F,Wb:qF,Xb:RF,Yb:Er,Zb:$v,_b:Xe,$b:qv,ac:gn,bc:kF,cc:Jt,dc:st,ec:na,fc:jF,gc:re,hc:WF,ic:Bt,jc:VF,kc:Zv,lc:Kv,mc:Pe,nc:Ap,oc:ae,pc:_F,qc:A0,rc:zF,sc:Np,tc:UF,uc:Mp,vc:HF,wc:GF,xc:Ct,yc:$p,zc:zt,Ac:Li,Bc:M0,Cc:QF,Dc:ZF,Ec:KF,Fc:$0,Gc:JF,Hc:Uc,Ic:k0,Jc:j0,Kc:YF,Lc:Rp,Mc:XF,Nc:V0,Oc:_0,Pc:H0,Qc:hr,Rc:e1,Sc:rt,Tc:ft,Uc:dr,Vc:X,Wc:$r,Xc:_t,Yc:J0,Zc:Hc,_c:sS,$c:t1,ad:r1,bd:i1,cd:a1,dd:n1,ed:s1,fd:o1,gd:l1,hd:d1,id:u1,jd:c1,kd:p1,ld:f1,md:h1,nd:m1,od:y1,pd:g1,qd:b1,rd:v1,sd:S1,td:w1,ud:x1,vd:C1,wd:T1,xd:F1,yd:FS,zd:Vp,Ad:I1,Bd:ho,Cd:O1,Dd:Sn,Ed:A1,Fd:P1,Gd:E1,Hd:JS,Id:L1,Jd:N1,Kd:oa,Ld:rf,Md:bo,Nd:vo,Od:sf,Pd:He,Qd:Gs,Rd:nt,Sd:lx,Td:D1,Ud:ux,Vd:ep,Wd:px,Xd:B1,Yd:mx,Zd:yx,_d:rp,$d:M1,ae:$1,be:q1,ce:R1,de:k1,ee:Qs,fe:j1,ge:W1,he:V1,ie:_1,je:z1,ke:U1,le:lf}},"applications/Components/imageryUtils","geometry/Extent","geometry/support/jsonUtils","rest/support/AttributeBinsQuery","rest/support/Query","rest/support/StatisticDefinition","time/TimeExtent","layers/FeatureLayer","layers/support/CodedValueDomain","layers/support/Field","layers/support/fieldUtils","portal/Portal","renderers/support/jsonUtils","request","rest/support/FeatureSet","Graphic","symbols/support/symbolUtils","layers/support/FeatureFilter","smartMapping/statistics/histogram","smartMapping/statistics/summaryStatistics","AttributeBinsGraphic","intl","core/sql","core/promiseUtils","layers/ImageryLayer","layers/ImageryTileLayer","geometry/Point")