Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
半栈学徒
incubator-echarts
提交
53ca7a13
I
incubator-echarts
项目概览
半栈学徒
/
incubator-echarts
与 Fork 源项目一致
从无法访问的项目Fork
通知
5
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
I
incubator-echarts
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
53ca7a13
编写于
3月 15, 2020
作者:
P
pissang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ts: add types for calendar component
上级
b49ce0d3
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
502 addition
and
263 deletion
+502
-263
src/chart/heatmap/HeatmapView.ts
src/chart/heatmap/HeatmapView.ts
+3
-2
src/chart/line/poly.ts
src/chart/line/poly.ts
+13
-6
src/component/calendar/CalendarView.ts
src/component/calendar/CalendarView.ts
+89
-50
src/coord/calendar/Calendar.ts
src/coord/calendar/Calendar.ts
+227
-162
src/coord/calendar/CalendarModel.ts
src/coord/calendar/CalendarModel.ts
+163
-37
src/coord/calendar/prepareCustom.ts
src/coord/calendar/prepareCustom.ts
+4
-3
src/echarts.ts
src/echarts.ts
+2
-2
src/util/types.ts
src/util/types.ts
+1
-1
未找到文件。
src/chart/heatmap/HeatmapView.ts
浏览文件 @
53ca7a13
...
...
@@ -30,7 +30,8 @@ import type PiecewiseModel from '../../component/visualMap/PiecewiseModel';
import
type
ContinuousModel
from
'
../../component/visualMap/ContinuousModel
'
;
import
{
CoordinateSystem
,
isCoordinateSystemType
}
from
'
../../coord/CoordinateSystem
'
;
import
{
StageHandlerProgressParams
,
Dictionary
,
OptionDataValue
}
from
'
../../util/types
'
;
import
Cartesian2D
from
'
../../coord/cartesian/Cartesian2D
'
;
import
type
Cartesian2D
from
'
../../coord/cartesian/Cartesian2D
'
;
import
type
Calendar
from
'
../../coord/calendar/Calendar
'
;
// Coord can be 'geo' 'bmap' 'amap' 'leaflet'...
interface
GeoLikeCoordSys
extends
CoordinateSystem
{
...
...
@@ -158,7 +159,7 @@ class HeatmapView extends ChartView {
incremental
?:
boolean
)
{
var
coordSys
=
seriesModel
.
coordinateSystem
;
var
coordSys
=
seriesModel
.
coordinateSystem
as
Cartesian2D
|
Calendar
;
var
width
;
var
height
;
...
...
src/chart/line/poly.ts
浏览文件 @
53ca7a13
...
...
@@ -51,12 +51,19 @@ function drawSegment(
smoothMonotone
:
'
x
'
|
'
y
'
|
'
none
'
,
connectNulls
:
boolean
)
{
if
(
smoothMonotone
===
'
none
'
||
!
smoothMonotone
)
{
return
drawNonMono
.
apply
(
null
,
arguments
as
any
);
}
else
{
return
drawMono
.
apply
(
null
,
arguments
as
any
);
}
return
((
smoothMonotone
===
'
none
'
||
!
smoothMonotone
)
?
drawNonMono
:
drawMono
)(
ctx
,
points
,
start
,
segLen
,
allLen
,
dir
,
smoothMin
,
smoothMax
,
smooth
,
smoothMonotone
,
connectNulls
);
}
/**
...
...
src/component/calendar/CalendarView.ts
浏览文件 @
53ca7a13
...
...
@@ -17,13 +17,17 @@
* under the License.
*/
// @ts-nocheck
import
*
as
echarts
from
'
../../echarts
'
;
import
*
as
zrUtil
from
'
zrender/src/core/util
'
;
import
*
as
graphic
from
'
../../util/graphic
'
;
import
*
as
formatUtil
from
'
../../util/format
'
;
import
*
as
numberUtil
from
'
../../util/number
'
;
import
CalendarModel
from
'
../../coord/calendar/CalendarModel
'
;
import
{
CalendarParsedDateRangeInfo
,
CalendarParsedDateInfo
}
from
'
../../coord/calendar/Calendar
'
;
import
GlobalModel
from
'
../../model/Global
'
;
import
ExtensionAPI
from
'
../../ExtensionAPI
'
;
import
{
LayoutOrient
,
OptionDataValueDate
,
ZRTextAlign
,
ZRTextVerticalAlign
}
from
'
../../util/types
'
;
import
ComponentView
from
'
../../view/Component
'
;
import
{
StyleProps
}
from
'
zrender/src/graphic/Style
'
;
var
MONTH_TEXT
=
{
EN
:
[
...
...
@@ -45,35 +49,32 @@ var WEEK_TEXT = {
CN
:
[
'
日
'
,
'
一
'
,
'
二
'
,
'
三
'
,
'
四
'
,
'
五
'
,
'
六
'
]
};
export
default
echarts
.
extendComponentView
(
{
class
CalendarView
extends
ComponentView
{
type
:
'
calendar
'
,
static
type
=
'
calendar
'
type
=
CalendarView
.
type
/**
* top/left line points
* @private
*/
_tlpoints
:
null
,
private
_tlpoints
:
number
[][]
/**
* bottom/right line points
* @private
*/
_blpoints
:
null
,
private
_blpoints
:
number
[][]
/**
* first day of month
* @private
*/
_firstDayOfMonth
:
null
,
private
_firstDayOfMonth
:
CalendarParsedDateInfo
[]
/**
* first day point of month
* @private
*/
_firstDayPoints
:
null
,
private
_firstDayPoints
:
number
[][]
render
:
function
(
calendarModel
,
ecModel
,
api
)
{
render
(
calendarModel
:
CalendarModel
,
ecModel
:
GlobalModel
,
api
:
ExtensionAPI
)
{
var
group
=
this
.
group
;
...
...
@@ -95,10 +96,10 @@ export default echarts.extendComponentView({
this
.
_renderMonthText
(
calendarModel
,
orient
,
group
);
this
.
_renderWeekText
(
calendarModel
,
rangeData
,
orient
,
group
);
}
,
}
// render day rect
_renderDayRect
:
function
(
calendarModel
,
rangeData
,
g
roup
)
{
_renderDayRect
(
calendarModel
:
CalendarModel
,
rangeData
:
CalendarParsedDateRangeInfo
,
group
:
graphic
.
G
roup
)
{
var
coordSys
=
calendarModel
.
coordinateSystem
;
var
itemRectStyleModel
=
calendarModel
.
getModel
(
'
itemStyle
'
).
getItemStyle
();
var
sw
=
coordSys
.
getCellWidth
();
...
...
@@ -126,17 +127,22 @@ export default echarts.extendComponentView({
group
.
add
(
rect
);
}
}
,
}
// render separate line
_renderLines
:
function
(
calendarModel
,
rangeData
,
orient
,
group
)
{
_renderLines
(
calendarModel
:
CalendarModel
,
rangeData
:
CalendarParsedDateRangeInfo
,
orient
:
LayoutOrient
,
group
:
graphic
.
Group
)
{
var
self
=
this
;
var
coordSys
=
calendarModel
.
coordinateSystem
;
var
lineStyleModel
=
calendarModel
.
getModel
(
'
splitLine.lineStyle
'
).
getLineStyle
();
var
show
=
calendarModel
.
get
(
'
splitLine.show
'
);
var
lineStyleModel
=
calendarModel
.
getModel
(
[
'
splitLine
'
,
'
lineStyle
'
]
).
getLineStyle
();
var
show
=
calendarModel
.
get
(
[
'
splitLine
'
,
'
show
'
]
);
var
lineWidth
=
lineStyleModel
.
lineWidth
;
...
...
@@ -162,7 +168,7 @@ export default echarts.extendComponentView({
addPoints
(
coordSys
.
getNextNDay
(
rangeData
.
end
.
time
,
1
).
formatedDate
);
function
addPoints
(
date
)
{
function
addPoints
(
date
:
OptionDataValueDate
)
{
self
.
_firstDayOfMonth
.
push
(
coordSys
.
getDateInfo
(
date
));
self
.
_firstDayPoints
.
push
(
coordSys
.
dataToRect
([
date
],
false
).
tl
);
...
...
@@ -182,10 +188,10 @@ export default echarts.extendComponentView({
// render bottom/right line
show
&&
this
.
_drawSplitline
(
self
.
_getEdgesPoints
(
self
.
_blpoints
,
lineWidth
,
orient
),
lineStyleModel
,
group
);
}
,
}
// get points at both ends
_getEdgesPoints
:
function
(
points
,
lineWidth
,
o
rient
)
{
_getEdgesPoints
(
points
:
number
[][],
lineWidth
:
number
,
orient
:
LayoutO
rient
)
{
var
rs
=
[
points
[
0
].
slice
(),
points
[
points
.
length
-
1
].
slice
()];
var
idx
=
orient
===
'
horizontal
'
?
0
:
1
;
...
...
@@ -194,33 +200,33 @@ export default echarts.extendComponentView({
rs
[
1
][
idx
]
=
rs
[
1
][
idx
]
+
lineWidth
/
2
;
return
rs
;
}
,
}
// render split line
_drawSplitline
:
function
(
points
,
lineStyleModel
,
g
roup
)
{
_drawSplitline
(
points
:
number
[][],
lineStyle
:
StyleProps
,
group
:
graphic
.
G
roup
)
{
var
poyline
=
new
graphic
.
Polyline
({
z2
:
20
,
shape
:
{
points
:
points
},
style
:
lineStyle
Model
style
:
lineStyle
});
group
.
add
(
poyline
);
}
,
}
// render month line of one week points
_getLinePointsOfOneWeek
:
function
(
calendarModel
,
date
,
o
rient
)
{
_getLinePointsOfOneWeek
(
calendarModel
:
CalendarModel
,
date
:
OptionDataValueDate
,
orient
:
LayoutO
rient
)
{
var
coordSys
=
calendarModel
.
coordinateSystem
;
d
ate
=
coordSys
.
getDateInfo
(
date
);
var
parsedD
ate
=
coordSys
.
getDateInfo
(
date
);
var
points
=
[];
for
(
var
i
=
0
;
i
<
7
;
i
++
)
{
var
tmpD
=
coordSys
.
getNextNDay
(
d
ate
.
time
,
i
);
var
tmpD
=
coordSys
.
getNextNDay
(
parsedD
ate
.
time
,
i
);
var
point
=
coordSys
.
dataToRect
([
tmpD
.
time
],
false
);
points
[
2
*
tmpD
.
day
]
=
point
.
tl
;
...
...
@@ -229,9 +235,12 @@ export default echarts.extendComponentView({
return
points
;
}
,
}
_formatterLabel
:
function
(
formatter
,
params
)
{
_formatterLabel
<
T
extends
{
nameMap
:
string
}
>
(
formatter
:
string
|
((
params
:
T
)
=>
string
),
params
:
T
)
{
if
(
typeof
formatter
===
'
string
'
&&
formatter
)
{
return
formatUtil
.
formatTplSimple
(
formatter
,
params
);
...
...
@@ -243,12 +252,18 @@ export default echarts.extendComponentView({
return
params
.
nameMap
;
}
,
}
_yearTextPositionControl
:
function
(
textEl
,
point
,
orient
,
position
,
margin
)
{
_yearTextPositionControl
(
textEl
:
graphic
.
Text
,
point
:
number
[],
orient
:
LayoutOrient
,
position
:
'
left
'
|
'
right
'
|
'
top
'
|
'
bottom
'
,
margin
:
number
)
{
point
=
point
.
slice
();
var
aligns
=
[
'
center
'
,
'
bottom
'
];
var
aligns
:
[
ZRTextAlign
,
ZRTextVerticalAlign
]
=
[
'
center
'
,
'
bottom
'
];
if
(
position
===
'
bottom
'
)
{
point
[
1
]
+=
margin
;
...
...
@@ -278,10 +293,15 @@ export default echarts.extendComponentView({
textVerticalAlign
:
aligns
[
1
]
}
};
}
,
}
// render year
_renderYearText
:
function
(
calendarModel
,
rangeData
,
orient
,
group
)
{
_renderYearText
(
calendarModel
:
CalendarModel
,
rangeData
:
CalendarParsedDateRangeInfo
,
orient
:
LayoutOrient
,
group
:
graphic
.
Group
)
{
var
yearLabel
=
calendarModel
.
getModel
(
'
yearLabel
'
);
if
(
!
yearLabel
.
get
(
'
show
'
))
{
...
...
@@ -329,11 +349,17 @@ export default echarts.extendComponentView({
yearText
.
attr
(
this
.
_yearTextPositionControl
(
yearText
,
posPoints
[
pos
],
orient
,
pos
,
margin
));
group
.
add
(
yearText
);
}
,
}
_monthTextPositionControl
:
function
(
point
,
isCenter
,
orient
,
position
,
margin
)
{
var
align
=
'
left
'
;
var
vAlign
=
'
top
'
;
_monthTextPositionControl
(
point
:
number
[],
isCenter
:
boolean
,
orient
:
LayoutOrient
,
position
:
'
start
'
|
'
end
'
,
margin
:
number
)
{
var
align
:
ZRTextAlign
=
'
left
'
;
var
vAlign
:
ZRTextVerticalAlign
=
'
top
'
;
var
x
=
point
[
0
];
var
y
=
point
[
1
];
...
...
@@ -366,10 +392,10 @@ export default echarts.extendComponentView({
textAlign
:
align
,
textVerticalAlign
:
vAlign
};
}
,
}
// render month and year text
_renderMonthText
:
function
(
calendarModel
,
orient
,
g
roup
)
{
_renderMonthText
(
calendarModel
:
CalendarModel
,
orient
:
LayoutOrient
,
group
:
graphic
.
G
roup
)
{
var
monthLabel
=
calendarModel
.
getModel
(
'
monthLabel
'
);
if
(
!
monthLabel
.
get
(
'
show
'
))
{
...
...
@@ -384,7 +410,7 @@ export default echarts.extendComponentView({
var
termPoints
=
[
this
.
_tlpoints
,
this
.
_blpoints
];
if
(
zrUtil
.
isString
(
nameMap
))
{
nameMap
=
MONTH_TEXT
[
nameMap
.
toUpperCase
()]
||
[];
nameMap
=
MONTH_TEXT
[
nameMap
.
toUpperCase
()
as
'
CN
'
|
'
EN
'
]
||
[];
}
var
idx
=
pos
===
'
start
'
?
0
:
1
;
...
...
@@ -422,9 +448,15 @@ export default echarts.extendComponentView({
group
.
add
(
monthText
);
}
}
,
}
_weekTextPositionControl
:
function
(
point
,
orient
,
position
,
margin
,
cellSize
)
{
_weekTextPositionControl
(
point
:
number
[],
orient
:
LayoutOrient
,
position
:
'
start
'
|
'
end
'
,
margin
:
number
,
cellSize
:
number
[]
)
{
var
align
=
'
center
'
;
var
vAlign
=
'
middle
'
;
var
x
=
point
[
0
];
...
...
@@ -446,10 +478,15 @@ export default echarts.extendComponentView({
textAlign
:
align
,
textVerticalAlign
:
vAlign
};
}
,
}
// render weeks
_renderWeekText
:
function
(
calendarModel
,
rangeData
,
orient
,
group
)
{
_renderWeekText
(
calendarModel
:
CalendarModel
,
rangeData
:
CalendarParsedDateRangeInfo
,
orient
:
LayoutOrient
,
group
:
graphic
.
Group
)
{
var
dayLabel
=
calendarModel
.
getModel
(
'
dayLabel
'
);
if
(
!
dayLabel
.
get
(
'
show
'
))
{
...
...
@@ -463,7 +500,7 @@ export default echarts.extendComponentView({
var
firstDayOfWeek
=
coordSys
.
getFirstDayOfWeek
();
if
(
zrUtil
.
isString
(
nameMap
))
{
nameMap
=
WEEK_TEXT
[
nameMap
.
toUpperCase
()]
||
[];
nameMap
=
WEEK_TEXT
[
nameMap
.
toUpperCase
()
as
'
CN
'
|
'
EN
'
]
||
[];
}
var
start
=
coordSys
.
getNextNDay
(
...
...
@@ -495,4 +532,6 @@ export default echarts.extendComponentView({
group
.
add
(
weekText
);
}
}
});
\ No newline at end of file
}
ComponentView
.
registerClass
(
CalendarView
);
\ No newline at end of file
src/coord/calendar/Calendar.ts
浏览文件 @
53ca7a13
...
...
@@ -17,65 +17,138 @@
* under the License.
*/
// @ts-nocheck
import
*
as
zrUtil
from
'
zrender/src/core/util
'
;
import
*
as
layout
from
'
../../util/layout
'
;
import
*
as
numberUtil
from
'
../../util/number
'
;
import
CoordinateSystem
from
'
../../CoordinateSystem
'
;
import
{
BoundingRect
}
from
'
zrender/src/export
'
;
import
CalendarModel
from
'
./CalendarModel
'
;
import
GlobalModel
from
'
../../model/Global
'
;
import
ExtensionAPI
from
'
../../ExtensionAPI
'
;
import
{
LayoutOrient
,
ScaleDataValue
,
OptionDataValueDate
,
SeriesOption
,
SeriesOnCalendarOptionMixin
}
from
'
../../util/types
'
;
import
{
ParsedModelFinder
}
from
'
../../util/model
'
;
import
{
CoordinateSystem
,
CoordinateSystemMaster
}
from
'
../CoordinateSystem
'
;
import
{
__DEV__
}
from
'
../../config
'
;
import
SeriesModel
from
'
../../model/Series
'
;
import
CoordinateSystemManager
from
'
../../CoordinateSystem
'
;
import
{
RectLike
}
from
'
zrender/src/core/BoundingRect
'
;
// (24*60*60*1000)
var
PROXIMATE_ONE_DAY
=
86400000
;
/**
* Calendar
*
* @constructor
*
* @param {Object} calendarModel calendarModel
* @param {Object} ecModel ecModel
* @param {Object} api api
*/
function
Calendar
(
calendarModel
,
ecModel
,
api
)
{
this
.
_model
=
calendarModel
;
export
interface
CalendarParsedDateRangeInfo
{
range
:
[
string
,
string
],
start
:
CalendarParsedDateInfo
end
:
CalendarParsedDateInfo
allDay
:
number
weeks
:
number
nthWeek
:
number
fweek
:
number
lweek
:
number
}
export
interface
CalendarParsedDateInfo
{
/**
* local full year, eg., '1940'
*/
y
:
string
/**
* local month, from '01' ot '12',
*/
m
:
string
/**
* local date, from '01' to '31' (if exists),
*/
d
:
string
/**
* It is not date.getDay(). It is the location of the cell in a week, from 0 to 6,
*/
day
:
number
/**
* Timestamp
*/
time
:
number
/**
* yyyy-MM-dd
*/
formatedDate
:
string
/**
* The original date object
*/
date
:
Date
}
Calendar
.
prototype
=
{
export
interface
CalendarCellRect
{
contentShape
:
RectLike
center
:
number
[]
tl
:
number
[]
tr
:
number
[]
br
:
number
[]
bl
:
number
[]
}
constructor
:
Calendar
,
class
Calendar
implements
CoordinateSystem
,
CoordinateSystemMaster
{
type
:
'
calendar
'
,
static
readonly
dimensions
=
[
'
time
'
,
'
value
'
];
static
getDimensionInfo
()
{
return
[{
name
:
'
time
'
,
type
:
'
time
'
},
'
value
'
];
}
dimensions
:
[
'
time
'
,
'
value
'
],
readonly
type
=
'
calendar
'
readonly
dimensions
=
Calendar
.
dimensions
private
_model
:
CalendarModel
private
_rect
:
BoundingRect
;
private
_sw
:
number
private
_sh
:
number
private
_orient
:
LayoutOrient
private
_firstDayOfWeek
:
number
private
_rangeInfo
:
CalendarParsedDateRangeInfo
private
_lineWidth
:
number
constructor
(
calendarModel
:
CalendarModel
,
ecModel
:
GlobalModel
,
api
:
ExtensionAPI
)
{
this
.
_model
=
calendarModel
;
}
// Required in createListFromData
getDimensionsInfo
:
function
()
{
return
[{
name
:
'
time
'
,
type
:
'
time
'
},
'
value
'
];
},
getDimensionsInfo
=
Calendar
.
getDimensionInfo
getRangeInfo
:
function
()
{
getRangeInfo
()
{
return
this
.
_rangeInfo
;
}
,
}
getModel
:
function
()
{
getModel
()
{
return
this
.
_model
;
}
,
}
getRect
:
function
()
{
getRect
()
{
return
this
.
_rect
;
}
,
}
getCellWidth
:
function
()
{
getCellWidth
()
{
return
this
.
_sw
;
}
,
}
getCellHeight
:
function
()
{
getCellHeight
()
{
return
this
.
_sh
;
}
,
}
getOrient
:
function
()
{
getOrient
()
{
return
this
.
_orient
;
}
,
}
/**
* getFirstDayOfWeek
...
...
@@ -86,53 +159,42 @@ Calendar.prototype = {
*
* @return {number}
*/
getFirstDayOfWeek
:
function
()
{
getFirstDayOfWeek
()
{
return
this
.
_firstDayOfWeek
;
}
,
}
/**
* get date info
*
* @param {string|number} date date
* @return {Object}
* {
* y: string, local full year, eg., '1940',
* m: string, local month, from '01' ot '12',
* d: string, local date, from '01' to '31' (if exists),
* day: It is not date.getDay(). It is the location of the cell in a week, from 0 to 6,
* time: timestamp,
* formatedDate: string, yyyy-MM-dd,
* date: original date object.
* }
*/
getDateInfo
:
function
(
date
)
{
getDateInfo
(
date
:
OptionDataValueDate
):
CalendarParsedDateInfo
{
date
=
numberUtil
.
parseDate
(
date
);
var
y
=
date
.
getFullYear
();
var
m
=
date
.
getMonth
()
+
1
;
m
=
m
<
10
?
'
0
'
+
m
:
m
;
var
mStr
=
m
<
10
?
'
0
'
+
m
:
''
+
m
;
var
d
=
date
.
getDate
();
d
=
d
<
10
?
'
0
'
+
d
:
d
;
var
dStr
=
d
<
10
?
'
0
'
+
d
:
''
+
d
;
var
day
=
date
.
getDay
();
day
=
Math
.
abs
((
day
+
7
-
this
.
getFirstDayOfWeek
())
%
7
);
return
{
y
:
y
,
m
:
m
,
d
:
d
,
y
:
y
+
''
,
m
:
m
Str
,
d
:
d
Str
,
day
:
day
,
time
:
date
.
getTime
(),
formatedDate
:
y
+
'
-
'
+
m
+
'
-
'
+
d
,
formatedDate
:
y
+
'
-
'
+
m
Str
+
'
-
'
+
dStr
,
date
:
date
};
}
,
}
getNextNDay
:
function
(
date
,
n
)
{
getNextNDay
(
date
:
OptionDataValueDate
,
n
:
number
)
{
n
=
n
||
0
;
if
(
n
===
0
)
{
return
this
.
getDateInfo
(
date
);
...
...
@@ -142,9 +204,9 @@ Calendar.prototype = {
date
.
setDate
(
date
.
getDate
()
+
n
);
return
this
.
getDateInfo
(
date
);
}
,
}
update
:
function
(
ecModel
,
api
)
{
update
(
ecModel
:
GlobalModel
,
api
:
ExtensionAPI
)
{
this
.
_firstDayOfWeek
=
+
this
.
_model
.
getModel
(
'
dayLabel
'
).
get
(
'
firstDay
'
);
this
.
_orient
=
this
.
_model
.
get
(
'
orient
'
);
...
...
@@ -153,12 +215,12 @@ Calendar.prototype = {
this
.
_rangeInfo
=
this
.
_getRangeInfo
(
this
.
_initRangeOption
());
var
weeks
=
this
.
_rangeInfo
.
weeks
||
1
;
var
whNames
=
[
'
width
'
,
'
height
'
];
var
cellSize
=
this
.
_model
.
get
(
'
cellSize
'
).
slice
();
var
whNames
=
[
'
width
'
,
'
height
'
]
as
const
;
var
cellSize
=
this
.
_model
.
get
CellSize
(
).
slice
();
var
layoutParams
=
this
.
_model
.
getBoxLayoutParams
();
var
cellNumbers
=
this
.
_orient
===
'
horizontal
'
?
[
weeks
,
7
]
:
[
7
,
weeks
];
zrUtil
.
each
([
0
,
1
],
function
(
idx
)
{
zrUtil
.
each
([
0
,
1
]
as
const
,
function
(
idx
)
{
if
(
cellSizeSpecified
(
cellSize
,
idx
))
{
layoutParams
[
whNames
[
idx
]]
=
cellSize
[
idx
]
*
cellNumbers
[
idx
];
}
...
...
@@ -176,24 +238,20 @@ Calendar.prototype = {
}
});
function
cellSizeSpecified
(
cellSize
,
idx
)
{
function
cellSizeSpecified
(
cellSize
:
(
number
|
'
auto
'
)[],
idx
:
number
):
cellSize
is
number
[]
{
return
cellSize
[
idx
]
!=
null
&&
cellSize
[
idx
]
!==
'
auto
'
;
}
this
.
_sw
=
cellSize
[
0
];
this
.
_sh
=
cellSize
[
1
];
},
// Has been calculated out number.
this
.
_sw
=
cellSize
[
0
]
as
number
;
this
.
_sh
=
cellSize
[
1
]
as
number
;
}
/**
* Convert a time data(time, value) item to (x, y) point.
*
* @override
* @param {Array|number} data data
* @param {boolean} [clamp=true] out of range
* @return {Array} point
*/
dataToPoint
:
function
(
data
,
clamp
)
{
dataToPoint
(
data
:
OptionDataValueDate
|
OptionDataValueDate
[],
clamp
?:
boolean
)
{
zrUtil
.
isArray
(
data
)
&&
(
data
=
data
[
0
]);
clamp
==
null
&&
(
clamp
=
true
);
...
...
@@ -225,30 +283,22 @@ Calendar.prototype = {
this
.
_rect
.
y
+
week
*
this
.
_sh
+
this
.
_sh
/
2
];
}
,
}
/**
* Convert a (x, y) point to time data
*
* @override
* @param {string} point point
* @return {string} data
*/
pointToData
:
function
(
point
)
{
pointToData
(
point
:
number
[]):
number
{
var
date
=
this
.
pointToDate
(
point
);
return
date
&&
date
.
time
;
}
,
}
/**
* Convert a time date item to (x, y) four point.
*
* @param {Array} data date[0] is date
* @param {boolean} [clamp=true] out of range
* @return {Object} point
*/
dataToRect
:
function
(
data
,
clamp
)
{
dataToRect
(
data
:
OptionDataValueDate
|
OptionDataValueDate
[],
clamp
?:
boolean
):
CalendarCellRect
{
var
point
=
this
.
dataToPoint
(
data
,
clamp
);
return
{
...
...
@@ -282,7 +332,7 @@ Calendar.prototype = {
]
};
}
,
}
/**
* Convert a (x, y) point to time date
...
...
@@ -290,7 +340,7 @@ Calendar.prototype = {
* @param {Array} point point
* @return {Object} date
*/
pointToDate
:
function
(
point
)
{
pointToDate
(
point
:
number
[]):
CalendarParsedDateInfo
{
var
nthX
=
Math
.
floor
((
point
[
0
]
-
this
.
_rect
.
x
)
/
this
.
_sw
)
+
1
;
var
nthY
=
Math
.
floor
((
point
[
1
]
-
this
.
_rect
.
y
)
/
this
.
_sh
)
+
1
;
var
range
=
this
.
_rangeInfo
.
range
;
...
...
@@ -300,59 +350,77 @@ Calendar.prototype = {
}
return
this
.
_getDateByWeeksAndDay
(
nthX
,
nthY
-
1
,
range
);
}
,
}
/**
* @inheritDoc
*/
convertToPixel
:
zrUtil
.
curry
(
doConvert
,
'
dataToPoint
'
),
convertToPixel
(
ecModel
:
GlobalModel
,
finder
:
ParsedModelFinder
,
value
:
ScaleDataValue
|
ScaleDataValue
[])
{
const
coordSys
=
getCoordSys
(
finder
);
return
coordSys
===
this
?
coordSys
.
dataToPoint
(
value
)
:
null
;
}
/**
* @inheritDoc
*/
convertFromPixel
:
zrUtil
.
curry
(
doConvert
,
'
pointToData
'
),
convertFromPixel
(
ecModel
:
GlobalModel
,
finder
:
ParsedModelFinder
,
pixel
:
number
[])
{
const
coordSys
=
getCoordSys
(
finder
);
return
coordSys
===
this
?
coordSys
.
pointToData
(
pixel
)
:
null
;
}
containPoint
(
point
:
number
[]):
boolean
{
console
.
warn
(
'
Not implemented.
'
);
return
false
;
}
/**
* initRange
*
* @private
* @return {Array} [start, end]
* Normalize to an [start, end] array
*/
_initRangeOption
:
function
()
{
private
_initRangeOption
():
OptionDataValueDate
[]
{
var
range
=
this
.
_model
.
get
(
'
range
'
);
var
normalizedRange
:
OptionDataValueDate
[];
var
rg
=
range
;
if
(
zrUtil
.
isArray
(
rg
)
&&
rg
.
length
===
1
)
{
rg
=
rg
[
0
];
}
if
(
/^
\d{4}
$/
.
test
(
rg
))
{
range
=
[
rg
+
'
-01-01
'
,
rg
+
'
-12-31
'
];
// Convert [1990] to 1990
if
(
zrUtil
.
isArray
(
range
)
&&
range
.
length
===
1
)
{
range
=
range
[
0
];
}
if
(
/^
\d{4}[\/
|-
]\d{1,2}
$/
.
test
(
rg
))
{
if
(
!
zrUtil
.
isArray
(
range
))
{
let
rangeStr
=
range
.
toString
();
// One year.
if
(
/^
\d{4}
$/
.
test
(
rangeStr
))
{
normalizedRange
=
[
rangeStr
+
'
-01-01
'
,
rangeStr
+
'
-12-31
'
];
}
// One month
if
(
/^
\d{4}[\/
|-
]\d{1,2}
$/
.
test
(
rangeStr
))
{
var
start
=
this
.
getDateInfo
(
rg
);
var
firstDay
=
start
.
date
;
firstDay
.
setMonth
(
firstDay
.
getMonth
()
+
1
);
var
start
=
this
.
getDateInfo
(
rangeStr
);
var
firstDay
=
start
.
date
;
firstDay
.
setMonth
(
firstDay
.
getMonth
()
+
1
);
var
end
=
this
.
getNextNDay
(
firstDay
,
-
1
);
range
=
[
start
.
formatedDate
,
end
.
formatedDate
];
var
end
=
this
.
getNextNDay
(
firstDay
,
-
1
);
normalizedRange
=
[
start
.
formatedDate
,
end
.
formatedDate
];
}
// One day
if
(
/^
\d{4}[\/
|-
]\d{1,2}[\/
|-
]\d{1,2}
$/
.
test
(
rangeStr
))
{
normalizedRange
=
[
rangeStr
,
rangeStr
];
}
}
else
{
normalizedRange
=
range
;
}
if
(
/^
\d{4}[\/
|-
]\d{1,2}[\/
|-
]\d{1,2}
$/
.
test
(
rg
))
{
range
=
[
rg
,
rg
];
if
(
!
normalizedRange
)
{
if
(
__DEV__
)
{
zrUtil
.
logError
(
'
Invalid date range.
'
);
}
// Not handling it.
return
range
as
OptionDataValueDate
[];
}
var
tmp
=
this
.
_getRangeInfo
(
r
ange
);
var
tmp
=
this
.
_getRangeInfo
(
normalizedR
ange
);
if
(
tmp
.
start
.
time
>
tmp
.
end
.
time
)
{
r
ange
.
reverse
();
normalizedR
ange
.
reverse
();
}
return
r
ange
;
}
,
return
normalizedR
ange
;
}
/**
* range info
...
...
@@ -362,20 +430,20 @@ Calendar.prototype = {
* If range[0] > range[1], they will not be reversed.
* @return {Object} obj
*/
_getRangeInfo
:
function
(
range
)
{
r
ange
=
[
_getRangeInfo
(
range
:
OptionDataValueDate
[]):
CalendarParsedDateRangeInfo
{
const
parsedR
ange
=
[
this
.
getDateInfo
(
range
[
0
]),
this
.
getDateInfo
(
range
[
1
])
];
var
reversed
;
if
(
range
[
0
].
time
>
r
ange
[
1
].
time
)
{
if
(
parsedRange
[
0
].
time
>
parsedR
ange
[
1
].
time
)
{
reversed
=
true
;
r
ange
.
reverse
();
parsedR
ange
.
reverse
();
}
var
allDay
=
Math
.
floor
(
r
ange
[
1
].
time
/
PROXIMATE_ONE_DAY
)
-
Math
.
floor
(
r
ange
[
0
].
time
/
PROXIMATE_ONE_DAY
)
+
1
;
var
allDay
=
Math
.
floor
(
parsedR
ange
[
1
].
time
/
PROXIMATE_ONE_DAY
)
-
Math
.
floor
(
parsedR
ange
[
0
].
time
/
PROXIMATE_ONE_DAY
)
+
1
;
// Consider case:
// Firstly set system timezone as "Time Zone: America/Toronto",
...
...
@@ -385,36 +453,36 @@ Calendar.prototype = {
// var allDays = Math.floor(second / ONE_DAY) - Math.floor(first / ONE_DAY) + 1;
// ```
// will get wrong result because of DST. So we should fix it.
var
date
=
new
Date
(
r
ange
[
0
].
time
);
var
date
=
new
Date
(
parsedR
ange
[
0
].
time
);
var
startDateNum
=
date
.
getDate
();
var
endDateNum
=
r
ange
[
1
].
date
.
getDate
();
var
endDateNum
=
parsedR
ange
[
1
].
date
.
getDate
();
date
.
setDate
(
startDateNum
+
allDay
-
1
);
// The bias can not over a month, so just compare date.
if
(
date
.
getDate
()
!==
endDateNum
)
{
var
sign
=
date
.
getTime
()
-
r
ange
[
1
].
time
>
0
?
1
:
-
1
;
while
(
date
.
getDate
()
!==
endDateNum
&&
(
date
.
getTime
()
-
r
ange
[
1
].
time
)
*
sign
>
0
)
{
var
sign
=
date
.
getTime
()
-
parsedR
ange
[
1
].
time
>
0
?
1
:
-
1
;
while
(
date
.
getDate
()
!==
endDateNum
&&
(
date
.
getTime
()
-
parsedR
ange
[
1
].
time
)
*
sign
>
0
)
{
allDay
-=
sign
;
date
.
setDate
(
startDateNum
+
allDay
-
1
);
}
}
var
weeks
=
Math
.
floor
((
allDay
+
r
ange
[
0
].
day
+
6
)
/
7
);
var
weeks
=
Math
.
floor
((
allDay
+
parsedR
ange
[
0
].
day
+
6
)
/
7
);
var
nthWeek
=
reversed
?
-
weeks
+
1
:
weeks
-
1
;
reversed
&&
r
ange
.
reverse
();
reversed
&&
parsedR
ange
.
reverse
();
return
{
range
:
[
range
[
0
].
formatedDate
,
r
ange
[
1
].
formatedDate
],
start
:
r
ange
[
0
],
end
:
r
ange
[
1
],
range
:
[
parsedRange
[
0
].
formatedDate
,
parsedR
ange
[
1
].
formatedDate
],
start
:
parsedR
ange
[
0
],
end
:
parsedR
ange
[
1
],
allDay
:
allDay
,
weeks
:
weeks
,
// From 0.
nthWeek
:
nthWeek
,
fweek
:
r
ange
[
0
].
day
,
lweek
:
r
ange
[
1
].
day
fweek
:
parsedR
ange
[
0
].
day
,
lweek
:
parsedR
ange
[
1
].
day
};
}
,
}
/**
* get date by nthWeeks and week day in range
...
...
@@ -425,48 +493,44 @@ Calendar.prototype = {
* @param {Array} range [d1, d2]
* @return {Object}
*/
_getDateByWeeksAndDay
:
function
(
nthWeek
,
day
,
range
)
{
private
_getDateByWeeksAndDay
(
nthWeek
:
number
,
day
:
number
,
range
:
OptionDataValueDate
[]):
CalendarParsedDateInfo
{
var
rangeInfo
=
this
.
_getRangeInfo
(
range
);
if
(
nthWeek
>
rangeInfo
.
weeks
||
(
nthWeek
===
0
&&
day
<
rangeInfo
.
fweek
)
||
(
nthWeek
===
rangeInfo
.
weeks
&&
day
>
rangeInfo
.
lweek
)
)
{
return
false
;
return
null
;
}
var
nthDay
=
(
nthWeek
-
1
)
*
7
-
rangeInfo
.
fweek
+
day
;
var
date
=
new
Date
(
rangeInfo
.
start
.
time
);
date
.
setDate
(
rangeInfo
.
start
.
d
+
nthDay
);
date
.
setDate
(
+
rangeInfo
.
start
.
d
+
nthDay
);
return
this
.
getDateInfo
(
date
);
}
};
Calendar
.
dimensions
=
Calendar
.
prototype
.
dimensions
;
static
create
(
ecModel
:
GlobalModel
,
api
:
ExtensionAPI
)
{
var
calendarList
:
Calendar
[]
=
[];
Calendar
.
getDimensionsInfo
=
Calendar
.
prototype
.
getDimensionsInfo
;
Calendar
.
create
=
function
(
ecModel
,
api
)
{
var
calendarList
=
[];
ecModel
.
eachComponent
(
'
calendar
'
,
function
(
calendarModel
)
{
var
calendar
=
new
Calendar
(
calendarModel
,
ecModel
,
api
);
calendarList
.
push
(
calendar
);
calendarModel
.
coordinateSystem
=
calendar
;
});
ecModel
.
eachComponent
(
'
calendar
'
,
function
(
calendarModel
:
CalendarModel
)
{
var
calendar
=
new
Calendar
(
calendarModel
,
ecModel
,
api
);
calendarList
.
push
(
calendar
);
calendarModel
.
coordinateSystem
=
calendar
;
});
ecModel
.
eachSeries
(
function
(
calendarSeries
)
{
if
(
calendarSeries
.
get
(
'
coordinateSystem
'
)
===
'
calendar
'
)
{
// Inject coordinate system
calendarSeries
.
coordinateSystem
=
calendarList
[
calendarSeries
.
get
(
'
calendarIndex
'
)
||
0
];
}
});
return
calendarList
;
};
ecModel
.
eachSeries
(
function
(
calendarSeries
:
SeriesModel
<
SeriesOption
&
SeriesOnCalendarOptionMixin
>
)
{
if
(
calendarSeries
.
get
(
'
coordinateSystem
'
)
===
'
calendar
'
)
{
// Inject coordinate system
calendarSeries
.
coordinateSystem
=
calendarList
[
calendarSeries
.
get
(
'
calendarIndex
'
)
||
0
];
}
});
return
calendarList
;
}
}
function
doConvert
(
methodName
,
ecModel
,
finder
,
value
)
{
var
calendarModel
=
finder
.
calendarModel
;
function
getCoordSys
(
finder
:
ParsedModelFinder
):
Calendar
{
var
calendarModel
=
finder
.
calendarModel
as
CalendarModel
;
var
seriesModel
=
finder
.
seriesModel
;
var
coordSys
=
calendarModel
...
...
@@ -475,9 +539,10 @@ function doConvert(methodName, ecModel, finder, value) {
?
seriesModel
.
coordinateSystem
:
null
;
return
coordSys
===
this
?
coordSys
[
methodName
](
value
)
:
null
;
return
coordSys
as
Calendar
;
}
CoordinateSystem
.
register
(
'
calendar
'
,
Calendar
);
CoordinateSystemManager
.
register
(
'
calendar
'
,
Calendar
);
export
default
Calendar
;
\ No newline at end of file
src/coord/calendar/CalendarModel.ts
浏览文件 @
53ca7a13
...
...
@@ -17,8 +17,6 @@
* under the License.
*/
// @ts-nocheck
import
*
as
zrUtil
from
'
zrender/src/core/util
'
;
import
ComponentModel
from
'
../../model/Component
'
;
import
{
...
...
@@ -26,17 +24,158 @@ import {
sizeCalculable
,
mergeLayoutParam
}
from
'
../../util/layout
'
;
import
Calendar
from
'
./Calendar
'
;
import
{
ComponentOption
,
BoxLayoutOptionMixin
,
LayoutOrient
,
LineStyleOption
,
ItemStyleOption
,
LabelOption
,
OptionDataValueDate
}
from
'
../../util/types
'
;
import
GlobalModel
from
'
../../model/Global
'
;
import
Model
from
'
../../model/Model
'
;
export
interface
CalendarMonthLabelFormatterCallbackParams
{
nameMap
:
string
yyyy
:
string
yy
:
string
/**
* Month string. With 0 prefix.
*/
MM
:
string
/**
* Month number
*/
M
:
number
}
export
interface
CalendarYearLabelFormatterCallbackParams
{
nameMap
:
string
/**
* Start year
*/
start
:
string
/**
* End year
*/
end
:
string
}
var
CalendarModel
=
ComponentModel
.
extend
({
export
interface
CalendarOption
extends
ComponentOption
,
BoxLayoutOptionMixin
{
cellSize
?:
number
|
'
auto
'
|
(
number
|
'
auto
'
)[]
orient
?:
LayoutOrient
type
:
'
calendar
'
,
splitLine
?:
{
show
?:
boolean
lineStyle
?:
LineStyleOption
}
itemStyle
?:
ItemStyleOption
/**
* @type {module:echarts/coord/calendar/Calendar}
* // one year
* range: 2017
* // one month
* range: '2017-02'
* // a range
* range: ['2017-01-02', '2017-02-23']
* // note: they will be identified as ['2017-01-01', '2017-02-01']
* range: ['2017-01', '2017-02']
*/
coordinateSystem
:
null
,
range
?:
OptionDataValueDate
|
(
OptionDataValueDate
)[]
dayLabel
?:
Omit
<
LabelOption
,
'
position
'
>
&
{
/**
* First day of week.
*/
firstDay
?:
number
/**
* Margin between day label and axis line.
* Can be percent string of cell size.
*/
margin
?:
number
|
string
/**
* Position of week, at the beginning or end of the range.
*/
position
?:
'
start
'
|
'
end
'
defaultOption
:
{
/**
* Week text content, defaults to 'en'; It supports Chinese, English, and custom; index 0 always means Sunday
* en: shortcut to English ['S', 'M', 'T', 'W', 'T', 'F', 'S']
* cn: shortcut to Chinese ['日', '一', '二', '三', '四', '五', '六']
*/
nameMap
?:
'
en
'
|
'
cn
'
|
string
[]
}
monthLabel
?:
Omit
<
LabelOption
,
'
position
'
>
&
{
/**
* Margin between month label and axis line.
*/
margin
?:
number
/**
* Position of month label, at the beginning or end of the range.
*/
position
?:
'
start
'
|
'
end
'
/**
* Month text content, defaults to 'en'; It supports Chinese, English, and custom; Index 0 always means Jan;
*/
nameMap
?:
'
en
'
|
'
cn
'
|
string
[]
formatter
?:
string
|
((
params
:
CalendarMonthLabelFormatterCallbackParams
)
=>
string
)
}
yearLabel
?:
Omit
<
LabelOption
,
'
position
'
>
&
{
/**
* Margin between year label and axis line.
*/
margin
?:
number
/**
* Position of year label, at the beginning or end of the range.
*/
position
?:
'
top
'
|
'
bottom
'
|
'
left
'
|
'
right
'
formatter
?:
string
|
((
params
:
CalendarYearLabelFormatterCallbackParams
)
=>
string
)
}
}
class
CalendarModel
extends
ComponentModel
<
CalendarOption
>
{
static
type
=
'
calendar
'
type
=
CalendarModel
.
type
coordinateSystem
:
Calendar
/**
* @override
*/
init
(
option
:
CalendarOption
,
parentModel
:
Model
,
ecModel
:
GlobalModel
)
{
var
inputPositionParams
=
getLayoutParams
(
option
);
super
.
init
.
apply
(
this
,
arguments
as
any
);
mergeAndNormalizeLayoutParams
(
option
,
inputPositionParams
);
}
/**
* @override
*/
mergeOption
(
option
:
CalendarOption
)
{
super
.
mergeOption
.
apply
(
this
,
arguments
as
any
);
mergeAndNormalizeLayoutParams
(
this
.
option
,
option
);
}
getCellSize
()
{
// Has been normalized
return
this
.
option
.
cellSize
as
(
number
|
'
auto
'
)[];
}
static
defaultOption
:
CalendarOption
=
{
zlevel
:
0
,
z
:
2
,
left
:
80
,
...
...
@@ -68,7 +207,6 @@ var CalendarModel = ComponentModel.extend({
dayLabel
:
{
show
:
true
,
// a week first day
firstDay
:
0
,
// start end
...
...
@@ -108,48 +246,34 @@ var CalendarModel = ComponentModel.extend({
fontWeight
:
'
bolder
'
,
fontSize
:
20
}
},
/**
* @override
*/
init
:
function
(
option
,
parentModel
,
ecModel
,
extraOpt
)
{
var
inputPositionParams
=
getLayoutParams
(
option
);
CalendarModel
.
superApply
(
this
,
'
init
'
,
arguments
);
mergeAndNormalizeLayoutParams
(
option
,
inputPositionParams
);
},
/**
* @override
*/
mergeOption
:
function
(
option
,
extraOpt
)
{
CalendarModel
.
superApply
(
this
,
'
mergeOption
'
,
arguments
);
mergeAndNormalizeLayoutParams
(
this
.
option
,
option
);
}
}
);
}
function
mergeAndNormalizeLayoutParams
(
target
,
raw
)
{
function
mergeAndNormalizeLayoutParams
(
target
:
CalendarOption
,
raw
:
BoxLayoutOptionMixin
)
{
// Normalize cellSize
var
cellSize
=
target
.
cellSize
;
var
cellSizeArr
:
(
number
|
'
auto
'
)[];
if
(
!
zrUtil
.
isArray
(
cellSize
))
{
cellSize
=
target
.
cellSize
=
[
cellSize
,
cellSize
];
cellSizeArr
=
target
.
cellSize
=
[
cellSize
,
cellSize
];
}
else
{
cellSizeArr
=
cellSize
;
}
else
if
(
cellSize
.
length
===
1
)
{
cellSize
[
1
]
=
cellSize
[
0
];
if
(
cellSizeArr
.
length
===
1
)
{
cellSizeArr
[
1
]
=
cellSizeArr
[
0
];
}
var
ignoreSize
=
zrUtil
.
map
([
0
,
1
],
function
(
hvIdx
)
{
// If user have set `width` or both `left` and `right`, cellSize
// If user have set `width` or both `left` and `right`, cellSize
Arr
// will be automatically set to 'auto', otherwise the default
// setting of cellSize will make `width` setting not work.
// setting of cellSize
Arr
will make `width` setting not work.
if
(
sizeCalculable
(
raw
,
hvIdx
))
{
cellSize
[
hvIdx
]
=
'
auto
'
;
cellSize
Arr
[
hvIdx
]
=
'
auto
'
;
}
return
cellSize
[
hvIdx
]
!=
null
&&
cellSize
[
hvIdx
]
!==
'
auto
'
;
return
cellSize
Arr
[
hvIdx
]
!=
null
&&
cellSizeArr
[
hvIdx
]
!==
'
auto
'
;
});
mergeLayoutParam
(
target
,
raw
,
{
...
...
@@ -157,4 +281,6 @@ function mergeAndNormalizeLayoutParams(target, raw) {
});
}
ComponentModel
.
registerClass
(
CalendarModel
);
export
default
CalendarModel
;
src/coord/calendar/prepareCustom.ts
浏览文件 @
53ca7a13
...
...
@@ -17,9 +17,10 @@
* under the License.
*/
// @ts-nocheck
import
Calendar
from
'
./Calendar
'
;
import
{
OptionDataValueDate
}
from
'
../../util/types
'
;
export
default
function
(
coordSys
)
{
export
default
function
(
coordSys
:
Calendar
)
{
var
rect
=
coordSys
.
getRect
();
var
rangeInfo
=
coordSys
.
getRangeInfo
();
...
...
@@ -40,7 +41,7 @@ export default function (coordSys) {
}
},
api
:
{
coord
:
function
(
data
,
clamp
)
{
coord
:
function
(
data
:
OptionDataValueDate
,
clamp
?:
boolean
)
{
return
coordSys
.
dataToPoint
(
data
,
clamp
);
}
}
...
...
src/echarts.ts
浏览文件 @
53ca7a13
...
...
@@ -1023,10 +1023,10 @@ class ECharts {
return
;
}
var
silent
=
(
opt
as
any
)
.
silent
;
var
silent
=
opt
.
silent
;
doDispatchAction
.
call
(
this
,
payload
,
silent
);
var
flush
=
(
opt
as
any
)
.
flush
;
var
flush
=
opt
.
flush
;
if
(
flush
)
{
this
.
_zr
.
flush
();
}
...
...
src/util/types.ts
浏览文件 @
53ca7a13
...
...
@@ -494,7 +494,7 @@ export type MediaUnit = {
export
type
ComponentLayoutMode
=
{
// Only support 'box' now.
type
:
'
box
'
,
ignoreSize
?:
boolean
|
[
boolean
,
boolean
]
ignoreSize
?:
boolean
|
boolean
[
]
};
/******************* Mixins for Common Option Properties ********************** */
export
interface
ColorPaletteOptionMixin
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录