123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159 |
- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
- /**
- * AUTO-GENERATED FILE. DO NOT MODIFY.
- */
- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
- import { __extends } from "tslib";
- import * as zrUtil from 'zrender/lib/core/util.js';
- import ComponentModel from '../../model/Component.js';
- import { getLayoutParams, sizeCalculable, mergeLayoutParam } from '../../util/layout.js';
- var CalendarModel = /** @class */function (_super) {
- __extends(CalendarModel, _super);
- function CalendarModel() {
- var _this = _super !== null && _super.apply(this, arguments) || this;
- _this.type = CalendarModel.type;
- return _this;
- }
- /**
- * @override
- */
- CalendarModel.prototype.init = function (option, parentModel, ecModel) {
- var inputPositionParams = getLayoutParams(option);
- _super.prototype.init.apply(this, arguments);
- mergeAndNormalizeLayoutParams(option, inputPositionParams);
- };
- /**
- * @override
- */
- CalendarModel.prototype.mergeOption = function (option) {
- _super.prototype.mergeOption.apply(this, arguments);
- mergeAndNormalizeLayoutParams(this.option, option);
- };
- CalendarModel.prototype.getCellSize = function () {
- // Has been normalized
- return this.option.cellSize;
- };
- CalendarModel.type = 'calendar';
- CalendarModel.defaultOption = {
- // zlevel: 0,
- z: 2,
- left: 80,
- top: 60,
- cellSize: 20,
- // horizontal vertical
- orient: 'horizontal',
- // month separate line style
- splitLine: {
- show: true,
- lineStyle: {
- color: '#000',
- width: 1,
- type: 'solid'
- }
- },
- // rect style temporarily unused emphasis
- itemStyle: {
- color: '#fff',
- borderWidth: 1,
- borderColor: '#ccc'
- },
- // week text style
- dayLabel: {
- show: true,
- firstDay: 0,
- // start end
- position: 'start',
- margin: '50%',
- color: '#000'
- },
- // month text style
- monthLabel: {
- show: true,
- // start end
- position: 'start',
- margin: 5,
- // center or left
- align: 'center',
- formatter: null,
- color: '#000'
- },
- // year text style
- yearLabel: {
- show: true,
- // top bottom left right
- position: null,
- margin: 30,
- formatter: null,
- color: '#ccc',
- fontFamily: 'sans-serif',
- fontWeight: 'bolder',
- fontSize: 20
- }
- };
- return CalendarModel;
- }(ComponentModel);
- function mergeAndNormalizeLayoutParams(target, raw) {
- // Normalize cellSize
- var cellSize = target.cellSize;
- var cellSizeArr;
- if (!zrUtil.isArray(cellSize)) {
- cellSizeArr = target.cellSize = [cellSize, cellSize];
- } else {
- cellSizeArr = cellSize;
- }
- 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`, cellSizeArr
- // will be automatically set to 'auto', otherwise the default
- // setting of cellSizeArr will make `width` setting not work.
- if (sizeCalculable(raw, hvIdx)) {
- cellSizeArr[hvIdx] = 'auto';
- }
- return cellSizeArr[hvIdx] != null && cellSizeArr[hvIdx] !== 'auto';
- });
- mergeLayoutParam(target, raw, {
- type: 'box',
- ignoreSize: ignoreSize
- });
- }
- export default CalendarModel;
|