@idux/charts-core 0.3.0 → 0.4.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @idux/charts-core
2
2
 
3
+ ## 0.4.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 84c8aeb: the listeners not work in vue2.x
8
+
9
+ ## 0.4.0
10
+
11
+ ### Minor Changes
12
+
13
+ - docs(release): publish v0.4.0
14
+
3
15
  ## 0.3.0
4
16
 
5
17
  ### Minor Changes
@@ -2,7 +2,7 @@ import { type Ref, type ShallowRef } from 'vue-demi';
2
2
  import { type EChartsType } from 'echarts/core';
3
3
  import { type ChartProps } from '../types';
4
4
  export type MaybeRef<T> = T | Ref<T>;
5
- export declare function useChart<U extends ChartProps>(options: MaybeRef<U>): {
5
+ export declare function useChart<U extends ChartProps>(options: MaybeRef<U>, listeners?: Record<string, Function>): {
6
6
  containerRef: ShallowRef<HTMLDivElement | undefined>;
7
7
  chartRef: ShallowRef<EChartsType | undefined>;
8
8
  };
package/dist/index.js CHANGED
@@ -1,80 +1,83 @@
1
- import { DataZoomComponent as B, LegendComponent as T, GridComponent as W, TitleComponent as I, TooltipComponent as G } from "echarts/components";
2
- import { LabelLayout as M, UniversalTransition as j } from "echarts/features";
3
- import { SVGRenderer as V } from "echarts/renderers";
4
- import { watch as g, shallowRef as m, computed as p, unref as c, onMounted as H, onBeforeUnmount as N, watchEffect as b, isVue2 as P, defineComponent as U, h as Z } from "vue-demi";
5
- import { throttle as _, init as q, use as $, registerTheme as J } from "echarts/core";
6
- import { isEqual as K, cloneDeep as A, isObject as Q, isNil as X } from "lodash-es";
7
- function Y(e, o, t) {
8
- let r;
9
- g(
10
- [e, o, t],
11
- ([n, a, l], f, d) => {
12
- !n || !a || (l ? (r ?? (r = _(() => a.resize(), 16)), k(n, r)) : y(n, r), d(() => y(n, r)));
1
+ import { DataZoomComponent as G, LegendComponent as M, GridComponent as j, TitleComponent as N, TooltipComponent as V } from "echarts/components";
2
+ import { LabelLayout as H, UniversalTransition as P } from "echarts/features";
3
+ import { SVGRenderer as U } from "echarts/renderers";
4
+ import { watch as C, shallowRef as g, computed as p, unref as f, onMounted as Z, onBeforeUnmount as _, watchEffect as y, isVue2 as z, defineComponent as q, h as $ } from "vue-demi";
5
+ import { throttle as J, init as K, use as Q, registerTheme as X } from "echarts/core";
6
+ import { isEqual as Y, cloneDeep as R, isBoolean as k, isNil as ee } from "lodash-es";
7
+ function te(e, o, r) {
8
+ let t;
9
+ C(
10
+ [e, o, r],
11
+ ([s, n, a], c, u) => {
12
+ !s || !n || (a ? (t ?? (t = J(() => n.resize(), 16)), oe(s, t)) : S(s, t), u(() => S(s, t)));
13
13
  }
14
14
  );
15
15
  }
16
- const F = /* @__PURE__ */ new Map();
17
- function k(e, o, t) {
16
+ const h = /* @__PURE__ */ new Map();
17
+ function oe(e, o, r) {
18
18
  if (!(!e || !o))
19
- if (F.has(e))
20
- F.get(e).listeners.push(o);
19
+ if (h.has(e))
20
+ h.get(e).listeners.push(o);
21
21
  else {
22
- const r = [o], n = new ResizeObserver((a) => {
23
- a.forEach((l) => r.forEach((f) => f(l)));
22
+ const t = [o], s = new ResizeObserver((n) => {
23
+ n.forEach((a) => t.forEach((c) => c(a)));
24
24
  });
25
- n.observe(e, t), F.set(e, { listeners: r, ro: n });
25
+ s.observe(e, r), h.set(e, { listeners: t, ro: s });
26
26
  }
27
27
  }
28
- function y(e, o) {
29
- if (!e || !o || !F.has(e))
28
+ function S(e, o) {
29
+ if (!e || !o || !h.has(e))
30
30
  return;
31
- const { listeners: t, ro: r } = F.get(e), n = t.indexOf(o);
32
- n > -1 && (t.splice(n, 1), t.length === 0 && (r.disconnect(), F.delete(e)));
31
+ const { listeners: r, ro: t } = h.get(e), s = r.indexOf(o);
32
+ s > -1 && (r.splice(s, 1), r.length === 0 && (t.disconnect(), h.delete(e)));
33
33
  }
34
- function ee(e) {
35
- const o = m(), t = m(), r = m(), n = p(() => c(e).autoResize ?? !0), a = p(() => c(e).group), l = p(() => c(e).initOption), f = p(() => c(e).loading), d = p(() => c(e).setOptionOpts), v = p(() => c(e).theme ?? "seer"), x = () => {
36
- const i = o.value;
37
- if (!i)
34
+ const w = { text: "加载中..." };
35
+ function ne(e, o) {
36
+ const r = g(), t = g(), s = g(), n = p(() => f(e).autoResize ?? !0), a = p(() => f(e).group), c = p(() => f(e).initOption), u = p(() => f(e).loading), d = p(() => f(e).setOptionOpts), x = p(() => f(e).theme ?? "seer"), v = () => {
37
+ const l = r.value;
38
+ if (!l)
38
39
  return;
39
- const s = q(i, v.value, l.value), u = c(e), { restOptions: O, events: w } = R(u, !1);
40
- s.setOption(O, d.value), r.value = A(O), w.forEach(([D, E, z]) => {
41
- let h = E;
42
- z && (h = (...L) => {
43
- E(...L), s.off(D, h);
44
- }), s.on(D, h);
45
- }), u.onReady && u.onReady(s), t.value = s;
46
- }, C = () => {
40
+ const i = K(l, x.value, c.value), F = f(e), { restOptions: D, events: T } = L(F, o, !1);
41
+ i.setOption(D, d.value), s.value = R(D), T.forEach(([E, A, W]) => {
42
+ let m = A;
43
+ W && (m = (...I) => {
44
+ A(...I), i.off(E, m);
45
+ }), i.on(E, m);
46
+ });
47
+ const b = F.onReady || (o == null ? void 0 : o.ready);
48
+ b && b(i), t.value = i;
49
+ }, O = () => {
47
50
  t.value && (t.value.dispose(), t.value = void 0);
48
51
  };
49
- return H(() => x()), N(() => C()), g(
50
- () => c(e),
51
- (i) => {
52
- const s = t.value;
53
- if (!s)
52
+ return Z(() => v()), _(() => O()), C(
53
+ () => f(e),
54
+ (l) => {
55
+ const i = t.value;
56
+ if (!i)
54
57
  return;
55
- const { restOptions: u } = R(i);
56
- K(u, r.value) || (s.setOption(u, d.value), r.value = A(u));
58
+ const { restOptions: F } = L(l);
59
+ Y(F, s.value) || (i.setOption(F, d.value), s.value = R(F));
57
60
  },
58
61
  {
59
62
  deep: !0
60
63
  }
61
- ), g([v, l], () => {
62
- C(), x();
63
- }), b(() => {
64
- const i = a.value;
65
- i && t.value && (t.value.group = i);
66
- }), b(() => {
67
- const i = t.value;
68
- if (!i)
64
+ ), C([x, c], () => {
65
+ O(), v();
66
+ }), y(() => {
67
+ const l = a.value;
68
+ l && t.value && (t.value.group = l);
69
+ }), y(() => {
70
+ const l = t.value;
71
+ if (!l)
69
72
  return;
70
- const s = f.value;
71
- s ? i.showLoading(Q(s) ? s : void 0) : i.hideLoading();
72
- }), Y(o, t, n), { containerRef: o, chartRef: t };
73
+ const i = u.value;
74
+ i ? l.showLoading(k(i) ? w : { ...w, ...i }) : l.hideLoading();
75
+ }), te(r, t, n), { containerRef: r, chartRef: t };
73
76
  }
74
- function te(e) {
77
+ function re(e) {
75
78
  return /^on[^a-z]/.test(e);
76
79
  }
77
- const oe = [
80
+ const se = [
78
81
  "class",
79
82
  "style",
80
83
  "autoResize",
@@ -84,25 +87,53 @@ const oe = [
84
87
  "theme",
85
88
  "onReady"
86
89
  ];
87
- function R(e, o = !0) {
88
- const t = {}, r = [];
90
+ function L(e, o = {}, r = !0) {
91
+ const t = {}, s = [];
89
92
  return Object.keys(e).forEach((n) => {
90
- if (!oe.includes(n)) {
91
- if (te(n)) {
92
- if (o)
93
+ if (!se.includes(n)) {
94
+ if (re(n)) {
95
+ if (r)
93
96
  return;
94
97
  const a = e[n];
95
98
  if (a) {
96
- const l = n.endsWith("Once"), f = l ? n.length - 4 : void 0, d = n.charAt(2).toLowerCase() + n.substring(3, f);
97
- r.push([d, a, l]);
99
+ const c = n.endsWith("Once"), u = c ? n.length - 4 : void 0, d = n.charAt(2).toLowerCase() + n.substring(3, u);
100
+ s.push([d, a, c]);
98
101
  }
99
102
  return;
100
103
  }
101
104
  t[n] = e[n];
102
105
  }
103
- }), { restOptions: t, events: r };
106
+ }), z && !r && Object.keys(o).forEach((n) => {
107
+ if (n !== "ready")
108
+ return;
109
+ const a = o[n];
110
+ if (a) {
111
+ const c = n.startsWith("~"), u = c ? 1 : 0, d = n.substring(u);
112
+ s.push([d, a, c]);
113
+ }
114
+ }), { restOptions: t, events: s };
104
115
  }
105
- const ne = [
116
+ const B = q({
117
+ name: "IxChart",
118
+ inheritAttrs: !1,
119
+ // @ts-ignore
120
+ setup(e, { attrs: o, listeners: r }) {
121
+ const { containerRef: t } = ne(o, r);
122
+ return { containerRef: t };
123
+ },
124
+ render() {
125
+ const { class: e, style: o } = this.$attrs;
126
+ return $("div", {
127
+ ref: "containerRef",
128
+ class: e,
129
+ style: {
130
+ width: "100%",
131
+ height: "100%",
132
+ ...o
133
+ }
134
+ });
135
+ }
136
+ }), ie = [
106
137
  "#458FFF",
107
138
  "#45D9A3",
108
139
  "#FFC145",
@@ -114,7 +145,7 @@ const ne = [
114
145
  "#F587B3",
115
146
  "#8352CC",
116
147
  "#65779B"
117
- ], pe = [
148
+ ], he = [
118
149
  "#458FFF",
119
150
  "#C8DEFF",
120
151
  "#45D9A3",
@@ -137,8 +168,16 @@ const ne = [
137
168
  "#FCDBE8",
138
169
  "#65779B",
139
170
  "#65779B"
140
- ], re = {
141
- color: ne,
171
+ ], me = [
172
+ "#8C1604",
173
+ "#DB4C35",
174
+ "#FF9245",
175
+ "#FFC145",
176
+ "#689FFF",
177
+ "#45D9A3",
178
+ "#99ACD1"
179
+ ], ae = {
180
+ color: ie,
142
181
  textStyle: {
143
182
  color: "#2F3540",
144
183
  fontSize: "12px"
@@ -159,7 +198,6 @@ const ne = [
159
198
  },
160
199
  pie: {
161
200
  avoidLabelOverlap: !1,
162
- center: ["25%", "50%"],
163
201
  radius: ["70%", "80%"],
164
202
  itemStyle: {
165
203
  borderWidth: 1,
@@ -176,7 +214,7 @@ const ne = [
176
214
  itemWidth: 12,
177
215
  itemHeight: 12,
178
216
  textStyle: {
179
- color: "#2F3540",
217
+ color: "#6F7785",
180
218
  fontSize: "12px"
181
219
  }
182
220
  },
@@ -184,7 +222,7 @@ const ne = [
184
222
  itemGap: 4,
185
223
  textStyle: {
186
224
  color: "#2F3540",
187
- fontSize: "14px",
225
+ fontSize: "12px",
188
226
  fontWeight: 500
189
227
  },
190
228
  subtextStyle: {
@@ -199,7 +237,7 @@ const ne = [
199
237
  color: "#2F3540"
200
238
  },
201
239
  axisPointer: {
202
- z: -100,
240
+ z: 1,
203
241
  lineStyle: {
204
242
  type: "solid",
205
243
  color: "#E1E5EB"
@@ -254,64 +292,49 @@ const ne = [
254
292
  }
255
293
  },
256
294
  dataZoom: {
257
- height: 20
295
+ height: 16
258
296
  }
259
297
  };
260
- function Fe(e) {
298
+ function ge(e) {
261
299
  return !!(e && e.xAxis && e.xAxis.data);
262
300
  }
263
- function se(e, o) {
264
- const t = {
265
- ...e,
266
- ...o
267
- };
268
- return P ? { attrs: t } : t;
301
+ function Ce(e, o) {
302
+ return z ? { attrs: { ...e }, on: { ...o } } : { ...e };
269
303
  }
270
- function he(e) {
271
- return Object.entries(e).reduce((o, [t, r]) => (r !== void 0 && (o[t] = r), o), {});
304
+ function xe(e) {
305
+ return Object.entries(e).reduce((o, [r, t]) => (t !== void 0 && (o[r] = t), o), {});
272
306
  }
273
- function me(e) {
274
- return X(e) ? [] : Array.isArray(e) ? e : [e];
307
+ function ve(e) {
308
+ return ee(e) ? [] : Array.isArray(e) ? e : [e];
275
309
  }
276
- function ie(e, o) {
277
- $(o), J("seer", re);
278
- const t = (r) => {
279
- r.component(e.name, e);
310
+ function ce(e, o) {
311
+ Q(o), X("seer", ae);
312
+ const r = (t) => {
313
+ t.component(e.name, e);
280
314
  };
281
- e.install = t;
315
+ e.install = r;
282
316
  }
283
- const S = U({
284
- name: "IxChart",
285
- inheritAttrs: !1,
286
- setup(e, { attrs: o }) {
287
- const { containerRef: t } = ee(o);
288
- return { containerRef: t };
289
- },
290
- render() {
291
- const { class: e, style: o } = this.$attrs, t = se({ class: e, style: o });
292
- return Z("div", { ref: "containerRef", ...t });
293
- }
294
- });
295
- ie(S, [
296
- B,
297
- T,
298
- W,
299
- I,
317
+ ce(B, [
300
318
  G,
301
319
  M,
302
320
  j,
303
- V
321
+ N,
322
+ V,
323
+ H,
324
+ P,
325
+ U
304
326
  ]);
305
- const ge = S;
327
+ const Oe = B;
306
328
  export {
307
- ge as IxChart,
308
- me as convertArray,
309
- ie as createInstall,
310
- he as filterEmptyProps,
311
- Fe as isVertical,
312
- se as mergeAttrs,
313
- ne as seerColors,
314
- pe as seerColorsMore,
315
- re as seerTheme,
316
- ee as useChart
329
+ Oe as IxChart,
330
+ ve as convertArray,
331
+ ce as createInstall,
332
+ xe as filterEmptyProps,
333
+ ge as isVertical,
334
+ Ce as mergeAttrs,
335
+ ie as seerColors,
336
+ he as seerColorsForMore,
337
+ me as seerColorsForRisk,
338
+ ae as seerTheme,
339
+ ne as useChart
317
340
  };
@@ -1 +1 @@
1
- (function(o,l){typeof exports=="object"&&typeof module<"u"?l(exports,require("echarts/components"),require("echarts/features"),require("echarts/renderers"),require("vue-demi"),require("echarts/core"),require("lodash-es")):typeof define=="function"&&define.amd?define(["exports","echarts/components","echarts/features","echarts/renderers","vue-demi","echarts/core","lodash-es"],l):(o=typeof globalThis<"u"?globalThis:o||self,l(o.IduxChartsCore={},o.echarts,o.echarts,o.echarts,o.VueDemi,o.echarts,o._))})(this,function(o,l,x,q,r,g,C){"use strict";function W(e,n,t){let i;r.watch([e,n,t],([s,f,u],p,F)=>{!s||!f||(u?(i??(i=g.throttle(()=>f.resize(),16)),M(s,i)):y(s,i),F(()=>y(s,i)))})}const h=new Map;function M(e,n,t){if(!(!e||!n))if(h.has(e))h.get(e).listeners.push(n);else{const i=[n],s=new ResizeObserver(f=>{f.forEach(u=>i.forEach(p=>p(u)))});s.observe(e,t),h.set(e,{listeners:i,ro:s})}}function y(e,n){if(!e||!n||!h.has(e))return;const{listeners:t,ro:i}=h.get(e),s=t.indexOf(n);s>-1&&(t.splice(s,1),t.length===0&&(i.disconnect(),h.delete(e)))}function A(e){const n=r.shallowRef(),t=r.shallowRef(),i=r.shallowRef(),s=r.computed(()=>r.unref(e).autoResize??!0),f=r.computed(()=>r.unref(e).group),u=r.computed(()=>r.unref(e).initOption),p=r.computed(()=>r.unref(e).loading),F=r.computed(()=>r.unref(e).setOptionOpts),z=r.computed(()=>r.unref(e).theme??"seer"),L=()=>{const c=n.value;if(!c)return;const a=g.init(c,z.value,u.value),d=r.unref(e),{restOptions:T,events:U}=m(d,!1);a.setOption(T,F.value),i.value=C.cloneDeep(T),U.forEach(([v,I,Z])=>{let O=I;Z&&(O=(...$)=>{I(...$),a.off(v,O)}),a.on(v,O)}),d.onReady&&d.onReady(a),t.value=a},B=()=>{t.value&&(t.value.dispose(),t.value=void 0)};return r.onMounted(()=>L()),r.onBeforeUnmount(()=>B()),r.watch(()=>r.unref(e),c=>{const a=t.value;if(!a)return;const{restOptions:d}=m(c);C.isEqual(d,i.value)||(a.setOption(d,F.value),i.value=C.cloneDeep(d))},{deep:!0}),r.watch([z,u],()=>{B(),L()}),r.watchEffect(()=>{const c=f.value;c&&t.value&&(t.value.group=c)}),r.watchEffect(()=>{const c=t.value;if(!c)return;const a=p.value;a?c.showLoading(C.isObject(a)?a:void 0):c.hideLoading()}),W(n,t,s),{containerRef:n,chartRef:t}}function j(e){return/^on[^a-z]/.test(e)}const G=["class","style","autoResize","group","loading","setOptionOpts","theme","onReady"];function m(e,n=!0){const t={},i=[];return Object.keys(e).forEach(s=>{if(!G.includes(s)){if(j(s)){if(n)return;const f=e[s];if(f){const u=s.endsWith("Once"),p=u?s.length-4:void 0,F=s.charAt(2).toLowerCase()+s.substring(3,p);i.push([F,f,u])}return}t[s]=e[s]}}),{restOptions:t,events:i}}const E=["#458FFF","#45D9A3","#FFC145","#F5654F","#6A6AFD","#6ED1FF","#008787","#FF9245","#F587B3","#8352CC","#65779B"],V=["#458FFF","#C8DEFF","#45D9A3","#C8F4E4","#FFC145","#FFEDC8","#F5654F","#FCD1CB","#6A6AFD","#D3D3FE","#6ED1FF","#D3D3FE","#008787","#B3DBDB","#FF9245","#FFDFC8","#F587B3","#FCDBE8","#8352CC","#FCDBE8","#65779B","#65779B"],w={color:E,textStyle:{color:"#2F3540",fontSize:"12px"},bar:{barGap:.2,barWidth:10,label:{color:"#6F7785",position:"top"}},line:{label:{color:"#6F7785",position:"top"}},pie:{avoidLabelOverlap:!1,center:["25%","50%"],radius:["70%","80%"],itemStyle:{borderWidth:1,borderColor:"#fff"},label:{show:!1,color:"#2F3540",formatter:"{c}",position:"inside"}},legend:{itemWidth:12,itemHeight:12,textStyle:{color:"#2F3540",fontSize:"12px"}},title:{itemGap:4,textStyle:{color:"#2F3540",fontSize:"14px",fontWeight:500},subtextStyle:{color:"#6F7785",fontSize:"12px"}},tooltip:{borderWidth:0,padding:12,textStyle:{color:"#2F3540"},axisPointer:{z:-100,lineStyle:{type:"solid",color:"#E1E5EB"}}},categoryAxis:{axisLine:{show:!0,lineStyle:{color:"#EDF1F7"}},axisTick:{show:!0,alignWithLabel:!0,lineStyle:{color:"#EDF1F7"}},axisLabel:{color:"#6F7785"},splitLine:{show:!1},splitArea:{show:!1}},valueAxis:{axisLine:{show:!1},axisTick:{show:!1},axisLabel:{color:"#6F7785"},splitLine:{lineStyle:{color:"#EDF1F7"}},splitArea:{show:!1},nameTextStyle:{color:"#6F7785",padding:[0,30,-4,0]}},dataZoom:{height:20}};function P(e){return!!(e&&e.xAxis&&e.xAxis.data)}function b(e,n){const t={...e,...n};return r.isVue2?{attrs:t}:t}function _(e){return Object.entries(e).reduce((n,[t,i])=>(i!==void 0&&(n[t]=i),n),{})}function H(e){return C.isNil(e)?[]:Array.isArray(e)?e:[e]}function R(e,n){g.use(n),g.registerTheme("seer",w);const t=i=>{i.component(e.name,e)};e.install=t}const S=r.defineComponent({name:"IxChart",inheritAttrs:!1,setup(e,{attrs:n}){const{containerRef:t}=A(n);return{containerRef:t}},render(){const{class:e,style:n}=this.$attrs,t=b({class:e,style:n});return r.h("div",{ref:"containerRef",...t})}});R(S,[l.DataZoomComponent,l.LegendComponent,l.GridComponent,l.TitleComponent,l.TooltipComponent,x.LabelLayout,x.UniversalTransition,q.SVGRenderer]);const N=S;o.IxChart=N,o.convertArray=H,o.createInstall=R,o.filterEmptyProps=_,o.isVertical=P,o.mergeAttrs=b,o.seerColors=E,o.seerColorsMore=V,o.seerTheme=w,o.useChart=A,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
1
+ (function(o,d){typeof exports=="object"&&typeof module<"u"?d(exports,require("echarts/components"),require("echarts/features"),require("echarts/renderers"),require("vue-demi"),require("echarts/core"),require("lodash-es")):typeof define=="function"&&define.amd?define(["exports","echarts/components","echarts/features","echarts/renderers","vue-demi","echarts/core","lodash-es"],d):(o=typeof globalThis<"u"?globalThis:o||self,d(o.IduxChartsCore={},o.echarts,o.echarts,o.echarts,o.VueDemi,o.echarts,o._))})(this,function(o,d,y,M,r,O,g){"use strict";function V(e,n,i){let t;r.watch([e,n,i],([a,s,l],f,h)=>{!a||!s||(l?(t??(t=O.throttle(()=>s.resize(),16)),j(a,t)):A(a,t),h(()=>A(a,t)))})}const F=new Map;function j(e,n,i){if(!(!e||!n))if(F.has(e))F.get(e).listeners.push(n);else{const t=[n],a=new ResizeObserver(s=>{s.forEach(l=>t.forEach(f=>f(l)))});a.observe(e,i),F.set(e,{listeners:t,ro:a})}}function A(e,n){if(!e||!n||!F.has(e))return;const{listeners:i,ro:t}=F.get(e),a=i.indexOf(n);a>-1&&(i.splice(a,1),i.length===0&&(t.disconnect(),F.delete(e)))}const w={text:"加载中..."};function E(e,n){const i=r.shallowRef(),t=r.shallowRef(),a=r.shallowRef(),s=r.computed(()=>r.unref(e).autoResize??!0),l=r.computed(()=>r.unref(e).group),f=r.computed(()=>r.unref(e).initOption),h=r.computed(()=>r.unref(e).loading),p=r.computed(()=>r.unref(e).setOptionOpts),z=r.computed(()=>r.unref(e).theme??"seer"),B=()=>{const u=i.value;if(!u)return;const c=O.init(u,z.value,f.value),C=r.unref(e),{restOptions:I,events:J}=R(C,n,!1);c.setOption(I,p.value),a.value=g.cloneDeep(I),J.forEach(([q,v,K])=>{let x=v;K&&(x=(...Q)=>{v(...Q),c.off(q,x)}),c.on(q,x)});const W=C.onReady||(n==null?void 0:n.ready);W&&W(c),t.value=c},T=()=>{t.value&&(t.value.dispose(),t.value=void 0)};return r.onMounted(()=>B()),r.onBeforeUnmount(()=>T()),r.watch(()=>r.unref(e),u=>{const c=t.value;if(!c)return;const{restOptions:C}=R(u);g.isEqual(C,a.value)||(c.setOption(C,p.value),a.value=g.cloneDeep(C))},{deep:!0}),r.watch([z,f],()=>{T(),B()}),r.watchEffect(()=>{const u=l.value;u&&t.value&&(t.value.group=u)}),r.watchEffect(()=>{const u=t.value;if(!u)return;const c=h.value;c?u.showLoading(g.isBoolean(c)?w:{...w,...c}):u.hideLoading()}),V(i,t,s),{containerRef:i,chartRef:t}}function G(e){return/^on[^a-z]/.test(e)}const P=["class","style","autoResize","group","loading","setOptionOpts","theme","onReady"];function R(e,n={},i=!0){const t={},a=[];return Object.keys(e).forEach(s=>{if(!P.includes(s)){if(G(s)){if(i)return;const l=e[s];if(l){const f=s.endsWith("Once"),h=f?s.length-4:void 0,p=s.charAt(2).toLowerCase()+s.substring(3,h);a.push([p,l,f])}return}t[s]=e[s]}}),r.isVue2&&!i&&Object.keys(n).forEach(s=>{if(s!=="ready")return;const l=n[s];if(l){const f=s.startsWith("~"),h=f?1:0,p=s.substring(h);a.push([p,l,f])}}),{restOptions:t,events:a}}const b=r.defineComponent({name:"IxChart",inheritAttrs:!1,setup(e,{attrs:n,listeners:i}){const{containerRef:t}=E(n,i);return{containerRef:t}},render(){const{class:e,style:n}=this.$attrs;return r.h("div",{ref:"containerRef",class:e,style:{width:"100%",height:"100%",...n}})}}),m=["#458FFF","#45D9A3","#FFC145","#F5654F","#6A6AFD","#6ED1FF","#008787","#FF9245","#F587B3","#8352CC","#65779B"],N=["#458FFF","#C8DEFF","#45D9A3","#C8F4E4","#FFC145","#FFEDC8","#F5654F","#FCD1CB","#6A6AFD","#D3D3FE","#6ED1FF","#D3D3FE","#008787","#B3DBDB","#FF9245","#FFDFC8","#F587B3","#FCDBE8","#8352CC","#FCDBE8","#65779B","#65779B"],_=["#8C1604","#DB4C35","#FF9245","#FFC145","#689FFF","#45D9A3","#99ACD1"],S={color:m,textStyle:{color:"#2F3540",fontSize:"12px"},bar:{barGap:.2,barWidth:10,label:{color:"#6F7785",position:"top"}},line:{label:{color:"#6F7785",position:"top"}},pie:{avoidLabelOverlap:!1,radius:["70%","80%"],itemStyle:{borderWidth:1,borderColor:"#fff"},label:{show:!1,color:"#2F3540",formatter:"{c}",position:"inside"}},legend:{itemWidth:12,itemHeight:12,textStyle:{color:"#6F7785",fontSize:"12px"}},title:{itemGap:4,textStyle:{color:"#2F3540",fontSize:"12px",fontWeight:500},subtextStyle:{color:"#6F7785",fontSize:"12px"}},tooltip:{borderWidth:0,padding:12,textStyle:{color:"#2F3540"},axisPointer:{z:1,lineStyle:{type:"solid",color:"#E1E5EB"}}},categoryAxis:{axisLine:{show:!0,lineStyle:{color:"#EDF1F7"}},axisTick:{show:!0,alignWithLabel:!0,lineStyle:{color:"#EDF1F7"}},axisLabel:{color:"#6F7785"},splitLine:{show:!1},splitArea:{show:!1}},valueAxis:{axisLine:{show:!1},axisTick:{show:!1},axisLabel:{color:"#6F7785"},splitLine:{lineStyle:{color:"#EDF1F7"}},splitArea:{show:!1},nameTextStyle:{color:"#6F7785",padding:[0,30,-4,0]}},dataZoom:{height:16}};function H(e){return!!(e&&e.xAxis&&e.xAxis.data)}function U(e,n){return r.isVue2?{attrs:{...e},on:{...n}}:{...e}}function Z(e){return Object.entries(e).reduce((n,[i,t])=>(t!==void 0&&(n[i]=t),n),{})}function D(e){return g.isNil(e)?[]:Array.isArray(e)?e:[e]}function L(e,n){O.use(n),O.registerTheme("seer",S);const i=t=>{t.component(e.name,e)};e.install=i}L(b,[d.DataZoomComponent,d.LegendComponent,d.GridComponent,d.TitleComponent,d.TooltipComponent,y.LabelLayout,y.UniversalTransition,M.SVGRenderer]);const $=b;o.IxChart=$,o.convertArray=D,o.createInstall=L,o.filterEmptyProps=Z,o.isVertical=H,o.mergeAttrs=U,o.seerColors=m,o.seerColorsForMore=N,o.seerColorsForRisk=_,o.seerTheme=S,o.useChart=E,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
@@ -1,5 +1,6 @@
1
1
  export declare const seerColors: string[];
2
- export declare const seerColorsMore: string[];
2
+ export declare const seerColorsForMore: string[];
3
+ export declare const seerColorsForRisk: string[];
3
4
  export declare const seerTheme: {
4
5
  color: string[];
5
6
  textStyle: {
@@ -22,7 +23,6 @@ export declare const seerTheme: {
22
23
  };
23
24
  pie: {
24
25
  avoidLabelOverlap: boolean;
25
- center: string[];
26
26
  radius: string[];
27
27
  itemStyle: {
28
28
  borderWidth: number;
@@ -3,7 +3,7 @@ export type Writeable<T> = {
3
3
  -readonly [P in keyof T]: T[P];
4
4
  };
5
5
  export declare function isVertical(option: any): boolean;
6
- export declare function mergeAttrs(props: any, attrs?: any): any;
6
+ export declare function mergeAttrs(props: any, listeners?: Record<string, Function>): any;
7
7
  export declare function filterEmptyProps<T extends object>(props: T): T;
8
8
  export declare function convertArray<T>(value: T | undefined | null | Array<T | undefined | null>): T[];
9
9
  export declare function convertArray<T>(value: T | readonly T[]): readonly T[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idux/charts-core",
3
- "version": "0.3.0",
3
+ "version": "0.4.1",
4
4
  "description": "A UI Component Development Kit for Vue 3.x",
5
5
  "keywords": [
6
6
  "vue",