| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 | 
							
- /*
 
- * 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.
 
- */
 
- var _util = require("zrender/lib/core/util");
 
- var createHashMap = _util.createHashMap;
 
- var isTypedArray = _util.isTypedArray;
 
- var _clazz = require("../util/clazz");
 
- var enableClassCheck = _clazz.enableClassCheck;
 
- var _sourceType = require("./helper/sourceType");
 
- var SOURCE_FORMAT_ORIGINAL = _sourceType.SOURCE_FORMAT_ORIGINAL;
 
- var SERIES_LAYOUT_BY_COLUMN = _sourceType.SERIES_LAYOUT_BY_COLUMN;
 
- var SOURCE_FORMAT_UNKNOWN = _sourceType.SOURCE_FORMAT_UNKNOWN;
 
- var SOURCE_FORMAT_TYPED_ARRAY = _sourceType.SOURCE_FORMAT_TYPED_ARRAY;
 
- var SOURCE_FORMAT_KEYED_COLUMNS = _sourceType.SOURCE_FORMAT_KEYED_COLUMNS;
 
- /*
 
- * 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.
 
- */
 
- /**
 
-  * [sourceFormat]
 
-  *
 
-  * + "original":
 
-  * This format is only used in series.data, where
 
-  * itemStyle can be specified in data item.
 
-  *
 
-  * + "arrayRows":
 
-  * [
 
-  *     ['product', 'score', 'amount'],
 
-  *     ['Matcha Latte', 89.3, 95.8],
 
-  *     ['Milk Tea', 92.1, 89.4],
 
-  *     ['Cheese Cocoa', 94.4, 91.2],
 
-  *     ['Walnut Brownie', 85.4, 76.9]
 
-  * ]
 
-  *
 
-  * + "objectRows":
 
-  * [
 
-  *     {product: 'Matcha Latte', score: 89.3, amount: 95.8},
 
-  *     {product: 'Milk Tea', score: 92.1, amount: 89.4},
 
-  *     {product: 'Cheese Cocoa', score: 94.4, amount: 91.2},
 
-  *     {product: 'Walnut Brownie', score: 85.4, amount: 76.9}
 
-  * ]
 
-  *
 
-  * + "keyedColumns":
 
-  * {
 
-  *     'product': ['Matcha Latte', 'Milk Tea', 'Cheese Cocoa', 'Walnut Brownie'],
 
-  *     'count': [823, 235, 1042, 988],
 
-  *     'score': [95.8, 81.4, 91.2, 76.9]
 
-  * }
 
-  *
 
-  * + "typedArray"
 
-  *
 
-  * + "unknown"
 
-  */
 
- /**
 
-  * @constructor
 
-  * @param {Object} fields
 
-  * @param {string} fields.sourceFormat
 
-  * @param {Array|Object} fields.fromDataset
 
-  * @param {Array|Object} [fields.data]
 
-  * @param {string} [seriesLayoutBy='column']
 
-  * @param {Array.<Object|string>} [dimensionsDefine]
 
-  * @param {Objet|HashMap} [encodeDefine]
 
-  * @param {number} [startIndex=0]
 
-  * @param {number} [dimensionsDetectCount]
 
-  */
 
- function Source(fields) {
 
-   /**
 
-    * @type {boolean}
 
-    */
 
-   this.fromDataset = fields.fromDataset;
 
-   /**
 
-    * Not null/undefined.
 
-    * @type {Array|Object}
 
-    */
 
-   this.data = fields.data || (fields.sourceFormat === SOURCE_FORMAT_KEYED_COLUMNS ? {} : []);
 
-   /**
 
-    * See also "detectSourceFormat".
 
-    * Not null/undefined.
 
-    * @type {string}
 
-    */
 
-   this.sourceFormat = fields.sourceFormat || SOURCE_FORMAT_UNKNOWN;
 
-   /**
 
-    * 'row' or 'column'
 
-    * Not null/undefined.
 
-    * @type {string} seriesLayoutBy
 
-    */
 
-   this.seriesLayoutBy = fields.seriesLayoutBy || SERIES_LAYOUT_BY_COLUMN;
 
-   /**
 
-    * dimensions definition in option.
 
-    * can be null/undefined.
 
-    * @type {Array.<Object|string>}
 
-    */
 
-   this.dimensionsDefine = fields.dimensionsDefine;
 
-   /**
 
-    * encode definition in option.
 
-    * can be null/undefined.
 
-    * @type {Objet|HashMap}
 
-    */
 
-   this.encodeDefine = fields.encodeDefine && createHashMap(fields.encodeDefine);
 
-   /**
 
-    * Not null/undefined, uint.
 
-    * @type {number}
 
-    */
 
-   this.startIndex = fields.startIndex || 0;
 
-   /**
 
-    * Can be null/undefined (when unknown), uint.
 
-    * @type {number}
 
-    */
 
-   this.dimensionsDetectCount = fields.dimensionsDetectCount;
 
- }
 
- /**
 
-  * Wrap original series data for some compatibility cases.
 
-  */
 
- Source.seriesDataToSource = function (data) {
 
-   return new Source({
 
-     data: data,
 
-     sourceFormat: isTypedArray(data) ? SOURCE_FORMAT_TYPED_ARRAY : SOURCE_FORMAT_ORIGINAL,
 
-     fromDataset: false
 
-   });
 
- };
 
- enableClassCheck(Source);
 
- var _default = Source;
 
- module.exports = _default;
 
 
  |