text: 'use strict';
  
  var _index = require('../index.js');
  
  var _index2 = _interopRequireDefault(_index);
  
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  
  Component({
    properties: {
      width: {
        type: Number,
        value: 100
      },
      height: {
        type: Number,
        value: 100
      },
      path: {
        type: String,
        observer: function observer() {
          this.init();
        }
      },
      animationData: {
        type: Object,
        observer: function observer() {
          this.init();
        }
      }
    },
    ready: function ready() {
      this.init();
    },
  
    methods: {
      init: function init(animationData) {
        var width = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.properties.width;
        var height = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.properties.height;
  
        var data = animationData || this.properties.animationData;
        var dataPath = this.properties.path;
        if (!data && !dataPath) {
          return;
        }
  
        this.destory();
  
        var canvasContext = _index.api.createCanvasContext('lottie-canvas', this);
        canvasContext.canvas = {
          width: width,
          height: height
        };
  
        this.lottie = _index2.default.loadAnimation({
          renderer: 'canvas', // 只支持canvas
          loop: true,
          autoplay: true,
          animationData: data,
          path: dataPath,
          rendererSettings: {
            context: canvasContext,
            clearCanvas: true
          }
        });
      },
      destory: function destory() {
        if (this.lottie) {
          this.lottie.destroy();
          this.lottie = null;
        }
      }
    },
    detached: function detached() {
      this.destory();
    }
  });