<html xmlns="http://www.w3.org/1999/xhtml">
<meta charset="UTF-8">
<head>
    <style>
        body{
            background-color:#ccc;
            margin: 0px;
            height: 100%;
            font-family: sans-serif;
            font-size: 10px
            overflow: hidden;
        }
        #bodymovin{
            width:800px;
            height:800px;
            background-color:#333;
            display:block;
            overflow: hidden;
            transform: translate3d(0,0,0);
        }
    </style>
    <!-- build:js bodymovin.js -->
    <script src="js/main.js"></script>
    <script src="js/3rd_party/transformation-matrix.js"></script>
    <script src="js/3rd_party/canvasPoly.js"></script>
    <script src="js/utils/MatrixManager.js"></script>
    <script src="js/utils/animationFramePolyFill.js"></script>
    <script src="js/utils/common.js"></script>
    <script src="js/utils/canvasPolyFill.js"></script>
    <script src="js/utils/functionExtensions.js"></script>
    <script src="js/utils/bez.js"></script>
    <script src="js/utils/DataManager.js"></script>
    <script src="js/renderers/SVGRenderer.js"></script>
    <script src="js/renderers/CanvasRenderer.js"></script>
    <script src="js/mask.js"></script>
    <script src="js/elements/BaseElement.js"></script>
    <script src="js/elements/PlaceHolderElement.js"></script>
    <script src="js/elements/CompElement.js"></script>
    <script src="js/elements/ImageElement.js"></script>
    <script src="js/elements/ShapeElement.js"></script>
    <script src="js/elements/ShapeItemElement.js"></script>
    <script src="js/elements/SolidElement.js"></script>
    <script src="js/elements/TextElement.js"></script>
    <script src="js/elements/canvasElements/CVBaseElement.js"></script>
    <script src="js/elements/canvasElements/CVCompElement.js"></script>
    <script src="js/elements/canvasElements/CVImageElement.js"></script>
    <script src="js/elements/canvasElements/CVShapeElement.js"></script>
    <script src="js/elements/canvasElements/CVShapeItemElement.js"></script>
    <script src="js/elements/canvasElements/CVSolidElement.js"></script>
    <script src="js/elements/canvasElements/CVTextElement.js"></script>
    <script src="js/elements/canvasElements/CVMaskElement.js"></script>
    <script src="js/animation/AnimationManager.js"></script>
    <script src="js/animation/AnimationItem.js"></script>
    <script src="js/module.js"></script>
    <!-- endbuild -->
    <!-- <script src="bodymovin.js"></script> -->
    <script src="exports/blue/data.js"></script>
</head>
<body>

<!-- <div style="width:1350px;height:650px;background-color:#faf5d3;display:inline-block;" class="bodymovin" data-bm-path="exports/render/" data-bm-type="svg" data-bm-loop="true" data-bm-prerender="false"></div> -->
<div id="bodymovin"></div>

<script>

    function configReady(){
        console.log('config ready');
    }

    function dataReady(){
        console.log('data ready');
    }

    var animData = {
        wrapper: document.getElementById('bodymovin'),
        animType: 'svg',
        loop: false,
        prerender: false,
        autoplay: true,
        //animationData: bmsmd
        path: 'exports/navidad'

    };
    bodymovin.setQuality(50);
    var anim = bodymovin.loadAnimation(animData);
    anim.addEventListener('bm:config_ready', configReady);
    anim.addEventListener('bm:data_ready', dataReady);
</script>
</body>
</html>
