text: /**
   * @file Data zoom model
   */
  define(function (require) {
  
      var DataZoomModel = require('./DataZoomModel');
  
      var SliderZoomModel = DataZoomModel.extend({
  
          type: 'dataZoom.slider',
  
          layoutMode: 'box',
  
          /**
           * @protected
           */
          defaultOption: {
              show: true,
  
              // ph => placeholder. Using placehoder here because
              // deault value can only be drived in view stage.
              right: 'ph',  // Default align to grid rect.
              top: 'ph',    // Default align to grid rect.
              width: 'ph',  // Default align to grid rect.
              height: 'ph', // Default align to grid rect.
              left: null,   // Default align to grid rect.
              bottom: null, // Default align to grid rect.
  
              backgroundColor: 'rgba(47,69,84,0)',    // Background of slider zoom component.
              dataBackgroundColor: '#ddd',            // Background of data shadow.
              fillerColor: 'rgba(47,69,84,0.15)',     // Color of selected area.
              handleColor: 'rgba(148,164,165,0.95)',     // Color of handle.
              handleSize: 10,
  
              labelPrecision: null,
              labelFormatter: null,
              showDetail: true,
              showDataShadow: 'auto',                 // Default auto decision.
              realtime: true,
              zoomLock: false,                        // Whether disable zoom.
              textStyle: {
                  color: '#333'
              }
          },
  
          /**
           * @override
           */
          mergeOption: function (option) {
              SliderZoomModel.superApply(this, 'mergeOption', arguments);
          }
  
      });
  
      return SliderZoomModel;
  
  });