@arcgis/charts-components 5.2.0-next.57 → 5.2.0-next.59
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/{A6QLIVFM.js → 26UUSCOV.js} +20 -20
- package/dist/cdn/2B27HWX2.js +2 -0
- package/dist/cdn/44DVV3KE.js +2 -0
- package/dist/cdn/54M3LLQH.js +2 -0
- package/dist/cdn/5NZ537SN.js +2 -0
- package/dist/cdn/5RC76C5H.js +2 -0
- package/dist/cdn/{OEYB3NZZ.js → 5RWZRHLN.js} +1 -1
- package/dist/cdn/64CBZCW7.js +2 -0
- package/dist/cdn/{PHUJHKPW.js → 6HIK7EBX.js} +1 -1
- package/dist/cdn/6KMPIGFU.js +2 -0
- package/dist/cdn/6KTWKIGJ.js +2 -0
- package/dist/cdn/{UGOWEOTC.js → AYQ4HHL6.js} +1 -1
- package/dist/cdn/AZDPAG65.js +2 -0
- package/dist/cdn/B2XDPYOL.js +2 -0
- package/dist/cdn/{LOEMTYZB.js → B5KB7HXA.js} +1 -1
- package/dist/cdn/BFT5CL7V.js +2 -0
- package/dist/cdn/BU3IX333.js +2 -0
- package/dist/cdn/COLTSCAS.js +2 -0
- package/dist/cdn/CU6R7UXF.js +2 -0
- package/dist/cdn/{NYFHPR6N.js → DAFNQT4C.js} +1 -1
- package/dist/cdn/{OS5TUH4X.js → DDUKKQIZ.js} +1 -1
- package/dist/cdn/{FQ6B5P53.js → DG6ENZ35.js} +1 -1
- package/dist/cdn/E5G6IGUP.js +2 -0
- package/dist/cdn/EFRELYIP.js +2 -0
- package/dist/cdn/EQ2X422F.js +2 -0
- package/dist/cdn/{J64IDIEG.js → EQDTX4JX.js} +1 -1
- package/dist/cdn/FHCIXPMQ.js +3 -0
- package/dist/cdn/FJGG2VVZ.js +2 -0
- package/dist/cdn/G3MWFZDW.js +2 -0
- package/dist/cdn/GC7ISTDF.js +2 -0
- package/dist/cdn/{GVUHKCSZ.js → GJ4JGGKT.js} +1 -1
- package/dist/cdn/GPABWWGF.js +2 -0
- package/dist/cdn/{DRHDCMI3.js → GQGII3CK.js} +1 -1
- package/dist/cdn/{JXZJXDU5.js → GWNHO3MZ.js} +11 -9
- package/dist/cdn/H3CYQU3L.js +2 -0
- package/dist/cdn/{HDCSZ2BJ.js → H57XAQPI.js} +2 -2
- package/dist/cdn/HD72K7JQ.js +2 -0
- package/dist/cdn/{FJPWWKHZ.js → HSVZTTYF.js} +1 -1
- package/dist/cdn/IJYXP34M.js +2 -0
- package/dist/cdn/IKSW6TU5.js +2 -0
- package/dist/cdn/{BGTNSGMQ.js → INUVRMMG.js} +1 -1
- package/dist/cdn/{6Z7SZ44K.js → IOE5YG7Q.js} +1 -1
- package/dist/cdn/IPMCTC6B.js +2 -0
- package/dist/cdn/IW7AZIV6.js +2 -0
- package/dist/cdn/{4B5XCGIW.js → J6M4AA5V.js} +1 -1
- package/dist/cdn/JWWSIFDA.js +2 -0
- package/dist/cdn/KBOIN2ZI.js +2 -0
- package/dist/cdn/KDLRVDVQ.js +2 -0
- package/dist/cdn/KJZTU3DV.js +2 -0
- package/dist/cdn/{GSD4ZLN6.js → KR7A5JG4.js} +1 -1
- package/dist/cdn/KUI3SQHQ.js +2 -0
- package/dist/cdn/KVAWYWYK.js +2 -0
- package/dist/cdn/{5PAOUYHV.js → LA5FTE2U.js} +2 -2
- package/dist/cdn/LU6YEMXO.js +2 -0
- package/dist/cdn/MJLDF2FQ.js +2 -0
- package/dist/cdn/{UYQBMPSN.js → MLLV2GML.js} +1 -1
- package/dist/cdn/MO5LDVWE.js +2 -0
- package/dist/cdn/MYDNPSD6.js +2 -0
- package/dist/cdn/NCHIDM4H.js +2 -0
- package/dist/cdn/NYDW2I5M.js +2 -0
- package/dist/cdn/{2EDBRZSQ.js → NZT3J3KJ.js} +1 -1
- package/dist/cdn/{QYNNPEED.js → OAXHS4LE.js} +1 -1
- package/dist/cdn/OKZBV5LB.js +2 -0
- package/dist/cdn/{QRJMT2DB.js → OTH3FQJJ.js} +1 -1
- package/dist/cdn/P2L3OTIA.js +2 -0
- package/dist/cdn/PA4NRD4I.js +2 -0
- package/dist/cdn/PDYOXU7M.js +2 -0
- package/dist/cdn/PXTBSPEA.js +2 -0
- package/dist/cdn/{ALOMPW5P.js → Q6VW7H3A.js} +1 -1
- package/dist/cdn/QRNP4SNY.js +2 -0
- package/dist/cdn/QTD2QGHC.js +2 -0
- package/dist/cdn/{GXGUKV7H.js → RA3GUNR3.js} +1 -1
- package/dist/cdn/{VPJVWP7S.js → RQ6HACQP.js} +1 -1
- package/dist/cdn/{2ULHNXRJ.js → SCU3SBSN.js} +1 -1
- package/dist/cdn/T3WULYNA.js +2 -0
- package/dist/cdn/TCKFUPRR.js +2 -0
- package/dist/cdn/TQYULR2I.js +2 -0
- package/dist/cdn/UL2ASLY7.js +2 -0
- package/dist/cdn/{MEQOANO2.js → UMYQZXPT.js} +1 -1
- package/dist/cdn/USNCFQ5L.js +2 -0
- package/dist/cdn/{EZ6DGROJ.js → UYMLDXJI.js} +1 -1
- package/dist/cdn/V6TEH3XV.js +2 -0
- package/dist/cdn/VME2NH7X.js +2 -0
- package/dist/cdn/{KI2XMATI.js → VXQLTYHF.js} +1 -1
- package/dist/cdn/WKCITUA3.js +2 -0
- package/dist/cdn/{CB6BIIF2.js → WMUPNT4Q.js} +1 -1
- package/dist/cdn/WWKZYBCF.js +2 -0
- package/dist/cdn/XYBOIKE4.js +2 -0
- package/dist/cdn/{2DHUAIBZ.js → YIWJ2NPY.js} +1 -1
- package/dist/cdn/YL27XTUT.js +2 -0
- package/dist/cdn/{TT6WOAKC.js → ZESW7TCR.js} +1 -1
- package/dist/cdn/ZH3BXRLT.js +2 -0
- package/dist/cdn/{6HFL4FZL.js → ZZ5FKECR.js} +1 -1
- package/dist/cdn/index.js +1 -1
- package/dist/cdn/model/shared/setup-utils.js +1 -1
- package/dist/chart-rendering/common/interfaces.d.ts +11 -8
- package/dist/chunks/action-bar-utils.js +1 -1
- package/dist/chunks/bar-chart-model.js +1 -1
- package/dist/chunks/box-plot-data.js +55 -56
- package/dist/chunks/box-plot-model.js +1 -1
- package/dist/chunks/class-breaks.js +1 -1
- package/dist/chunks/combo-bar-line-chart-model.js +6 -7
- package/dist/chunks/data.js +9 -9
- package/dist/chunks/gauge-model.js +1 -1
- package/dist/chunks/generate-x-axis-title.js +4 -4
- package/dist/chunks/heat-chart-model.js +1 -1
- package/dist/chunks/index.js +1 -1
- package/dist/chunks/index2.js +1576 -1467
- package/dist/chunks/index3.js +77 -67
- package/dist/chunks/index4.js +25 -13
- package/dist/chunks/index5.js +63 -100
- package/dist/chunks/line-chart-model.js +1 -1
- package/dist/chunks/model-setter.js +1 -1
- package/dist/chunks/negative-values-stacked-to-baseline.js +6 -6
- package/dist/chunks/pie-chart-data.js +1 -1
- package/dist/chunks/pie-chart-model.js +1 -1
- package/dist/chunks/radar-chart-model.js +1 -1
- package/dist/chunks/resource.js +5 -5
- package/dist/chunks/rounded-corners.js +5 -5
- package/dist/chunks/scatterplot-model.js +1 -1
- package/dist/chunks/serial-chart-data.js +631 -620
- package/dist/chunks/serial-chart-model.js +63 -64
- package/dist/chunks/series-length.js +1 -1
- package/dist/chunks/series-types.js +22 -18
- package/dist/chunks/type-guards2.js +30 -26
- package/dist/chunks/utils.js +50 -51
- package/dist/chunks/web-component-utils.js +2 -2
- package/dist/chunks/x-bounds.js +21 -22
- package/dist/components/arcgis-chart/customElement.d.ts +64 -23
- package/dist/components/arcgis-chart/customElement.js +6128 -6148
- package/dist/components/arcgis-charts-action-bar/customElement.js +1 -1
- package/dist/components/arcgis-charts-config-bar-chart/customElement.js +6 -7
- package/dist/components/arcgis-charts-config-bar-chart-data/customElement.js +1 -1
- package/dist/components/arcgis-charts-config-bar-chart-popover/customElement.js +1 -1
- package/dist/components/arcgis-charts-config-bar-chart-series/customElement.js +54 -53
- package/dist/components/arcgis-charts-config-bar-chart-series-popover/customElement.js +10 -9
- package/dist/components/arcgis-charts-config-box-plot/customElement.js +10 -11
- package/dist/components/arcgis-charts-config-box-plot-popover/customElement.js +1 -1
- package/dist/components/arcgis-charts-config-create-flow/customElement.js +48 -46
- package/dist/components/arcgis-charts-config-format/customElement.js +2 -2
- package/dist/components/arcgis-charts-config-guide/customElement.js +18 -19
- package/dist/components/arcgis-charts-config-guides/customElement.js +1 -1
- package/dist/components/arcgis-charts-config-heat-chart/customElement.js +12 -13
- package/dist/components/arcgis-charts-config-heat-chart-data/customElement.js +1 -1
- package/dist/components/arcgis-charts-config-heat-chart-popover/customElement.js +1 -1
- package/dist/components/arcgis-charts-config-histogram/customElement.js +12 -13
- package/dist/components/arcgis-charts-config-histogram-popover/customElement.js +6 -6
- package/dist/components/arcgis-charts-config-line-chart/customElement.js +5 -6
- package/dist/components/arcgis-charts-config-line-chart-data/customElement.js +1 -1
- package/dist/components/arcgis-charts-config-line-chart-popover/customElement.js +5 -5
- package/dist/components/arcgis-charts-config-pie-chart/customElement.js +4 -5
- package/dist/components/arcgis-charts-config-pie-chart-data/customElement.js +1 -1
- package/dist/components/arcgis-charts-config-pie-chart-popover/customElement.js +18 -18
- package/dist/components/arcgis-charts-config-scatter-plot/customElement.js +6 -7
- package/dist/components/arcgis-charts-config-scatter-plot-popover/customElement.js +1 -1
- package/dist/components/arcgis-charts-config-view-charts/customElement.js +1 -1
- package/dist/docs/api.json +1 -1
- package/dist/docs/docs.json +1 -1
- package/dist/docs/vscode.html-custom-data.json +1 -1
- package/dist/docs/web-types.json +1 -1
- package/dist/index.js +286 -283
- package/dist/json-schema/index.d.ts +12 -2
- package/dist/model/shared/type-guards.d.ts +9 -2
- package/dist/spec/web-chart.d.ts +26 -4
- package/dist/utils/chart-config/converter/index.js +185 -166
- package/dist/utils/chart-config/utils/index.d.ts +18 -3
- package/dist/utils/cursor/interfaces.d.ts +21 -0
- package/dist/utils/type-guards/series-types.d.ts +9 -2
- package/package.json +3 -3
- package/dist/cdn/2B7R5EPU.js +0 -2
- package/dist/cdn/37UC5ORG.js +0 -2
- package/dist/cdn/3MGWFTQH.js +0 -2
- package/dist/cdn/3Z4FG2HV.js +0 -2
- package/dist/cdn/4L2YTJ24.js +0 -2
- package/dist/cdn/4MQOMRB6.js +0 -2
- package/dist/cdn/4MSUALRF.js +0 -2
- package/dist/cdn/4PMNY6J6.js +0 -2
- package/dist/cdn/4SFDTXQJ.js +0 -2
- package/dist/cdn/53DFPXFT.js +0 -2
- package/dist/cdn/5GXB34LE.js +0 -2
- package/dist/cdn/5WIDEL4K.js +0 -2
- package/dist/cdn/7IK6J5VF.js +0 -2
- package/dist/cdn/A34ROM33.js +0 -2
- package/dist/cdn/BM62ZXFE.js +0 -2
- package/dist/cdn/BNBZEIMG.js +0 -2
- package/dist/cdn/C3YMGEUW.js +0 -2
- package/dist/cdn/C64W7ELG.js +0 -2
- package/dist/cdn/CD2NGAV3.js +0 -2
- package/dist/cdn/CPRSIFTK.js +0 -2
- package/dist/cdn/DTNHSQRD.js +0 -2
- package/dist/cdn/DUAMGCAK.js +0 -2
- package/dist/cdn/E4T5VUXT.js +0 -2
- package/dist/cdn/EDYZLWGW.js +0 -3
- package/dist/cdn/EKWX6BR7.js +0 -2
- package/dist/cdn/EQXKSMAG.js +0 -2
- package/dist/cdn/F64XESDA.js +0 -2
- package/dist/cdn/G5DDARQJ.js +0 -2
- package/dist/cdn/G5FTVXQF.js +0 -2
- package/dist/cdn/GHTCOHC2.js +0 -2
- package/dist/cdn/I6LYDJKQ.js +0 -2
- package/dist/cdn/IDAMYFLT.js +0 -2
- package/dist/cdn/IH2BBWAQ.js +0 -2
- package/dist/cdn/J4C4QWY4.js +0 -2
- package/dist/cdn/JYROXMJN.js +0 -2
- package/dist/cdn/LDBJRKCM.js +0 -2
- package/dist/cdn/M5K6IJLD.js +0 -2
- package/dist/cdn/M7ZANON3.js +0 -2
- package/dist/cdn/MCJTQ4YF.js +0 -2
- package/dist/cdn/MLA3N4MI.js +0 -2
- package/dist/cdn/MR7KELUF.js +0 -2
- package/dist/cdn/MY2W3RH7.js +0 -2
- package/dist/cdn/MYK7BBLS.js +0 -2
- package/dist/cdn/N7D4B5LO.js +0 -2
- package/dist/cdn/NFU76HOO.js +0 -2
- package/dist/cdn/NZVEN4LR.js +0 -2
- package/dist/cdn/OKK5OJ6S.js +0 -2
- package/dist/cdn/PXTV6Y3K.js +0 -2
- package/dist/cdn/QJMUS3VS.js +0 -2
- package/dist/cdn/QMJ75W7D.js +0 -2
- package/dist/cdn/RKGAXZQB.js +0 -2
- package/dist/cdn/RP2TRPHY.js +0 -2
- package/dist/cdn/UIU5UYBO.js +0 -2
- package/dist/cdn/V23GYHYZ.js +0 -2
- package/dist/cdn/XWJ4GDXQ.js +0 -2
- package/dist/cdn/ZAAMSMQB.js +0 -2
- package/dist/cdn/ZALJA7E5.js +0 -2
- package/dist/cdn/ZCACFAKY.js +0 -2
- package/dist/cdn/ZKZOXEXY.js +0 -2
- package/dist/cdn/ZMBNBTJQ.js +0 -2
- package/dist/chunks/index6.js +0 -66
- /package/dist/cdn/{IVLVCLDE.js → 7NWEE7T2.js} +0 -0
|
@@ -8,7 +8,7 @@ import { createRef as b, ref as C } from "lit/directives/ref.js";
|
|
|
8
8
|
import { LitElement as V, renderElement as y, safeStyleMap as B, createEvent as D, safeClassMap as L, nothing as s } from "@arcgis/lumina";
|
|
9
9
|
import { a as n } from "../../chunks/chart-ui-utils2.js";
|
|
10
10
|
import { i as F } from "../../chunks/rotated-state.js";
|
|
11
|
-
import { a as t, A as o, D as e } from "../../chunks/
|
|
11
|
+
import { a as t, A as o, D as e } from "../../chunks/index5.js";
|
|
12
12
|
import { A as k } from "../../chunks/index3.js";
|
|
13
13
|
import { u as I } from "../../chunks/chart-object-literals.js";
|
|
14
14
|
import { b as r, k as M } from "../../chunks/type-guards2.js";
|
|
@@ -4,8 +4,7 @@ import { LitElement as n, createEvent as d } from "@arcgis/lumina";
|
|
|
4
4
|
import { css as c, html as s } from "lit";
|
|
5
5
|
import { isEqual as r } from "lodash-es";
|
|
6
6
|
import { C as t } from "../../chunks/interfaces.js";
|
|
7
|
-
import {
|
|
8
|
-
import { p as m, h as u } from "../../chunks/index5.js";
|
|
7
|
+
import { bE as h, a$ as f, ac as p, bX as g, I as m, bj as u } from "../../chunks/index2.js";
|
|
9
8
|
const C = c`:host{margin-bottom:var(--arcgis-charts-intra-section-margin);margin-top:var(--arcgis-charts-intra-section-margin);height:100%}`;
|
|
10
9
|
class F extends n {
|
|
11
10
|
constructor() {
|
|
@@ -35,7 +34,7 @@ class F extends n {
|
|
|
35
34
|
}
|
|
36
35
|
seriesColorChange(e) {
|
|
37
36
|
this.activeColorMatch = e?.get(0) === void 0, this.model.colorMatch && e?.forEach((a, i) => {
|
|
38
|
-
|
|
37
|
+
h(a) && e?.get(0) !== void 0 && a?.color !== void 0 && !r(this.model.getSeriesColor(i), a?.color) && this.model.setSeriesColor(a?.color, i);
|
|
39
38
|
});
|
|
40
39
|
}
|
|
41
40
|
async updateDataFilters() {
|
|
@@ -49,13 +48,13 @@ class F extends n {
|
|
|
49
48
|
const a = e ?? this.model.config;
|
|
50
49
|
let i = this.layer;
|
|
51
50
|
if (!i) {
|
|
52
|
-
const o =
|
|
53
|
-
o && (i = await
|
|
51
|
+
const o = f(a) ? a.iLayer : void 0;
|
|
52
|
+
o && (i = await p(o));
|
|
54
53
|
}
|
|
55
|
-
i && (await
|
|
54
|
+
i && (await g(i), this.layerFieldsInfo = m(i, this.usePopupTemplateFieldsInfo || this.popupTemplateFieldInfosEnabled));
|
|
56
55
|
}
|
|
57
56
|
render() {
|
|
58
|
-
const e = this.layerFieldsInfo?.find((o) => o.name === this.model.xAxisField), a = e !== void 0 &&
|
|
57
|
+
const e = this.layerFieldsInfo?.find((o) => o.name === this.model.xAxisField), a = e !== void 0 && u(e);
|
|
59
58
|
let i;
|
|
60
59
|
switch (this.page) {
|
|
61
60
|
case t.Data:
|
|
@@ -12,7 +12,7 @@ import { createRef as c, ref as m } from "lit/directives/ref.js";
|
|
|
12
12
|
import { LitElement as U, createEvent as b, safeClassMap as l, renderElement as V } from "@arcgis/lumina";
|
|
13
13
|
import { d as S, f as z, F as M, C as F, m as R } from "../../chunks/index3.js";
|
|
14
14
|
import { x as K } from "../../chunks/data.js";
|
|
15
|
-
import {
|
|
15
|
+
import { ap as B, k as j, Y as A, bj as H } from "../../chunks/index2.js";
|
|
16
16
|
import { w as q, aj as W } from "../../chunks/index.js";
|
|
17
17
|
import { r as Z } from "../../chunks/popover-ui-utils.js";
|
|
18
18
|
import { r as d, s as L, u as C, m as f } from "../../chunks/chart-object-literals.js";
|
|
@@ -15,7 +15,7 @@ import { t as u, r as z, s as p } from "../../chunks/chart-object-literals.js";
|
|
|
15
15
|
import { S as m } from "../../chunks/common.js";
|
|
16
16
|
import { e as N, p as B } from "../../chunks/popover-ui-utils.js";
|
|
17
17
|
import { w as K, aj as _ } from "../../chunks/index.js";
|
|
18
|
-
import { a2 as O,
|
|
18
|
+
import { a2 as O, br as P, bj as H, bP as M, bx as U } from "../../chunks/index2.js";
|
|
19
19
|
import { d as j, m as W } from "../../chunks/index3.js";
|
|
20
20
|
const R = D`.hide{visibility:hidden}.am5-html-container{z-index:101!important}.am5-layer-1000{z-index:1000!important}.am5-layer-30{z-index:100!important}.show{display:block}.notifyPanel{flex:0 1 auto}.disable-interactions{pointer-events:none}.dim-text{color:var(--arcgis-charts-dim-text)}.name{display:flex;flex-direction:column;margin:.5rem;padding:.5rem;background:#fff;min-width:250px}.header{margin:0;font-weight:bolder}.fab{display:flex;justify-content:stretch}.popover-pick-list{font-size:small;max-width:var(--arcgis-charts-config-popover-pick-list-max-width)}.sort-icon-color{color:#000}.sort-y-axis{transform:rotate(90deg)}.sort-order-pick-list{overflow-y:hidden}.panel{max-height:60vh}.panel .size-section{width:19rem;margin:1rem 0;display:flex;flex-wrap:wrap;justify-content:space-evenly}.panel .size-section calcite-label{width:8rem;margin-bottom:.25rem}.panel .apply-button{width:17rem}`, o = {
|
|
21
21
|
name: "bar-chart-data-popover",
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import { c as
|
|
3
|
-
import { keyed as
|
|
4
|
-
import { repeat as
|
|
5
|
-
import { u as
|
|
6
|
-
import { css as
|
|
7
|
-
import { LitElement as
|
|
8
|
-
import { a as
|
|
9
|
-
import { C as
|
|
10
|
-
import { r as
|
|
11
|
-
import { q as
|
|
12
|
-
|
|
2
|
+
import { c as x } from "../../chunks/runtime.js";
|
|
3
|
+
import { keyed as P } from "lit/directives/keyed.js";
|
|
4
|
+
import { repeat as T } from "lit/directives/repeat.js";
|
|
5
|
+
import { u as L } from "../../chunks/useT9n.js";
|
|
6
|
+
import { css as M, html as a } from "lit";
|
|
7
|
+
import { LitElement as N, createEvent as O, renderElement as C, safeStyleMap as h, safeClassMap as r } from "@arcgis/lumina";
|
|
8
|
+
import { a as _ } from "../../chunks/chart-ui-utils2.js";
|
|
9
|
+
import { C as E, F as v } from "../../chunks/index3.js";
|
|
10
|
+
import { r as f } from "../../chunks/popover-ui-utils.js";
|
|
11
|
+
import { q as n, r as S } from "../../chunks/chart-object-literals.js";
|
|
12
|
+
import { an as m } from "../../chunks/index2.js";
|
|
13
|
+
const w = {
|
|
13
14
|
stackedType: "stacked-type"
|
|
14
15
|
}, o = {
|
|
15
16
|
topSection: "top-section",
|
|
@@ -17,17 +18,17 @@ const E = {
|
|
|
17
18
|
list: "list",
|
|
18
19
|
disabledInfo: "disabled-info",
|
|
19
20
|
disabledStackingOption: "disabled-stacking-option"
|
|
20
|
-
},
|
|
21
|
-
class
|
|
21
|
+
}, D = M`.hide{visibility:hidden}.am5-html-container{z-index:101!important}.am5-layer-1000{z-index:1000!important}.am5-layer-30{z-index:100!important}.show{display:block}.notifyPanel{flex:0 1 auto}.disable-interactions{pointer-events:none}.dim-text{color:var(--arcgis-charts-dim-text)}:host{display:flex;flex-direction:column;width:var(--arcgis-charts-config-calcite-block-default-width);margin:var(--arcgis-charts-config-calcite-block-default-margin)}.top-section{margin-top:var(--arcgis-charts-config-margin-minor)}.section-label{display:flex;margin-bottom:var(--arcgis-charts-config-margin-major);margin-left:var(--arcgis-charts-config-margin-minor);margin-right:var(--arcgis-charts-config-margin-minor);justify-content:space-between;align-items:center;font-weight:var(--calcite-font-weight-medium);font-size:var(--calcite-font-size-0)}.list{margin-left:var(--arcgis-charts-config-margin-minor);margin-right:var(--arcgis-charts-config-margin-minor);margin-bottom:var(--arcgis-charts-config-margin-major)}.disabled-info{margin:auto 1rem;pointer-events:auto}.disabled-info:active{margin:auto 1rem;pointer-events:none}.disabled-stacking-option{pointer-events:none;opacity:var(--calcite-opacity-disabled)}`;
|
|
22
|
+
class z extends N {
|
|
22
23
|
constructor() {
|
|
23
|
-
super(...arguments), this._messages =
|
|
24
|
+
super(...arguments), this._messages = L(), this.open = !1, this.seriesNameChange = (e) => {
|
|
24
25
|
if (e.detail !== null && e.detail !== void 0) {
|
|
25
26
|
const t = e.detail.name;
|
|
26
27
|
if (this.isNullCategorySelected) {
|
|
27
|
-
const
|
|
28
|
-
if (
|
|
29
|
-
const
|
|
30
|
-
this.model.nullCategory =
|
|
28
|
+
const s = this.model.nullCategory;
|
|
29
|
+
if (s) {
|
|
30
|
+
const i = { ...s, text: t };
|
|
31
|
+
this.model.nullCategory = i;
|
|
31
32
|
}
|
|
32
33
|
} else
|
|
33
34
|
this.model.setSeriesName(t, this.selectedSeriesIndex ?? -1);
|
|
@@ -37,15 +38,15 @@ class D extends M {
|
|
|
37
38
|
const { color: t } = e.detail;
|
|
38
39
|
if (t !== void 0) {
|
|
39
40
|
if (this.isNullCategorySelected) {
|
|
40
|
-
const
|
|
41
|
-
...
|
|
42
|
-
|
|
43
|
-
...i
|
|
41
|
+
const s = this.model.nullCategory, i = m(s), l = s !== void 0 && i !== void 0 ? {
|
|
42
|
+
...s,
|
|
43
|
+
fillSymbol: {
|
|
44
|
+
...i,
|
|
44
45
|
color: t,
|
|
45
|
-
outline: i.
|
|
46
|
+
outline: i.outline && { ...i.outline, color: t }
|
|
46
47
|
}
|
|
47
|
-
};
|
|
48
|
-
this.model.nullCategory =
|
|
48
|
+
} : void 0;
|
|
49
|
+
this.model.nullCategory = l;
|
|
49
50
|
} else
|
|
50
51
|
this.model.setSeriesColor(t, this.selectedSeriesIndex ?? -1);
|
|
51
52
|
this.model.colorMatch = !1;
|
|
@@ -53,16 +54,16 @@ class D extends M {
|
|
|
53
54
|
}
|
|
54
55
|
}, this.seriesPopoverClose = (e) => {
|
|
55
56
|
const { selectedSeriesIndex: t } = e.detail;
|
|
56
|
-
this.selectedSeriesIndex === t && (this.seriesPopover =
|
|
57
|
+
this.selectedSeriesIndex === t && (this.seriesPopover = f(this.seriesPopover), this.selectedSeriesIndex = void 0);
|
|
57
58
|
}, this.onModelConfigChange = () => {
|
|
58
59
|
this.requestUpdate();
|
|
59
|
-
}, this.seriesOrderResetCounter = 0, this.activeColorMatch = !1, this.popoverPlacement = "leading", this.arcgisChartsConfigDataChangeError =
|
|
60
|
+
}, this.seriesOrderResetCounter = 0, this.activeColorMatch = !1, this.popoverPlacement = "leading", this.arcgisChartsConfigDataChangeError = O();
|
|
60
61
|
}
|
|
61
62
|
static {
|
|
62
63
|
this.properties = { seriesOrderResetCounter: 16, selectedSeriesIndex: 16, messageOverrides: 0, model: 0, activeColorMatch: 5, popoverPlacement: 1 };
|
|
63
64
|
}
|
|
64
65
|
static {
|
|
65
|
-
this.styles =
|
|
66
|
+
this.styles = D;
|
|
66
67
|
}
|
|
67
68
|
load() {
|
|
68
69
|
this.modelChange(this.model), this.onModelConfigChange();
|
|
@@ -77,34 +78,34 @@ class D extends M {
|
|
|
77
78
|
t?.removeEventListener("arcgisChartsModelConfigChange", this.onModelConfigChange), e?.addEventListener("arcgisChartsModelConfigChange", this.onModelConfigChange);
|
|
78
79
|
}
|
|
79
80
|
removeSeriesPopover() {
|
|
80
|
-
this.seriesPopover !== null && this.seriesPopover !== void 0 && (this.seriesPopover.open = !1, this.seriesPopover =
|
|
81
|
+
this.seriesPopover !== null && this.seriesPopover !== void 0 && (this.seriesPopover.open = !1, this.seriesPopover = f(this.seriesPopover));
|
|
81
82
|
}
|
|
82
83
|
selectedSeriesIndexChange() {
|
|
83
|
-
this.selectedSeriesIndex !== void 0 && (this.seriesPopover =
|
|
84
|
+
this.selectedSeriesIndex !== void 0 && (this.seriesPopover = C(a`<arcgis-charts-config-bar-chart-series-popover .referenceElement=${this.el} .selectedName=${this.selectedSeriesIndex != null ? this.model.getSeriesName(this.selectedSeriesIndex) : void 0} .selectedColor=${this.selectedSeriesIndex != null ? this.model.getSeriesColor(this.selectedSeriesIndex) : void 0} .placement=${this.popoverPlacement} .selectedSeriesIndex=${this.selectedSeriesIndex != null ? this.selectedSeriesIndex : void 0} .nullCategory=${this.isNullCategorySelected ? this.model.nullCategory : void 0} .open=${this.open} @arcgisChartsConfigSeriesPopoverNameChange=${this.seriesNameChange} @arcgisChartsConfigSeriesPopoverColorChange=${this.seriesColorChange} @arcgisChartsConfigPopoverClose=${this.seriesPopoverClose}></arcgis-charts-config-bar-chart-series-popover>`), this.seriesPopover && !document.body.contains(this.seriesPopover) && document.body.appendChild(this.seriesPopover));
|
|
84
85
|
}
|
|
85
86
|
buildSeriesListItems() {
|
|
86
|
-
const e = this.model.seriesLength ?? 0, t = Array.from({ length: e }, (
|
|
87
|
-
return
|
|
88
|
-
const
|
|
89
|
-
let
|
|
87
|
+
const e = this.model.seriesLength ?? 0, t = Array.from({ length: e }, (i, l) => l);
|
|
88
|
+
return T(t, (i) => this.model.getSeriesId(i), (i) => {
|
|
89
|
+
const l = this.model.getSeriesId(i), c = this.model.getSeriesColor(i), d = this.model.getSeriesName(i), b = this.model.chartSubType === E.BarAndLineFromFields ? this._messages.series : l;
|
|
90
|
+
let p = "#CCCCCC", u = "minus-square";
|
|
90
91
|
if ((e > 1 || !this.activeColorMatch) && c !== void 0) {
|
|
91
|
-
|
|
92
|
-
const [
|
|
93
|
-
|
|
92
|
+
u = "square-f";
|
|
93
|
+
const [y, $, I, k] = [...c];
|
|
94
|
+
p = `rgba(${y},${$},${I},${k / 255})`;
|
|
94
95
|
}
|
|
95
|
-
return
|
|
96
|
+
return a`<calcite-list-item .label=${d ?? l ?? ""} .description=${b} .value=${l} .selected=${this.selectedSeriesIndex === i} @click=${this.openSeriesPopOver}><calcite-icon .icon=${u} style=${h({ color: p })} slot=content-end></calcite-icon></calcite-list-item>`;
|
|
96
97
|
});
|
|
97
98
|
}
|
|
98
99
|
buildSeriesList() {
|
|
99
|
-
return
|
|
100
|
+
return P(this.seriesOrderResetCounter, a`<calcite-list label class=${r(o.list)} drag-enabled selection-mode=single selection-appearance=border @calciteListOrderChange=${this.onCalciteListOrderChange}>${this.buildSeriesListItems()}</calcite-list>`);
|
|
100
101
|
}
|
|
101
102
|
buildNullCategoryUI() {
|
|
102
|
-
const e = this.model.nullCategory, t = this._messages.nullCategory,
|
|
103
|
-
return
|
|
103
|
+
const e = this.model.nullCategory, t = this._messages.nullCategory, s = m(e)?.color ?? m(v.nullCategory)?.color ?? v.grayColor, [i, l, c, d] = [...s], g = `rgba(${i},${l},${c},${d / 255})`;
|
|
104
|
+
return a`<calcite-list label class=${r(o.list)} selection-mode=none><calcite-list-item .label=${t} .value=${t} .selected=${this.selectedSeriesIndex === null} @click=${this.openSeriesPopOver}><calcite-icon icon=square-f style=${h({ color: g })} slot=content-end></calcite-icon></calcite-list-item></calcite-list>`;
|
|
104
105
|
}
|
|
105
106
|
buildMultipleBarTypeList() {
|
|
106
107
|
const e = this.shouldDisableStacking();
|
|
107
|
-
return e && this.model.stackedType !==
|
|
108
|
+
return e && this.model.stackedType !== n.Side && (this.model.stackedType = n.Side), a`<calcite-list label id=${w.stackedType} class=${r(o.list)} selection-mode=single-persist selection-appearance=border @click=${this.onMultipleBarSelect}><calcite-list-item .label=${this._messages.sideBySide} .value=${n.Side} .selected=${this.model.stackedType === void 0 || this.model.stackedType === n.Side}><calcite-icon scale=l icon=graph-bar-side-by-side slot=content-start></calcite-icon></calcite-list-item><calcite-list-item class=${r(e ? o.disabledStackingOption : "")} .label=${this._messages.stacked} .value=${n.Stacked} .selected=${this.model.stackedType === n.Stacked}><calcite-icon scale=l icon=graph-bar-stacked slot=content-start></calcite-icon>${e && a`<calcite-icon class=${r(o.disabledInfo)} slot=content-end icon=information scale=s flip-rtl @mouseover=${this.createTooltip} @mouseout=${this.destroyTooltip}></calcite-icon>` || ""}</calcite-list-item><calcite-list-item class=${r(e ? o.disabledStackingOption : "")} .label=${this._messages.stacked100} .value=${n.Stacked100} .selected=${this.model.stackedType === n.Stacked100}><calcite-icon scale=l icon=graph-bar100-stacked slot=content-start></calcite-icon>${e && a`<calcite-icon class=${r(o.disabledInfo)} slot=content-end icon=information scale=s flip-rtl @mouseover=${this.createTooltip} @mouseout=${this.destroyTooltip}></calcite-icon>` || ""}</calcite-list-item></calcite-list>`;
|
|
108
109
|
}
|
|
109
110
|
resetSeriesOriginal() {
|
|
110
111
|
this.selectedSeriesIndex = void 0, this.model.resetSeriesStyling(), this.seriesOrderResetCounter += 1;
|
|
@@ -117,30 +118,30 @@ class D extends M {
|
|
|
117
118
|
}
|
|
118
119
|
onCalciteListOrderChange(e) {
|
|
119
120
|
if (e.detail !== null && e.detail !== void 0) {
|
|
120
|
-
const { newIndex: t, oldIndex:
|
|
121
|
-
this.model.moveSeries(
|
|
121
|
+
const { newIndex: t, oldIndex: s } = e.detail;
|
|
122
|
+
this.model.moveSeries(s ?? 0, t ?? s ?? 0), this.seriesOrderResetCounter += 1;
|
|
122
123
|
}
|
|
123
124
|
}
|
|
124
125
|
openSeriesPopOver(e) {
|
|
125
126
|
e.stopImmediatePropagation(), this.removeSeriesPopover();
|
|
126
|
-
const t = e.target,
|
|
127
|
-
this.open = this.selectedSeriesIndex !==
|
|
127
|
+
const t = e.target, s = t.localName === "calcite-list-item" ? t : t.parentNode, i = this.model.getSeriesIndex(s.value);
|
|
128
|
+
this.open = this.selectedSeriesIndex !== i, this.selectedSeriesIndex = this.selectedSeriesIndex !== i ? i : void 0, this.isNullCategorySelected = s.value === this._messages.nullCategory;
|
|
128
129
|
}
|
|
129
130
|
createTooltip(e) {
|
|
130
|
-
const t = e.target,
|
|
131
|
-
this.tooltip =
|
|
131
|
+
const t = e.target, s = (this.model.aggregationType === S.NoAggregation ? this._messages.noAggStackingDisabled : this._messages.singleStackingDisabled) ?? "";
|
|
132
|
+
this.tooltip = C(a`<calcite-tooltip style=${h({ opacity: 1, zIndex: "var(--calcite-floating-ui-z-index)" })} .referenceElement=${t} open placement=top>${s}</calcite-tooltip>`), document.body.appendChild(this.tooltip);
|
|
132
133
|
}
|
|
133
134
|
destroyTooltip() {
|
|
134
|
-
|
|
135
|
+
_(this.tooltip);
|
|
135
136
|
}
|
|
136
137
|
shouldDisableStacking() {
|
|
137
|
-
return (this.model.seriesLength ?? 0) <= 1 || this.model.aggregationType ===
|
|
138
|
+
return (this.model.seriesLength ?? 0) <= 1 || this.model.aggregationType === S.NoAggregation;
|
|
138
139
|
}
|
|
139
140
|
render() {
|
|
140
|
-
return
|
|
141
|
+
return a`<div class=${`${o.sectionLabel} ${o.topSection}`}>${this._messages.displayMultiSeries}</div>${this.buildMultipleBarTypeList()}<div class=${r(o.sectionLabel)}>${this._messages.series}<calcite-button @click=${this.resetSeriesOriginal} .disabled=${!this.model.resetAvailable()} appearance=transparent icon-end=reset>${this._messages.reset}</calcite-button></div>${this.buildSeriesList()}${this.model.nullCategory !== void 0 && this.model.fetchNULLValues ? this.buildNullCategoryUI() : null}`;
|
|
141
142
|
}
|
|
142
143
|
}
|
|
143
|
-
|
|
144
|
+
x("arcgis-charts-config-bar-chart-series", z);
|
|
144
145
|
export {
|
|
145
|
-
|
|
146
|
+
z as ArcgisChartsConfigBarChartSeries
|
|
146
147
|
};
|
|
@@ -3,13 +3,14 @@ import { c } from "../../chunks/runtime.js";
|
|
|
3
3
|
import { css as p, html as h } from "lit";
|
|
4
4
|
import { u as m } from "../../chunks/useT9n.js";
|
|
5
5
|
import { createRef as d, ref as g } from "lit/directives/ref.js";
|
|
6
|
-
import { LitElement as C, createEvent as s, safeClassMap as
|
|
6
|
+
import { LitElement as C, createEvent as s, safeClassMap as l } from "@arcgis/lumina";
|
|
7
7
|
import { e as v } from "../../chunks/popover-ui-utils.js";
|
|
8
8
|
import { aF as f } from "../../chunks/index.js";
|
|
9
|
-
|
|
9
|
+
import { an as u } from "../../chunks/index2.js";
|
|
10
|
+
const n = {
|
|
10
11
|
panelChildrenContainer: "panel-children-container"
|
|
11
|
-
},
|
|
12
|
-
class
|
|
12
|
+
}, y = p`.hide{visibility:hidden}.am5-html-container{z-index:101!important}.am5-layer-1000{z-index:1000!important}.am5-layer-30{z-index:100!important}.show{display:block}.notifyPanel{flex:0 1 auto}.disable-interactions{pointer-events:none}.dim-text{color:var(--arcgis-charts-dim-text)}:host{overflow-y:auto;width:min-content}.panel-children-container{display:flex}.panel-children-container calcite-label{flex:1 1 0px;display:flex;width:0px}.panel-children-container{padding:0 1rem;margin-top:1rem}`;
|
|
13
|
+
class x extends C {
|
|
13
14
|
constructor() {
|
|
14
15
|
super(...arguments), this._messages = m(), this.popoverElement = d(), this.open = !1, this.arcgisChartsConfigPopoverClose = s(), this.arcgisChartsConfigSeriesPopoverColorChange = s(), this.arcgisChartsConfigSeriesPopoverNameChange = s();
|
|
15
16
|
}
|
|
@@ -17,7 +18,7 @@ class y extends C {
|
|
|
17
18
|
this.properties = { messageOverrides: 0, referenceElement: 0, selectedName: 1, selectedColor: 0, selectedSeriesIndex: 9, placement: 1, open: 5, nullCategory: 0 };
|
|
18
19
|
}
|
|
19
20
|
static {
|
|
20
|
-
this.styles =
|
|
21
|
+
this.styles = y;
|
|
21
22
|
}
|
|
22
23
|
async reposition() {
|
|
23
24
|
await this.popoverElement.value?.reposition();
|
|
@@ -39,11 +40,11 @@ class y extends C {
|
|
|
39
40
|
this.selectedColor = [o, i, a, r], this.arcgisChartsConfigSeriesPopoverColorChange.emit({ color: [o, i, a, r] });
|
|
40
41
|
}
|
|
41
42
|
render() {
|
|
42
|
-
const e = this.nullCategory?.
|
|
43
|
-
return h`<div><calcite-popover .referenceElement=${this.referenceElement ?? document.body} .placement=${this.placement} .open=${this.open} @calcitePopoverClose=${this.closePopover} label auto-close ${g(this.popoverElement)}><calcite-panel .heading=${this._messages.seriesElement} closable .closed=${!this.open} @calcitePanelClose=${this.closePopover}><div class=${n
|
|
43
|
+
const e = u(this.nullCategory)?.color ?? this.selectedColor, t = this.nullCategory?.text ?? this.selectedName;
|
|
44
|
+
return h`<div><calcite-popover .referenceElement=${this.referenceElement ?? document.body} .placement=${this.placement} .open=${this.open} @calcitePopoverClose=${this.closePopover} label auto-close ${g(this.popoverElement)}><calcite-panel .heading=${this._messages.seriesElement} closable .closed=${!this.open} @calcitePanelClose=${this.closePopover}><div class=${l(n.panelChildrenContainer)}><calcite-label>${this._messages.label}<calcite-input type=text .value=${t} @calciteInputInput=${this.seriesNameChange}></calcite-input></calcite-label></div><div class=${l(n.panelChildrenContainer)}><arcgis-charts-config-colors .heading=${this._messages.symbolColor} .rgba=${e} @arcgisColorSelect=${this.colorChange}></arcgis-charts-config-colors></div></calcite-panel></calcite-popover></div>`;
|
|
44
45
|
}
|
|
45
46
|
}
|
|
46
|
-
c("arcgis-charts-config-bar-chart-series-popover",
|
|
47
|
+
c("arcgis-charts-config-bar-chart-series-popover", x);
|
|
47
48
|
export {
|
|
48
|
-
|
|
49
|
+
x as ArcgisChartsConfigBarChartSeriesPopover
|
|
49
50
|
};
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import { c as
|
|
2
|
+
import { c as r } from "../../chunks/runtime.js";
|
|
3
3
|
import { LitElement as n } from "@arcgis/lumina";
|
|
4
4
|
import { css as d, html as s } from "lit";
|
|
5
|
-
import { isEqual as
|
|
5
|
+
import { isEqual as l } from "lodash-es";
|
|
6
6
|
import { C as a } from "../../chunks/interfaces.js";
|
|
7
|
-
import {
|
|
8
|
-
import { h as f } from "../../chunks/index5.js";
|
|
7
|
+
import { a$ as c, ac as h, I as f } from "../../chunks/index2.js";
|
|
9
8
|
const m = d`:host{overflow-y:auto;overflow-x:hidden;margin-bottom:var(--arcgis-charts-intra-section-margin);margin-top:var(--arcgis-charts-intra-section-margin);height:100%}`;
|
|
10
9
|
class p extends n {
|
|
11
10
|
constructor() {
|
|
@@ -25,7 +24,7 @@ class p extends n {
|
|
|
25
24
|
}
|
|
26
25
|
willUpdate(e) {
|
|
27
26
|
let i = !1;
|
|
28
|
-
e.has("model") && this.modelChange(this.model, e.get("model")), e.has("layer") && this.layer !== void 0 && !
|
|
27
|
+
e.has("model") && this.modelChange(this.model, e.get("model")), e.has("layer") && this.layer !== void 0 && !l(e.get("layer"), this.layer) && (i = !0), (e.has("usePopupTemplateFieldsInfo") && this.usePopupTemplateFieldsInfo !== e.get("usePopupTemplateFieldsInfo") || e.has("popupTemplateFieldInfosEnabled") && this.popupTemplateFieldInfosEnabled !== e.get("popupTemplateFieldInfosEnabled")) && (i = !0), e.has("seriesColor") && this.seriesColorChange(this.seriesColor), this.layerFieldsInfo === void 0 && (i = !0), i && this.updateFetchLayerFieldsInfo();
|
|
29
28
|
}
|
|
30
29
|
disconnectedCallback() {
|
|
31
30
|
super.disconnectedCallback(), this.model.removeEventListener("arcgisChartsModelConfigChange", this.onModelConfigChange);
|
|
@@ -36,12 +35,12 @@ class p extends n {
|
|
|
36
35
|
seriesColorChange(e) {
|
|
37
36
|
this.activeColorMatch = e?.get(0) === void 0, this.model.colorMatch && e?.forEach((i, o) => {
|
|
38
37
|
let t;
|
|
39
|
-
i && ("fillSymbol" in i ? t = i.fillSymbol?.color : "lineSymbol" in i && (t = i.lineSymbol.color)), e?.get(0) !== void 0 && t !== void 0 && !
|
|
38
|
+
i && ("fillSymbol" in i ? t = i.fillSymbol?.color : "lineSymbol" in i && (t = i.lineSymbol.color)), e?.get(0) !== void 0 && t !== void 0 && !l(this.model.getSeriesColor(o), t) && this.model.setSeriesColor(t, o);
|
|
40
39
|
});
|
|
41
40
|
}
|
|
42
41
|
async updateDataFilters() {
|
|
43
42
|
const e = this.model.getDataFilters(), i = e?.where, o = this.layer?.definitionExpression ?? void 0;
|
|
44
|
-
|
|
43
|
+
l(i, o) || await this.model.setDataFilters({
|
|
45
44
|
...e,
|
|
46
45
|
where: o ?? void 0
|
|
47
46
|
});
|
|
@@ -50,10 +49,10 @@ class p extends n {
|
|
|
50
49
|
const i = e ?? this.model.config;
|
|
51
50
|
let o = this.layer;
|
|
52
51
|
if (!o) {
|
|
53
|
-
const t =
|
|
54
|
-
t && (o = await
|
|
52
|
+
const t = c(i) ? i.iLayer : void 0;
|
|
53
|
+
t && (o = await h(t));
|
|
55
54
|
}
|
|
56
|
-
o && (await o.load(), this.layerFieldsInfo =
|
|
55
|
+
o && (await o.load(), this.layerFieldsInfo = f(o, this.usePopupTemplateFieldsInfo || this.popupTemplateFieldInfosEnabled));
|
|
57
56
|
}
|
|
58
57
|
render() {
|
|
59
58
|
let e;
|
|
@@ -83,7 +82,7 @@ class p extends n {
|
|
|
83
82
|
return e;
|
|
84
83
|
}
|
|
85
84
|
}
|
|
86
|
-
|
|
85
|
+
r("arcgis-charts-config-box-plot", p);
|
|
87
86
|
export {
|
|
88
87
|
p as ArcgisChartsConfigBoxPlot
|
|
89
88
|
};
|
|
@@ -11,7 +11,7 @@ import { createRef as u, ref as m } from "lit/directives/ref.js";
|
|
|
11
11
|
import { LitElement as x, createEvent as g, renderElement as I, safeStyleMap as D, safeClassMap as d } from "@arcgis/lumina";
|
|
12
12
|
import { B as r } from "../../chunks/common.js";
|
|
13
13
|
import { e as S, p as T } from "../../chunks/popover-ui-utils.js";
|
|
14
|
-
import {
|
|
14
|
+
import { br as b, bx as E, a2 as w } from "../../chunks/index2.js";
|
|
15
15
|
import { d as B } from "../../chunks/index3.js";
|
|
16
16
|
import { R as C } from "../../chunks/rest-js-object-literals.js";
|
|
17
17
|
const o = {
|